のコンテンツ/メンバーのどこにいるのだろうか
`struct user_regs_struct ur`
への呼び出しによって入力されます
ptrace(PTRACE_GETREGS, pid, 0, &ur); // get registers
トレースされた子プロセスの syscall が現在に入っているのか、出ているのかについての情報を抽出できます。いくつかのテストの後、これまでの私の結論は、構造体メンバーの下位 8 ビットは出口ax
と等しいということです。0xda
ただし、これが正しい一般的な結論であるかどうかは不明であるため、これがどこかに文書化されているかどうかを尋ねます.
TCB_INSYSCALL
strace ソースで、おそらく探しているビットマスクの定義を見つけましたが、情報のソース ( user_regs_struct
? の一部のメンバー) が読み取られる場所をデコードできません。