7

構造体を使用してpt_regsなどのレジスタを取得および設定しようとしていますeaxが、コンパイル エラーにより、そのpt_regsようなメンバーがないことがわかりeaxます。

しかし、私はaxレジスターを取得できます。誰が何が起こっているのか教えてもらえますか?

3.0.0カーネルで 32 ビットの Ubuntu Linux を使用しています。ありがとうございました。

4

1 に答える 1

5

arch/x86/include/asm/ptrace.hの定義を見てstruct pt_regsください。

#ifndef __KERNEL__そこにあることに注意してください。これは、その構造の定義がカーネルモードとユーザーモードのコードで異なることを意味します。

カーネル コードの場合pt_regs::axは、おそらく必要な値です。%eax32 ビット システムと64 ビット システムの値が含まれている必要があります%rax

于 2012-04-10T07:30:02.020 に答える