词条 | Windows内核编程 |
释义 | Windows内核编程不是针对修改Windows的内核进行的编程,这不同于UNIX或LINUX内核编程。Windows的内核并不公开,或者说Microsoft只公开了用于学习的一小部分内核(WRK)。但是Microsoft提供了Windows内核程序的开发包WDK(旧称DDK),Windows程序员可以通过WDK开发Windows内核程序。一般来说内核程序的扩展名是.sys,属于PE文件。 简介内核程序是运行在Ring0级的,因此内核程序要比应用层上的普通Ring3级程序有更高的权限。因此内核编程的应用,往往给传统软件带来更强的功能,实现技术上的飞跃。同理,黑客们也将传统的攻击程序或潜行程序从Ring3搬到了Ring0级去,以便于更隐蔽、更有效的监视或控制目标系统(如Rootkit)。 Windows内核程序在开发的过程中,建议在虚拟机中调试。因为这不同于普通的Windows编程,在内核中的死锁可以直接到整个操作系统的死锁。在内核中的非法内存访问可以直接导致蓝屏死机(BSOD,Blue Screen of Death)。所以为了高效的开发与调试内核程序,一般通过使用WinDbg之类的Ring0级调试工具在虚拟机中对目标程序进行调试(调试的时候需要到Microsoft官方网站去下载内核符号文件)。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。