在使用GDB调试程序时,有什么方法可以读取特定于x86-64模型的寄存器,尤其是IA32_FS_BASE和IA32_GS_BASE?
使用像Intel的Pintool这样的动态工具包的解决方案是不太可取的,但是同样可以理解。
我需要一个C程序在执行过程中修改的所有内存位置的日志。这个问题比使用gdb / valgrind监视内存区域要复杂得多,因为我没有内存区域的开始或结束地址。基本上,无论何时何地,程序进行内存更新(以push,移动到内存操作数等形式),我都需要该内存地址以及在该地址写入的值。
有人有任何建议吗?
谢谢!