硬件断点是计算机用语,指由硬件提供给我们的调试寄存器组,我们可以对这些硬件寄存器设置相应的值,然后让硬件帮我们断在需要下断点的地址。硬件断点是CPU提供的功能,所以要怎么做就得听CPU的
硬件寄存器的了。先来看看关于硬件寄存器的说明。Intel 80386以上的CPU 提供了调试寄存器以用于软件调试。
硬件断点原理是使用4个调试寄存器(DR0,DR1,DR2,DR3)来设定地址,以及DR7设定状态,比如:对这个401000是硬件读还是写,或者是执行;是对
字节还是对字,或者是双字。因此最多只能设置4个断点。
硬件断点优点是速度快,在
INT3断点容易被发现的地方,使用硬件断点来代替会有很好的效果,缺点就是最多只能设置4个断点。