目录

Windows内核函数前缀简述

Windows内核函数前缀

目录

Windows内核函数前缀简述

Windows内核函数是Windows内核开发中必须要熟悉的函数,其每个函数命名一般都可以直接反映出其用途和作用对象,且函数名都按其所在的层次或模块加上了特定的前缀。了解了这些前缀,在看到函数名时就大致可以知道函数所属的层次和模块。特此对Windows内核函数的前缀做一个汇总,方便查找和学习Windows内核函数。

主要的Windows内核函数前缀罗列如下:

  1. Ex:Executive,提供堆管理和同步服务。
  2. Nt:Native,对应于win32 API的内核函数。
  3. Ke:内核层,所有多线程和多处理器的低等级同步活动都发生在内核中。
  4. Zw:Win32子系统存在于用户模式中,所以用户模式中的应用程序可以容易地调用其例程。为了方便,Windows NT在内核模式中实现了一些有Zw前缀名的函数,这些函数可以使驱动程序调用Win32子系统例程。
  5. Hal:硬件抽象层,Hal是Hardware Abstraction Layer的缩写。
  6. Ob:对象管理器,集中控制Windows NT中的各种数据对象,WDM驱动程序仅需要对象管理器维护对象的参考计数,以防止对象被意外删除。
  7. Mm:内存管理器,控制页表,页表定义了虚拟内存到物理内存之间的映射。
  8. Ps:进程结构模块,创建并管理内核模式线程,普通的WDM驱动程序应使用一个独立的线程来循检无中断生成能力的设备。(Ps - Process)
  9. Se:安全参考监视器,使文件系统驱动程序执行安全检测。I/O请求到达WDM驱动程序前已经做完了安全检测。 
  10. Io:I/O管理,包含许多驱动程序可以使用的服务函数。
  11. Fs:文件系统,Fs是File System的缩写。
  12. Cc:文件缓存管理,Cc表示Cache。
  13. Cm:系统配置管理,Cm是Configuration Manager的缩写。
  14. Pp:“即插即用”管理,Pp表示PnP。(Plug and Play)
  15. Rtl:运行时程序库,Rtl是Runtime Library的缩写,包含工具例程,例如列表和串管理例程,内核模式驱动程序可以用这些例程来替代常规的ANSI标准例程,大部分例程可以从其名字上直接看出它的功能。