我们之前学习ptrace的材料都是i386的,常常报错 error: ‘struct user_regs_struct’ has no member named ‘eip’ 这是由于包含文件的问题,在i386结构下我们包含的头文件是<linux/user.h> 在x64机器上需要进行修改,改成<sys/user.h> 在x64机器上我们看到 其实最终访问的文件是/usr/include/x86_64-linux-gnu/sys/user.h 这里面对寄存器的命名有一些差别,大家自己看就能看懂。
我们之前学习ptrace的材料都是i386的,常常报错 error: ‘struct user_regs_struct’ has no member named ‘eip’ 这是由于包含文件的问题,在i386结构下我们包含的头文件是<linux/user.h> 在x64机器上需要进行修改,改成<sys/user.h> 在x64机器上我们看到 其实最终访问的文件是/usr/include/x86_64-linux-gnu/sys/user.h 这里面对寄存器的命名有一些差别,大家自己看就能看懂。