エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
簡易 strace を作ってシステムコールを表示する
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
簡易 strace を作ってシステムコールを表示する
いつまで経っても親知らずが人間から失われないの、歯医者業界との癒着か? strace は ptrace(2) でプロ... いつまで経っても親知らずが人間から失われないの、歯医者業界との癒着か? strace は ptrace(2) でプロセスを監視することで呼び出されるシステムコールとその引数を表示している。 ここでは簡易的な strace を作成してシステムコールを表示してみる。 どのようにシステムコールを追いかけるか 今回は任意のプロセスにアタッチするのではなく、引数として与えた文字列を execvp してシステムコールを表示してみる。 システムコールを逐次表示していく手順としては以下のようになる。 fork(2) して子プロセスの中で execvp する。 子プロセスでは ptrace(PTRACE_TRACEME, 0, NULL, NULL) によって親プロセスでトレースを行わせる。 親プロセスでは waitpid で状態が変化するまで待ち、ptrace(PTRACE_GETREGS, pid, N