123456

 

OD学习笔记2-Run trace /Hit trace

Run trace可以把被调试程序执行过的指令保存下来,了解以前发生的事件,它能把地址、寄存器的内容、消息等记录到Run trace缓冲区中,在运行Run trace前,要把缓冲区设置大些,否则执行的指令太多造成缓冲区溢出:

如果要把Run trace的数据保存到文件,在跟踪之前,打开Run trace窗口,鼠标右击执行Log to file即会弹出个文件保存框

需要运行Run trace,单击菜单Debug/Open or clear run trace,在打开Run trace缓冲区后,OD会记录

在反汇编窗口显示的是被调试程序领空,在反汇编窗口的快捷菜单中选择Run trace/Add entries of all procedures(Run trace/添加所有函数过程的入口),这样能够检查每个可识别的函数被调用的次数,之后,可以在Run trace窗口鼠标右击执行profile module(统计模块)查看统计次数

 

Hit trace能够让调试者辩别哪一部分代码执行了,哪一部分没有,OD的实现方法相当简单,它将选中区域的每一条命令处均设置一个INT3断点,当中断发生的时候,OD就把它去掉,在使用Hit trace的时候,不能在数据中设置断点,否则程序可能会崩溃

当遇到一段跳转分支较多的代码时,需要了解程序执行线程,可以用Hit trace,方法是选中这段代码,单击右键执行Hit trace/Add selection,OD会在已被执行过的指令前用另一种颜色标记出来

 

posted on 2012-07-03 16:55  hgy413  阅读(601)  评论(0编辑  收藏  举报

导航