如何在Visual Studio中进行调试?

时间:2010-09-06 23:59:30

标签: visual-studio debugging

我可以将Visual Studio附加到可执行文件,然后调用我的断点。

引擎盖下发生了什么?什么机制允许我的断点开火?

1 个答案:

答案 0 :(得分:4)

有两种机制可用于实现断点:

  • 硬件,通过在处理器中设置特殊寄存器。当遇到特殊寄存器中指示的断点作为断点时,抛出一个异常,由调试器捕获。
  • 软件,通过“int 3”指令替换指令(参见http://en.wikipedia.org/wiki/INT_(x86_instruction))。 “int 3”指令还会中断应用程序的流程,该流程由调试器捕获。要继续该应用程序,调试器将暂时放回原始指令。

有关详细信息,请参阅http://en.wikipedia.org/wiki/Breakpoint