核心层API分类
核心层API按其用途分为以下几类:
I/O管理器类,此类函数以Io打头,这些函数用来和I/O管理器打交道的。
进程结构模块相关函数,此类函数以Ps打头。创建并管理内核模式的线程。
Executive执行支持函数,这类函数以Ex打头。提供堆管理和同步服务。
对象管理类函数,提供各种数据对象管理功能,此类函数以Ob打头。
安全引用监视类函数,使文件系统驱动程序执行安全检测。通常I/o请求到达驱动程序端时系统I/O管理器已经作了安全检测。此类函数以Se打头。
内存管理类函数,控制页表,页表提供虚拟内存到物理内存之间映射关系的定义,此类函数以Mm作为前缀。
运行时间库,这些函数以Rtl打头,提供一些常用函数,比如列表和串管理等,在内核模式程序中不能再调用ANSI标准函数了,以这些函数来代替它们的功能。
内核函数,这些函数以Ke打头。
内核流IRP管理函数,此类函数以Ks打头。
Win32例程调用函数。此类函数以Zw打头。通常情况下,内核模式程序不能调用提供给Win32应用程序的API函数,DDK为了使驱动程序也能调用Win32用户态api,提供了这样一组函数.。不过DDK中只提供了少数这样的函数给驱动程序调用。此类函数主要提供文件系统和注册表数据库的访问功能。
电源管理类函数,此类函数以Po打头。
硬件抽象层函数,此类函数以Hal打头。一般情况下,Windows NT/2K操作系统在硬件和核心层之间提供一组硬件抽象层函数来实现系统功能,这样可以实现驱动程序硬件无关的跨平台(源码级),核心层驱动只能调用这些函数来实现它们需要的功能。