b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

ollydbg_ollydbg入门教程_ollydbg破解注册码(5)

电脑杂谈  发布时间:2017-04-17 05:02:23  来源:网络整理

OllyDbg是运行在Windows 95、Windows 98、Windows ME、Windows NT 和 Windows 2000系统下的一个单进程、多线程的分析代码级调试工具。它可以调试PE式的执行文件及动态链接库,并可以对其打补丁。“代码级”意味着你可以直接与比特、字节或处理器指令打交道。OllyDbg 仅使用已公开的 Win32 API 函数,因此它可以在所有 Windows 操作系统及后继版本中使用。但是由于我没有对 XP 系统进行彻底测试,因此不能保证OllyDbg功能的充分发挥。注意:OllyDbg 不支持对 .NET 程序的调试。

OllyDbg不是面向编译器的。它没有特别的规则规定必须是哪一个编译器产生的代码。因此,OllyDbg可以非常好的处理通过编译器生成的代码,或是直接用汇编写入的代码。

OllyDbg可以并行调试程序。你无须暂停执行程序,就可以浏览代码和数据,设置断点、停止或恢复线程,甚至直接修改内存。(这可以视为一种软件调试的模式,与之相对的硬件模式则是当进程在运行时调试器被阻滞,反之亦然)。假使所需的操作比较复杂,OllyDbg会让进程终止一小段时间,但是这种暂停对于用户来说是透明的。有时进程会发生非法操作。你可以把OllyDbg设置成即时[just—in—time]调试器,它会挂接出错程序,并停在程序产生异常的地方。

通过OllyDbg,你可以调试单独的DLL[standaloneDLLs]文件。操作系统不能直接运行DLL 文件,因此OllyDbg将一个可以加载 DLL 的小程序压缩到资源里,这个程序允许你调用最多10个参数的输出函数。

OllyDbg是完全面向模块[module—oriented]的。模块[Module]包括可执行文件(扩展名通常为.EXE)和在启动时加载或需要时动态加载的动态链接库(扩展名通常为.DLL)。在调试期间,你可以设置断点[breakpoints]、定义新的标签[labels]、注释[comment]汇编指令,当某个模块从内存中卸载[unload]时,调试器会把这些信息保存在文件中,文件名就是模块的名称,扩展名为.UDD(表示 用户自定义文件[User—Defined Data])当OllyDbg下一次加载该模块时,它会自动恢复所有的调试信息,而不管是哪一个程序使用这个模块。假设你正在调试程序Myprog1,这个程序使用了Mydll。你在 Mydll 中设置了一些断点,然后你开始调试Myprog2,这个程序同样使用了Mydll。这时你会发现,所有 Mydll 中的断点依然存在,即使 Mydll 加载到不同的位置!

一些调试器把被调试进程的内存当作一个单一的(并且大部分是空的)大小为2 ^32字节的区域。OllyDbg采用了与之不同的技术:在这里,内存由许多独立的块组成,任何对内存内容的操作都被限制在各自的块内。在大多数情况下,这种方式工作得很好并且方便了调试。但是,如果模块包含好几个可执行段[executable sections],你将不能一次看到全部代码,然而这种情况是非常少见的。

OllyDbg 是一个很占用内存的程序[memory—hungry application]。它在启动时就需要 3 MB,并且当你第一次装载被调试的程序时还需要一到两兆的内存。每一次的分析、备份、跟踪或者文件数据显示都需要占用一定的内存。因此当你调试一个很大的项目,发现程序管理器显示有 40 或 60 兆内存被占用时,请不要惊慌。

为了有效地调试一些不带源码的程序,你必须首先理解它是如何工作的。OllyDbg 包含的大量特性可以使这种理解变得非常容易。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-41789-5.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...