我們之前學習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
這裏面對寄存器的命名有一些差別,大家自己看就能看懂。