int3和断点

除了int 0x80外用户空间还可以通过int3——向量3、into——向量4 、bound——向量5等异常指令进入内核,而其他异常无法被用户空间程序利用,都是由系统使用的。

linux用户态的int3进入内核后,内核是通过SIGTRAP信号发送给用户进程的。用户进程要注册SIGTRAP信号的handler来响应。(这应该就是gdb之类下断点的原理)

传统的TF,int3应该足以支持单步调试和断点调试。

486上又新增了断点地址寄存器,他们的内存“断点”功能是之前做不到的。

猜你喜欢

转载自www.cnblogs.com/xiang-yin/p/12147193.html