これはよいとptraceに関するiwwのブックマーク (3)
-
-
ptraceのサンプルプログラム まぶち氏からptraceのサンプルない?って言われたのでstraceを紹介しました。straceはptraceの難しいところをどうしているのか見るには良いですが、初めてptraceを使う人が見るもんじゃない気がします。 入門に使えると信じて、簡単なサンプルを作ってみたので公開。Linux専用です。 ソースコードはこちらからどうぞ。 ︵2008年7月25日追記︶需要はなさそうなものの、一応ライセンスを明確にしました。修正BSDライセンスです。 うまくいけばトレース対象のシステムコール名がずらっと表示されるはずです。以下に私の環境での実行結果を示します。 簡易ptraceプログラムのコンパイル、実行結果 $ gcc -Wall 20080724_ptrace_simple.c $ ls -l 合計28 -rw-r--r-- 1 katsuhiro katsuh
-
すこし前に、straceコマンドもどきを50行くらいで書いてみたことがあるので、それを貼ってみまーす。いきなりコード。あ、C99です。 // strace_modoki.c: Linux/x86専用です。x86_64カーネルでは-m32でコンパイルしても動きません。 #include <stdio.h> #include <unistd.h> #include <sys/ptrace.h> #include <sys/types.h> #include <sys/wait.h> #include <asm/user.h> #include <asm/ptrace.h> int main() { int i; static const char* syscallstr[1000] = {0}; for(i = 0; i < 1000; ++i) syscallstr[i] = "???";
-
1