调试器

调试器

目录导航

基本内容

调试器debugger

是一种开发环境,它支持应用程序代码的单步执行和查看代码中变量的内容。

DeBugger(调试器)是自从计算机诞生伊始就始终伴随着程序员的一个挚友,起初的调试器都是基于硬件直接实现的。直到计算机行业有了比较突出的发展之后,商业化的软件调试器才与计算机程序编写工作人员们见面。作为软件维护与错误修正的一个最重要、最直接,也是必不可少的一种机制,中央处理器制造商也在不厌其烦地在CPU物理结构上支持着调试这种行为。

源代码级调试二进制调试之分。

OD界面OD界面如果你不是第一次开始程序工作,你已经不需要调试器。我们的业余编程者可能还要时常需要他。虽然Visual C++ 调试器一直稳定地改良着,但是它实际上并不是很稳定。 调试器密切地注视Visual C++的工作以确定程序的错误点,以节省程序员的工作时间。其工具栏按钮插入暂停点,而且可以控制程序的单步运行。 注意参数的改变和视窗界限的扩大,一个物件指标表示表便能表示所有类别和基本的数据成员类别。如果你把光标放置在程序上,调试器会给你一个小窗口以观察它的数值。如果你要为程序除错,你首先应该选用编译器和由程序编译而产生调试信息来进行除错。

实际上,目前最流行的调试工具是德国人出的Ollydbg,它对SEH异常处理程序,VXD,MMX等指令集都有很好的支持.

工作原理

调试器的工作原理是基于中央处理器的异常机制,并由操作系统的异常分发\事件分发的子系统(或模块)负责将其封装处理后,以比较友好的方式与调试器进行实时交互。   

每当调试器捕获到一个异常\事件之后,将会根据调试器的自身逻辑来判定是否需要接管这个异常\事件,并决定由调试器的哪个函数来接管。当调试器接管下来这个异常\事件后,将根据用户的需求对其进行进一步的处理,处理完毕后再通知系统已经处理完毕,此时新一轮的异常\事件捕获、分发循环开始。

基本功能

控制软件运行

调试器的最基本功能就是将一个飞速运行的程序中断下来,并且使其按照用户的意愿执行。调试器是靠迫使目标程序触发一个精心构造的异常来完成这些工作的。   

查看运行信息

查看软件的当前信息,这些信息包含但不限于当前线程的寄存器信息,堆栈信息、内存信息、当前EIP附近的反汇编信息等。   

修改执行流程

修改内存信息、反汇编信息、堆栈信息、寄存器信息等等。

相关百科
返回顶部
产品求购 求购