ラベル debug の投稿を表示しています。 すべての投稿を表示
ラベル debug の投稿を表示しています。 すべての投稿を表示

木曜日, 4月 10, 2008

strace

strace - trace system calls and signals

コールされたシステムコールやシグナルを追うことができる。ハードに近いレイヤーのコマンドのDebugをするのに有効。たとえば、メモリリークするプログラムの追跡が出来る。

使い方は、Debugしたいプログラムやコマンドの前にstraceと打つだけ。

# strace ls
execve("/bin/ls", ["ls"], [/* 26 vars */]) = 0
brk(0) = 0x82de000
(略)


詳しいことはよく分からないが、lsするだけで物凄い数のシステムコールを呼んでいる。

覚えておいて損はないコマンドだ。