内核

标准驱动程序例程必须由驱动程序实现。 驱动程序支持例程是 Windows 操作系统提供的例程。 驱动程序不使用 Microsoft Win32 例程;而是使用本部分介绍的驱动程序支持例程。 本部分中的驱动程序支持例程由内核模式管理器和库组织。

  • 标准驱动程序例程此处是必须在驱动程序中实现的必需和可选例程来响应来自 Windows 或其他驱动程序的调用。 调用这些例程时,代码必须响应调用并及时返回相应的数据。

    所有驱动程序都需要以下例程:

  • 驱动程序支持例程

    驱动程序支持例程是 Windows 操作系统为要使用的内核模式驱动程序提供的例程。 驱动程序不使用 Microsoft Win32 例程;而是使用本部分介绍的驱动程序支持例程。

    本部分中的驱动程序支持例程由内核模式管理器和库组织。

    以下内核模式管理器为驱动程序提供支持:

    • 对象管理器例程

    • 内存管理器例程

    • 进程和线程管理器例程

    • I/O 管理器例程

    • Power Manager 例程

    • Configuration Manager例程

    • 内核事务管理器例程

    • 安全参考监视器例程

      以下内核模式库为驱动程序提供支持:

    • 核心内核库支持例程

    • 行政库支持例程

    • Run-Time库 (RTL) 例程

    • 安全字符串库例程

    • 安全整数库例程

    • 直接内存访问 (DMA) 库例程

    • 硬件抽象层 (HAL) 库例程

    • 常见日志文件系统 (CLFS) 例程

    • Windows Management Instrumentation (WMI) 库支持例程

    • ZwXxx 例程

    • 辅助Kernel-Mode库例程和结构

    • 处理器组兼容性库

Windows 内核的公共标头

若要开发 Windows 内核,需要以下标头:

有关编程指南,请参阅 Windows 内核

初始化和卸载

本部分汇总了驱动程序可从 DriverEntry、AddDevice、Reinitialize 或 Unload 例程调用的内核模式支持例程。

...的例程 常规
获取和报告有关驱动程序设备和当前平台的硬件配置信息。 IoGetDevicePropertyIoReportDetectedDeviceIoReportResourceForDetectionIoGetDmaAdapterIoGetConfigurationInformationHalExamineMBRIoReadPartitionTableIoInvalidateDeviceRelationsIoInvalidateDeviceStateIoRegisterPlugPlayNotification、IoUnregisterPlugPlayNotificationIoRequestDeviceEjectIoReportTargetDeviceChange
获取和报告配置信息,以及用于在注册表中注册接口。 IoGetDevicePropertyIoOpenDeviceInterfaceRegistryKeyIoOpenDeviceRegistryKeyIoRegisterDeviceInterfaceIoSetDeviceInterfaceStateRtlCheckRegistryKey、RtlCreateRegistryKeyRtlQueryRegistryValuesRtlWriteRegistryValueRtlDeleteRegistryValueInitializeObjectAttributesZwCreateKeyZwOpenKeyZwQueryKeyZwEnumerateKeyZwEnumerateValueKeyZwQueryValueKeyZwSetValueKeyZwFlushKeyZwDeleteKeyZwClose
设置和释放驱动程序可能使用的对象和资源。 IoCreateDeviceIoDeleteDeviceIoGetDeviceObjectPointerIoAttachDeviceToDeviceStackIoGetAttachedDeviceReferenceIoDetachDeviceIoAllocateDriverObjectExtensionIoGetDriverObjectExtensionIoRegisterDeviceInterfaceIoIsWdmVersionAvailableIoDeleteSymbolicLinkIoAssignArcNameIoDeassignArcNameIoSetShareAccessIoConnectInterruptIoDisconnectInterruptIoConnectInterruptExIoDisconnectInterruptExIoInitializeDpcRequestIoReadPartitionTableIoSetPartitionInformationIoWritePartitionTableIoCreateController、IoDeleteControllerKeInitializeSpinLockKeInitializeDpcKeInitializeTimer、KeInitializeTimerKeInitializeEventExInitializeFastMutexKeInitializeMutexKeInitializeSemaphoreIoCreateNotificationEvent、IoCreateSynchronizationEventPsCreateSystemThreadPsTerminateSystemThreadKeSetBasePriorityThread、KeSetPriorityThreadmmIsThisAnNtAsSystemMmQuerySystemSizeExInitializeNPagedLookasideListExInitializePagedLookasideListExInitializeResourceLiteExReinitializeResourceLiteExDeleteResourceLiteObReferenceObjectByHandleObReferenceObjectByPointer、ObReferenceObjectObDereferenceObjectRtlInitString、RtlInitAnsiString、RtlInitUnicodeStringInitializeObjectAttributesZwCreateDirectoryObjectZwCreateFileZwCreateKeyZwDeleteKeyZwMakeTemporaryObjectZwClosePsGetVersionObGetObjectSecurityObReleaseObjectSecurity
初始化驱动程序托管的内部队列。 KeInitializeSpinLockInitializeListHeadExInitializeSListHeadKeInitializeDeviceQueueIoCsqInitialize

以下例程保留供系统使用。 请勿在驱动程序中使用它们。

  • HalAcquireDisplayOwnership
  • HalAllocateAdapterChannel。 请改用 AllocateAdapterChannel。
  • HalAllocateCrashDumpRegisters
  • HalAllocateMapRegisters
  • HalGetScatterGatherList。 请改用 GetScatterGatherList。
  • HalMakeBeep
  • HalPutDmaAdapter。 请改用 PutDmaAdapter。
  • HalPutScatterGatherList. 请改用 PutScatterGatherList。

仅导出以下过时例程以支持现有驱动程序:

过时例程 Replacement
HalAllocateCommonBuffer 请改为参阅 AllocateCommonBuffer
HalAssignSlotResources PnP 管理器为 PnP 设备的驱动程序分配资源,这些资源会随每个IRP_MN_START_DEVICE请求一起传递资源列表。 必须支持 PnP 管理器无法枚举的旧设备的驱动程序应使用 IoReportDetectedDevice 和 IoReportResourceForDetection。
HalFreeCommonBuffer 请改为参阅 FreeCommonBuffer
HalGetAdapter 请改为参阅 IoGetDmaAdapter
HalGetBusData 请改用 IRP_MN_QUERY_INTERFACE 查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回指向 GetBusData 的函数指针,该指针可用于从给定设备的配置空间读取。
HalGetBusDataByOffset 请改用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回指向 GetBusData 的函数指针,该指针可用于从给定设备的配置空间读取。
HalGetDmaAlignmentRequirement 请改为参阅 GetDmaAlignment。
HalGetInterruptVector PnP 管理器为 PnP 设备的驱动程序分配资源,这些资源会随每个IRP_MN_START_DEVICE请求一起传递资源列表。 必须支持 PnP 管理器无法枚举的旧设备的驱动程序应使用 IoReportDetectedDevice 和 IoReportResourceForDetection。
HalReadDmaCounter 请改为查看 ReadDmaCounter。
HalSetBusData 请改用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回指向 SetBusData 的函数指针,该指针可用于写入给定设备的配置空间。
HalSetBusDataByOffset 请改用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回指向 SetBusData 的函数指针,该指针可用于写入给定设备的配置空间。
HalTranslateBusAddress PnP 管理器在其每个设备的IIRP_MN_START_DEVICE请求中传递原始和已转换资源的列表。 因此,在大多数情况下,无需转换总线地址。 但是,如果需要翻译,请使用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 查询请求返回一个指向 TranslateBusAddress 的函数指针,该指针可用于将父总线上的地址转换为逻辑地址。

这些过时的例程包含在 Ntddk.h 头文件中。

不支持以下例程,不应使用:

  • HalReturnToFirmware

Windows 执行 PCI 总线资源的资源均衡,以打开已插入设备的地址区域。 重新平衡操作会导致某些驱动程序设备的总线数据在IRP_MN_STOP_DEVICE和IRP_MN_START_DEVICE调用之间动态移动 () 。 因此,驱动程序不能直接访问总线数据。 相反,驱动程序必须将其传递到较低的总线驱动程序,因为它知道设备的位置。

有关详细信息,请参阅 停止设备以重新平衡资源

注册表

用于获取和报告配置信息,以及用于在注册表中注册接口。

函数 说明
IoGetDeviceProperty 从注册表检索设备设置信息。 使用此例程而不是直接访问注册表,使驱动程序与平台之间的差异和注册表结构中的可能更改隔离开来。
IoOpenDeviceInterfaceRegistryKey 返回注册表项的句柄,用于存储有关特定设备接口的信息。
IoOpenDeviceRegistryKey 返回特定设备实例特定于设备的或特定于驱动程序的注册表项的句柄。
IoRegisterDeviceInterface (设备接口) 注册设备功能,驱动程序将允许应用程序或其他系统组件使用。 I/O 管理器为设备接口创建注册表项。 驱动程序可以使用 IoOpenDeviceInterfaceRegistryKey 访问此密钥下的持久性存储。
IoSetDeviceInterfaceState 启用或禁用以前注册的设备接口。 应用程序和其他系统组件只能打开已启用的接口。
RtlCheckRegistryKey 如果给定相对路径的注册表中存在某个键,则返回STATUS_SUCCESS。
RtlCreateRegistryKey 沿给定相对路径在注册表中添加键对象。
RtlQueryRegistryValues 在给定回调例程后,在注册表中为指定值名称的条目提供驱动程序提供的回调只读访问权限。
RtlWriteRegistryValue 在给定值名称处,将调用方提供的数据写入注册表中的指定相对路径。
RtlDeleteRegistryValue 从给定相对路径的注册表中删除指定的值名称 (和关联的值项) 。
InitializeObjectAttributes 为对 ZwCreateXxx 或 ZwOpenXxx 例程的后续调用设置OBJECT_ATTRIBUTES类型的参数。
ZwCreateKey 使用给定对象的属性、允许的访问和创建选项在注册表中创建一个新密钥, (例如,系统) 启动时是否再次创建密钥。 或者,打开现有键并返回键对象的句柄。
ZwOpenKey 返回注册表中某个键的句柄,给定对象的属性 (必须包含密钥) 名称和对对象的所需访问。
ZwQueryKey 返回有关键类及其子项的数量和大小的信息。 此信息包括子项名称的长度以及值条目的大小。
ZwEnumerateKey 返回注册表中打开的键的从零开始的索引选择的子项的指定信息。
ZwEnumerateValueKey 返回有关注册表中打开的键的从零开始的索引选择的子项的值项的指定信息。
ZwQueryValueKey 返回注册表中打开的键的值项。
ZwSetValueKey 替换 (或创建) 注册表中打开的键的值项。
ZwFlushKey 强制 ZwCreateKey 或 ZwSetValueKey 所做的更改,以便将打开的键对象写入磁盘。
ZwDeleteKey 关闭密钥后,立即从注册表中删除键及其值项。
ZwClose 释放打开对象的句柄,导致句柄变得无效并递减对象句柄的引用计数。

对象和资源

用于设置和释放驱动程序可能使用的对象和资源。

函数 说明
IoCreateDevice 初始化设备对象,该对象表示将驱动程序加载到系统中的物理、虚拟或逻辑设备。 然后,它会为与设备对象关联的驱动程序定义的设备扩展分配空间。
IoDeleteDevice 从系统中删除基础设备时,从系统中删除设备对象。
IoGetDeviceObjectPointer 请求对命名设备对象的访问,并返回指向该设备对象的指针(如果授予了请求的访问权限)。 还返回指向命名设备对象引用的文件对象的指针。 实际上,此例程在调用方与下一级驱动程序之间建立连接。
IoAttachDeviceToDeviceStack 将调用方的设备对象附加到驱动程序链中最高的设备对象,并返回指向以前最高的设备对象的指针。 首先将目标设备的 I/O 请求路由到调用方。
IoGetAttachedDeviceReference 返回指向驱动程序堆栈中最高级别设备对象的指针,并递增该对象的引用计数。
IoDetachDevice 释放调用方设备对象与目标驱动程序设备对象之间的附件。
IoAllocateDriverObjectExtension 分配具有给定唯一标识符的按驱动程序上下文区域。
IoGetDriverObjectExtension 检索以前分配的每个驱动程序上下文区域。
IoRegisterDeviceInterface (设备接口) 注册设备功能,驱动程序将允许应用程序或其他系统组件使用。 I/O 管理器为设备接口创建注册表项。 驱动程序可以通过调用 IoOpenDeviceInterfaceRegistryKey 来访问此密钥下的持久性存储。
IoIsWdmVersionAvailable 检查操作系统是否支持给定的 WDM 版本。
IoDeleteSymbolicLink 释放设备对象名称和用户可见名称之间的符号链接。
IoAssignArcName 设置命名设备对象 ((如磁带、软盘或 CD-ROM) )与设备的相应 ARC 名称之间的符号链接。
IoDeassignArcName 释放通过调用 IoAssignArcName 创建的符号链接。
IoSetShareAccess 设置允许访问表示设备的给定文件对象。 (只有最高级别驱动程序才能调用此例程。)
IoConnectInterrupt 注册驱动程序的中断处理例程。 驱动程序应改用 IoConnectInterruptEx。
IoDisconnectInterrupt 取消注册 IoConnectInterrupt 注册的中断处理例程。
IoConnectInterruptEx 注册驱动程序的中断处理例程。 驱动程序可以为基于行的中断注册一个 InterruptService 例程,也可以为消息信号中断注册一个 InterruptMessageService 例程。
IoDisconnectInterruptEx 取消注册 IoConnectInterruptEx 注册的中断处理例程。
IoInitializeDpcRequest 将驱动程序提供的 DpcForIsr 例程与给定的设备对象相关联,以便 DpcForIsr 例程可以完成中断驱动的 I/O 操作。
IoReadPartitionTable 返回具有给定扇区大小的磁盘上的分区列表。
IoSetPartitionInformation 设置 (磁盘) 分区的分区类型和数字。
IoWritePartitionTable 为磁盘写入分区表,给定表示磁盘的设备对象、扇区大小和指向包含驱动器布局结构的缓冲区的指针。
IoCreateController 初始化一个控制器对象,该对象表示由具有相同驱动程序的两个或多个类似设备共享的物理设备控制器,并指定控制器扩展的大小。
IoDeleteController 从系统中删除控制器对象。
KeInitializeSpinLock 初始化KSPIN_LOCK类型的变量。
KeInitializeDpc 初始化 DPC 对象,设置可以使用给定上下文调用的驱动程序提供的 CustomDpc 例程。
KeInitializeTimer 将通知计时器对象初始化为Not-Signaled状态。
KeInitializeTimerEx 将通知或同步计时器对象初始化为Not-Signaled状态。
KeInitializeEvent 将事件对象初始化为同步 (单个服务员) 或通知 (多个服务员) 类型事件,并设置其初始状态 (Signaled 或 Not-Signaled) 。
ExInitializeFastMutex 初始化一个快速互斥变量,该变量用于由一组线程同步对共享资源的互斥访问。
KeInitializeMutex 将互斥对象初始化为设置为 Signaled 状态。
KeInitializeSemaphore 将信号灯对象初始化为给定计数,并为计数指定上限。
IoCreateNotificationEvent 初始化一个命名通知事件,该事件用于同步两个或多个组件之间的访问。 通知事件不会自动重置。
IoCreateSynchronizationEvent 初始化一个命名的同步事件,该事件用于序列化对两个其他无关驱动程序之间硬件的访问。
PsCreateSystemThread 创建与给定进程对象或默认系统进程关联的内核模式线程。 返回线程的句柄。
PsTerminateSystemThread 终止当前线程并满足当前线程对象的尽可能多的等待时间。
KeSetBasePriorityThread 为驱动程序创建的线程设置相对于系统进程的运行时优先级。
KeSetPriorityThread 为具有实时优先级属性的驱动程序创建的线程设置运行时优先级。
MmIsThisAnNtAsSystem 如果当前平台是服务器,则返回 TRUE,指示处理 I/O 请求所需的资源可能多于计算机是否为客户端。
MmQuerySystemsize 返回当前平台上可用内存量的估计值 (小、中或大) 。
ExInitializeNPagedLookasideList 初始化非分页内存的外观列表。 成功初始化后,可以分配固定大小的块并将其释放到 lookaside 列表。
ExInitializePagedLookasideList 初始化分页内存的查看列表。 成功初始化后,可以分配固定大小的块并将其释放到 lookaside 列表。
ExInitializeResourceLite 初始化调用方为其提供存储的资源,供一组线程用于同步。
ExReinitializeResourceLite 重新初始化现有资源变量。
ExDeleteResourceLite 从系统的资源列表中删除调用方初始化的资源。
ObReferenceObjectByHandle 返回指向对象正文的指针,并处理 (属性的信息,并在给定对象句柄、对象的类型和掩码的情况下授予访问权限) 。 指定对对象和首选访问模式的所需访问。 成功的调用递增对象的引用计数。
ObReferenceObjectByPointer 递增对象的引用计数,以便调用方可以确保调用方在使用对象时不会从系统中删除该对象。
ObReferenceObject 为对象的引用计数递增,给定指向对象的指针。
ObDereferenceObject 释放对对象的引用, (递减引用计数) ,给定指向对象主体的指针。
RtlInitString 初始化缓冲区中的计数字符串。
RtlInitAnsiString 初始化缓冲区中计数的 ANSI 字符串。
RtlInitUnicodeString 初始化缓冲区中计数的 Unicode 字符串。
InitializeObjectAttributes 初始化类型为 OBJECT_ATTRIBUTES 的参数,以便对 ZwCreateXxx 或 ZwOpenXxx 例程进行后续调用。
ZwCreateDirectoryObject 创建或打开具有指定对象属性集的目录对象,并请求调用方一个或多个类型的访问。 返回目录对象的句柄。
ZwCreateFile 创建或打开表示物理、逻辑或虚拟设备、目录、数据文件或卷的文件对象。 返回文件对象的句柄。
ZwCreateKey 在注册表中创建或打开键对象,并返回密钥对象的句柄。
ZwDeleteKey 关闭密钥的最后一个句柄后,删除注册表中的现有打开键。
ZwMakeTemporaryObject 重置打开对象的“永久”属性,以便在对象引用计数变为零时删除该对象及其名称。
ZwClose 释放打开对象的句柄,导致句柄变得无效,并递减对象句柄的引用计数。
PsGetVersion 提供有关操作系统版本和内部版本号的信息。
ObGetObjectSecurity 返回给定对象的缓冲安全描述符。
ObReleaseObjectSecurity 释放 ObGetObjectSecurity 返回的安全描述符。

初始化Driver-Managed队列

用于初始化驱动程序托管的内部队列。

函数 说明
KeInitializeSpinLock 初始化KSPIN_LOCK类型的变量。 初始化的旋转锁是 ExXxxInterlockedList 例程的必需参数。
InitializeListHead 为驱动程序的内部队列设置队列标头,给定指向队列标头和队列的驱动程序提供的存储的指针。
ExInitializeSListHead 为已排序、互锁、单声链接的列表设置队列标头。
KeInitializeDeviceQueue 将设备队列对象初始化为“不忙”状态,为多处理器安全访问设备队列条目设置关联的旋转锁。
IoCsqInitialize 初始化驱动程序的取消安全 IRP 队列的调度表。

I/O 管理器例程

除视频和 SCSI 微型端口驱动程序和 NDIS 驱动程序之外的所有内核模式驱动程序都调用 IoXxx 例程。

IoXxx 例程的引用按字母顺序排列。

有关这些例程功能的概述,请参阅Kernel-Mode支持例程摘要。

以下例程用于系统使用。 请勿在驱动程序中使用。

IoUpdateDiskGeometry

电源管理例程

除了系统级别和设备级别以外,Windows 电源管理体系结构还提供在组件 (子级支持的电源管理的综合方法) 级别。

内核模式驱动程序调用 PoXxx 例程,为它们控制的设备执行电源管理。 本部分包含这些例程的参考页。 PoXxx 例程在 Wdm.h 头文件中声明。

有关电源管理的详细信息,请参阅 适用于 Windows 驱动程序的电源管理

函数 说明
PoCallDriver PoCallDriver 例程将电源 IRP 传递到设备堆栈中的下一个较低驱动程序。 (仅限 Windows Server 2003、Windows XP 和 Windows 2000.)
PoClearPowerRequest PoClearPowerRequest 例程递减指定电源请求类型的计数。
PoCreatePowerRequest PoCreatePowerRequest 例程创建电源请求对象。
PoDeletePowerRequest PoDeletePowerRequest 例程删除电源请求对象。
PoEndDeviceBusy PoEndDeviceBusy 例程标志着设备繁忙一段时间的结束。
PoGetSystemWake PoGetSystemWake 例程确定指定的 IRP 是否已标记为从睡眠状态唤醒系统。
PoQueryWatchdogTime PoQueryWatchdogTime 例程指示电源管理器是否为当前分配给设备堆栈的任何电源 IRP 启用了监视程序超时计数器。
PoRegisterDeviceForIdleDetection PoRegisterDeviceForIdleDetection 例程启用或取消空闲检测,并设置设备的空闲超时值。
PoRegisterPowerSettingCallback PoRegisterPowerSettingCallback 例程注册电源设置回调例程,以接收指定电源设置中更改的通知。
PoRegisterSystemState PoRegisterSystemState 例程将系统注册为由于某些活动而繁忙。
PoRequestPowerIrp PoRequestPowerIrp 例程分配电源 IRP,并将其发送到指定设备的设备堆栈中的顶部驱动程序。
PoSetDeviceBusyEx PoSetDeviceBusyEx 例程通知电源管理器与指定的空闲计数器关联的设备正忙。
PoSetPowerRequest PoSetPowerRequest 例程递增指定电源请求类型的计数。
PoSetPowerState PoSetPowerState 例程通知系统设备电源状态发生更改。
PoSetSystemState 驱动程序调用 PoSetSystemState 例程来指示系统处于活动状态。
PoSetSystemWake PoSetSystemWake 例程将指定的 IRP 标记为有助于从睡眠状态唤醒系统。
PoStartDeviceBusy PoStartDeviceBusy 例程标志着设备正忙的时间段的开始。
PoStartNextPowerIrp PoStartNextPowerIrp 例程向电源管理器发出信号,即驱动程序已准备好处理下一个电源 IRP。 (Windows Server 2003、Windows XP 和 Windows 2000 only.)
PoUnregisterPowerSettingCallback PoUnregisterPowerSettingCallback 例程取消注册以前通过调用 PoRegisterPowerSettingCallback 例程注册的驱动程序的电源设置回调例程。
PoUnregisterSystemState PoUnregisterSystemState 例程取消 PoRegisterSystemState 创建的系统状态注册。

设备电源管理

从Windows 8开始,驱动程序可以将设备硬件划分为多个逻辑组件,以实现精细的电源管理。 组件具有一组电源状态,可以独立于同一设备中其他组件的电源状态进行管理。 在 F0 状态下,组件已完全打开。 该组件可能支持其他低功率状态 F1、F2 等。

设备的电源策略所有者通常是设备的函数驱动程序。 若要启用组件级电源管理,此驱动程序会将设备注册到电源管理框架 (PoFx) 。 通过注册设备,驱动程序负责在组件被主动使用以及组件空闲时通知 PoFx。 PoFx 基于有关组件活动、延迟容忍度、预期空闲持续时间和唤醒要求的信息,为设备做出智能空闲状态选择。 通过在组件级别控制电源使用量,PoFx 可以降低电源要求,同时保持系统响应能力。 有关详细信息,请参阅Component-Level电源管理。

从Windows 8开始,驱动程序可以将设备硬件划分为多个逻辑组件,以实现精细的电源管理。 组件具有一组电源状态,可以独立于同一设备中其他组件的电源状态进行管理。 在 F0 状态下,组件已完全打开。 该组件可能支持其他低功率状态 F1、F2 等。

设备的电源策略所有者通常是设备的函数驱动程序。 若要启用组件级电源管理,此驱动程序会将设备注册到电源管理框架 (PoFx) 。 通过注册设备,驱动程序负责在组件被主动使用以及组件空闲时通知 PoFx。 PoFx 基于有关组件活动、延迟容忍度、预期空闲持续时间和唤醒要求的信息,为设备做出智能空闲状态选择。 通过在组件级别控制电源使用量,PoFx 可以降低电源要求,同时保持系统响应能力。 有关详细信息,请参阅Component-Level电源管理。

本部分介绍由电源管理框架 (PoFx) 实现的例程,以启用设备电源管理。 这些例程由驱动程序调用,即设备的电源策略所有者 (PPO) 。 通常,设备的函数驱动程序是此设备的 PPO。

函数 说明
PoFxActivateComponent PoFxActivateComponent 例程递增指定组件的激活引用计数。
PoFxCompleteDevicePowerNotRequired PoFxCompleteDevicePowerNotRequired 例程通知电源管理框架 (PoFx) 调用驱动程序已完成对驱动程序 DevicePowerNotRequiredCallback 回调例程的响应。
PoFxCompleteIdleCondition PoFxCompleteIdleCondition 例程通知电源管理框架 (PoFx) 指定组件已完成对空闲条件的挂起更改。
PoFxCompleteIdleState PoFxCompleteIdleState 例程通知电源管理框架 (PoFx) 指定组件已完成对 Fx 状态的挂起更改。
PoFxIdleComponent PoFxIdleComponent 例程递减指定组件上的激活引用计数。
PoFxIssueComponentPerfStateChange PoFxIssueComponentPerfStateChange 例程提交请求以将设备组件置于特定性能状态。
PoFxIssueComponentPerfStateChangeMultiple PoFxIssueComponentPerfStateChangeMultiple 例程提交请求,以同时更改设备组件在多个性能状态集中的性能状态。
PoFxNotifySurprisePowerOn PoFxNotifySurprisePowerOn 例程通知电源管理框架 (PoFx) 设备已打开,作为向其他设备供电的副作用。
PoFxPowerControl PoFxPowerControl 例程向电源管理框架发送电源控制请求, (PoFx) 。
PoFxQueryCurrentComponentPerfState PoFxQueryCurrentComponentPerfState 例程检索组件性能状态集中的活动性能状态。
PoFxRegisterComponentPerfStates PoFxRegisterComponentPerfStates 例程注册设备组件,以便由电源管理框架 (PoFx) 进行性能状态管理。
PoFxRegisterDevice PoFxRegisterDevice 例程将设备注册到电源管理框架 (PoFx) 。
PoFxReportDevicePoweredOn PoFxReportDevicePoweredOn 例程通知电源管理框架, (PoFx) 设备在) 电源状态上完全完成到 D0 (的请求转换。
PoFxSetComponentLatency PoFxSetComponentLatency 例程指定在从空闲条件转换到指定组件中的活动条件时可以容忍的最大延迟。
PoFxSetComponentResidency PoFxSetComponentResidency 例程设置组件进入空闲条件后可能保持空闲状态的估计时间。
PoFxSetComponentWake PoFxSetComponentWake 例程指示每当组件进入空闲条件时,驱动程序是否为指定的组件提供支持以唤醒。
PoFxSetDeviceIdleTimeout PoFxSetDeviceIdleTimeout 例程指定从设备最后一个组件进入空闲条件到电源管理框架 (PoFx) 调用驱动程序的 DevicePowerNotRequiredCallback 例程时的最低时间间隔。
PoFxSetTargetDripsDevicePowerState 调用此例程以通知电源管理器针对 DRIPS 的设备的目标设备电源状态。 驱动程序可以替代 PEP 提供的 DRIPS 约束
PoFxStartDevicePowerManagement PoFxStartDevicePowerManagement 例程使用电源管理框架完成设备注册, (PoFx) 并启动设备电源管理。
PoFxUnregisterDevice PoFxUnregisterDevice 例程从电源管理框架中删除设备注册, (PoFx) 。

设备电源管理回调

设备电源管理回调是电源管理框架 (PoFx) 启用设备电源管理所需的回调例程。 设备电源策略所有者的驱动程序实现这些回调例程。 PoFx 调用这些例程来查询和配置设备中组件的电源状态。

回调 说明
ComponentActiveConditionCallback ComponentActiveConditionCallback 回调例程通知驱动程序指定组件已完成从空闲条件到活动条件的转换。
ComponentIdleConditionCallback ComponentIdleConditionCallback 回调例程通知驱动程序指定组件已完成从活动条件到空闲条件的转换。
ComponentIdleStateCallback ComponentIdleStateCallback 回调例程通知挂起更改到指定组件的 Fx 电源状态的驱动程序。
ComponentPerfStateCallback ComponentPerfStateCallback 回调例程通知驱动程序更改组件的性能状态的请求已完成。
DevicePowerNotRequiredCallback DevicePowerNotRequiredCallback 回调例程通知设备驱动程序,设备不需要保持 D0 电源状态。
DevicePowerRequiredCallback DevicePowerRequiredCallback 回调例程通知设备驱动程序设备必须进入并保持 D0 电源状态。
PowerControlCallback PowerControlCallback 回调例程执行电源管理框架 (PoFx) 请求的电源控制操作。

平台扩展插件 (PEP) 参考

平台扩展插件 (PEP) 为平台电源管理提供接口,包括设备电源管理 (DPM) 、处理器电源管理 (PPM) ,以及从 Windows 10 ACPI 运行时方法开始。

发送到平台扩展插件的通知类型 (PEP) 包括: ACPI 通知

设备电源管理 (DPM) 通知

处理器电源管理 (PPM) 通知

PPM 电源控制代码

初始化函数 说明
PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS结构。
PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS结构。
PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE结构。
PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE结构。
PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_INTERRUPT_RESOURCE结构。
PEP_ACPI_INITIALIZE_IOPORT_RESOURCE PEP_ACPI_INITIALIZE_IOPORT_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE结构。
PEP_ACPI_INITIALIZE_MEMORY_RESOURCE PEP_ACPI_INITIALIZE_MEMORY_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE结构。
PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_I2C_RESOURCE结构。
PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_SPI_RESOURCE结构。
PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_UART_RESOURCE结构。

PEP 回调例程

回调例程由平台扩展插件实现,由 Windows 电源管理框架 (PoFx) 调用。

回调函数 说明
AcceptAcpiNotification AcceptAcpiNotification 事件回调例程处理来自 Windows 电源管理框架的 ACPI 通知, (PoFx) 。
AcceptDeviceNotification AcceptDeviceNotification 事件回调例程处理来自 Windows 电源管理框架 (PoFx) 的设备电源管理 (DPM) 通知。
AcceptProcessorNotification AcceptProcessorNotification 事件回调例程处理来自 Windows 电源管理框架的处理器电源管理 (PPM) 通知, (PoFx) 。
PO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK EnumerateInterruptSource 回调例程提供平台扩展插件 (PEP) ,其中包含有关中断源的信息。
PROCESSOR_HALT_ROUTINE 停止回调例程将处理器转换为空闲状态。
PowerOnDumpDeviceCallback PowerOnDumpDeviceCallback 回调例程打开故障转储设备。

Power management framework (PoFx) 例程

某些杂项 PoFx 例程和结构很可能最终出现在Kernel-Mode驱动程序体系结构文档集的电源管理部分中。

初始化函数 说明
PoFxRegisterPlugin PoFxRegisterPlugin 例程使用 Windows 电源管理框架 (PoFx) 注册平台扩展插件 (PEP) 。
PoFxRegisterPluginEx PoFxRegisterPluginEx 例程使用 Windows 电源管理框架 (PoFx) 注册平台扩展插件 (PEP) 。
PoFxRegisterCoreDevice PoFxRegisterCoreDevice 例程将新的核心系统资源注册到 Windows 电源管理框架 (PoFx) 。
PoFxRegisterCrashdumpDevice PoFxRegisterCrashdumpDevice 例程注册故障转储设备。
PoFxPowerOnCrashdumpDevice PoFxPowerOnCrashdumpDevice 例程请求启用故障转储设备。
回调函数 说明
POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS EnumerateUnmaskedInterrupts 例程枚举中断源,其中断已取消掩码并启用。
POFXCALLBACKPLATFORMIDLEVETO PlatformIdleVeto 例程递增或递减对平台空闲状态否决代码的否决计数。
POFXCALLBACKPROCESSORHALT ProcessorHalt 例程准备要停止的处理器。
POFXCALLBACKPROCESSORIDLEVETO ProcessorIdleVeto 例程递增或递减处理器空闲状态否决代码的否决计数。
POFXCALLBACKREQUESTCOMMON RequestCommon 例程是一个泛型请求处理程序。
POFXCALLBACKREQUESTINTERRUPT RequestInterrupt 例程请求操作系统重播边缘触发的中断,该中断可能在硬件平台处于低功率状态时丢失。
POFXCALLBACKREQUESTWORKER RequestWorker 例程由平台扩展插件 (PEP) 调用,以通知 Windows 电源管理框架 (PoFx) 平台扩展插件 (PEP) 具有代表指定设备提交的工作请求。
POFXCALLBACKCRITICALRESOURCE TransitionCriticalResource 例程更改核心系统组件的主动/非活动状态。
POFXCALLBACKUPDATEPLATFORMIDLESTATE UpdatePlatformIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定平台空闲状态的属性。
POFXCALLBACKUPDATEPROCESSORIDLESTATE UpdateProcessorIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定处理器空闲状态的属性。
ComponentCriticalTransitionCallback ComponentCriticalTransitionCallback 回调例程处理 F0 (完全在) 和低功率 Fx 组件电源状态之间转换指定的组件。

Configuration Manager例程

配置管理器例程使用 CmXxx 命名约定。

  • CmCallbackGetKeyObjectID
  • CmCallbackGetKeyObjectIDEx
  • CmCallbackReleaseKeyObjectIDEx
  • CmGetBoundTransaction
  • CmGetCallbackVersion
  • CmRegisterCallback
  • CmRegisterCallbackEx
  • CmSetCallbackObjectContext
  • CmUnRegisterCallback

内核事务管理器 (KTM) 例程

本部分介绍内核事务管理器 (KTM) 提供的例程、结构和枚举。

Transaction Manager 对象例程

本节包括下列主题:

  • TmRecoverTransactionManager
  • ZwCreateTransactionManager
  • ZwOpenTransactionManager
  • ZwQueryInformationTransactionManager
  • ZwRecoverTransactionManager
  • ZwRollforwardTransactionManager

事务对象例程

本节包括下列主题:

  • TmCommitTransaction
  • TmGetTransactionId
  • TmIsTransactionActive
  • TmRollbackTransaction
  • ZwCommitTransaction
  • ZwCreateTransaction
  • ZwEnumerateTransactionObject
  • ZwOpenTransaction
  • ZwQueryInformationTransaction
  • ZwRollbackTransaction
  • ZwSetInformationTransaction

登记对象例程

本节包括下列主题:

  • TmCommitComplete
  • TmCommitEnlistment
  • TmCreateEnlistment
  • TmDereferenceEnlistmentKey
  • TmPrepareComplete
  • TmPrepareComplete
  • TmPrepareEnlistment
  • TmPrepareEnlistment
  • TmReadOnlyEnlistment
  • TmRecoverEnlistment
  • TmReferenceEnlistmentKey
  • TmRequestOutcomeEnlistment
  • TmRollbackComplete
  • TmRollbackEnlistment
  • TmSinglePhaseReject
  • ZwCommitComplete
  • ZwCommitEnlistment
  • ZwCreateEnlistment
  • ZwOpenEnlistment
  • ZwPrepareComplete
  • ZwPrepareComplete
  • ZwPrepareEnlistment
  • ZwPrepareEnlistment
  • ZwQueryInformationEnlistment
  • ZwReadOnlyEnlistment
  • ZwRecoverEnlistment
  • ZwRollbackComplete
  • ZwRollbackEnlistment
  • ZwSetInformationEnlistment
  • ZwSinglePhaseReject

资源管理器对象例程

本节包括下列主题:

  • ResourceManagerNotification
  • TmEnableCallbacks
  • TmRecoverResourceManager
  • ZwCreateResourceManager
  • ZwGetNotificationResourceManager
  • ZwOpenResourceManager
  • ZwQueryInformationResourceManager
  • ZwRecoverResourceManager
  • ZwSetInformationResourceManager

安全参考监视器例程

通常,更高级别的驱动程序(尤其是网络驱动程序)调用这些例程。

SeXxx 例程的引用按字母顺序排列。

  • SeAccessCheck
  • SeAssignSecurity
  • SeAssignSecurityEx
  • SeDeassignSecurity
  • SeFreePrivileges
  • SeSinglePrivilegeCheck SeValidSecurityDescriptor

核心内核库支持例程

除视频和 SCSI 微型端口驱动程序和 NDIS 驱动程序之外的所有内核模式驱动程序都可能至少调用一些 KeXxx 例程。

本部分按字母顺序介绍 KeXxx 例程的引用。

有关这些例程功能的概述,请参阅Kernel-Mode支持例程摘要。

以下例程保留供系统使用:

  • KeAcquireSpinLockRaiseToSynch
  • KeBreakinBreakpoint
  • KeEnterKernelDebugger
  • KeFlushWriteBuffer
  • KeGetBugMessageText
  • KeRaiseIrqlToSynchLevel
  • KeRemoveByKeyDeviceQueueIfBusy
  • KeSetTimeUpdateNotifyRoutine

执行库支持例程

本部分介绍执行库支持例程。 这些例程使用 ExXxx 命名约定,按字母顺序列出。

以下执行支持例程保留供系统使用。 请勿在驱动程序中使用它们。

例程所返回的值 Replacement
ExAcquireSpinLock 请改用 KeAcquireSpinLock。
ExAcquireSpinLockAtDpcLevel 请改用 KeAcquireSpinLockAtDpcLevel。
ExfInterlockedDecrementLong 请改用 InterlockedDecrement。
ExfInterlockedExchangeUlong 请改用 InterlockedExchange。
ExfInterlockedIncrementLong 请改用 InterlockedIncrement。
ExfInterlockedPopEntryList 请改用 ExInterlockedPopEntryList。
ExfInterlockedPushEntryList 请改用 ExInterlockedPushEntryList。
ExReleaseSpinLock 请改用 KeReleaseSpinLock。
ExReleaseSpinLockFromDpcLevel 请改用 KeReleaseSpinLockFromDpcLevel。
ExVerifySuite

CLFS 库例程

本部分包含通用日志文件系统 (CLFS) 实现的例程的参考页。 有关 CLFS 管理例程的列表,请参阅 CLFS 管理库例程。 有关 CLFS 的概念性讨论,请参阅本文档的设计指南部分中的通用日志文件系统。 有关 CLFS 文档中使用的关键术语的定义,请参阅 CLFS 术语。

回调函数 说明
ClfsAddLogContainer ClfsAddLogContainer 例程将容器添加到 CLFS 日志。
ClfsAddLogContainerSet ClfsAddLogContainerSet 例程以原子方式将一组容器添加到 CLFS 日志。
ClfsAdvanceLogBase ClfsAdvanceLogBase 例程设置 CLFS 流的基 LSN。
ClfsAlignReservedLog ClfsAlignReservedLog 例程计算必须为指定记录集保留的空间大小。 大小计算包括标头所需的空间和扇区对齐所需的空间。
ClfsAllocReservedLog ClfsAllocReservedLog 例程为一组记录保留封送区域中的空间。
ClfsCloseAndResetLogFile ClfsCloseAndResetLogFile 例程释放对指定日志文件对象的所有引用,并标记其关联的流进行重置。
ClfsCloseLogFileObject ClfsCloseLogFileObject 例程释放对日志文件对象的所有引用。
ClfsCreateLogFile ClfsCreateLogFile 例程创建或打开 CLFS 流。 如有必要,ClfsCreateLogFile 还会创建保存流记录的基础物理日志。
ClfsCreateMarshallingArea ClfsCreateMarshallingArea 例程为 CLFS 流创建封送区域,并返回指向表示新封送区域的不透明上下文的指针。
ClfsCreateScanContext ClfsCreateScanContext 例程创建一个扫描上下文,该上下文可用于循环访问指定 CLFS 日志的容器。
ClfsDeleteLogByPointer ClfsDeleteLogByPointer 例程标记要删除的 CLFS 流。
ClfsDeleteLogFile ClfsDeleteLogFile 例程标记要删除的 CLFS 流。
ClfsDeleteMarshallingArea ClfsDeleteMarshallingArea 例程删除封送区域。
ClfsFlushBuffers ClfsFlushBuffers 例程强制指定封送区域中的所有日志 I/O 块稳定存储。
ClfsFlushToLsn ClfsFlushToLsn 例程强制存储稳定存储,所有 LSN 小于或等于指定 LSN 的记录。
ClfsGetContainerName ClfsGetContainerName 例程返回指定容器的路径名称。
ClfsGetIoStatistics ClfsGetIoStatistics 例程返回指定 CLFS 日志的 I/O 统计信息。
ClfsLsnBlockOffset ClfsLsnBlockOffset 例程返回指定 LSN 中包含的扇区对齐块偏移量。
ClfsLsnContainer ClfsLsnContainer 例程返回指定 LSN 中包含的逻辑容器标识符。
ClfsLsnCreate ClfsLsnCreate 例程在给定容器标识符、块偏移量和记录序列号的情况下, (LSN) 创建日志序列号。
ClfsLsnEqual ClfsLsnEqual 例程确定来自同一流的两个 LSN 是否相等。
ClfsLsnGreater ClfsLsnGreater 例程确定一个 LSN 是否大于另一个 LSN。 这两个 LSN 必须来自同一流。
ClfsLsnLess ClfsLsnLess 例程确定一个 LSN 是否小于另一个 LSN。 这两个 LSN 必须来自同一流。
ClfsLsnNull ClfsLsnNull 例程确定指定的 LSN 是否等于尽可能小的 LSN,CLFS_LSN_NULL。
ClfsLsnRecordSequence ClfsLsnRecordSequence 例程返回指定 LSN 中包含的记录序列号。
ClfsQueryLogFileInformation ClfsQueryLogFileInformation 例程返回指定 CLFS 流或其基础物理日志的元数据和状态信息。
ClfsReadLogRecord ClfsReadLogRecord 例程在 CLFS 流中读取目标记录,并返回一个读取上下文,调用方可用于读取流中前面或关注的记录。
ClfsReadNextLogRecord ClfsReadNextLogRecord 例程读取序列中的下一条记录,相对于读取上下文中的当前记录。
ClfsReadPreviousRestartArea ClfsReadPreviousRestartArea 例程相对于读取上下文中的当前记录读取以前的重启记录。
ClfsReadRestartArea ClfsReadRestartArea 例程读取最近写入到指定 CLFS 流的重启记录。
ClfsRemoveLogContainer ClfsRemoveLogContainer 例程从 CLFS 日志中删除容器。
ClfsRemoveLogContainerSet ClfsRemoveLogContainerSet 例程从 CLFS 日志中原子删除一组容器。
ClfsReserveAndAppendLog ClfsReserveAndAppendLog 例程在封送区域中保留空间,或将记录追加到封送区域,或者同时以原子方式执行。
ClfsReserveAndAppendLogAligned ClfsReserveAndAppendLogAligned 例程在封送区域中保留空间,或将记录追加到封送区或同时以原子方式执行。 记录的数据在指定的边界上对齐。
ClfsScanLogContainers ClfsScanLogContainers 例程检索属于特定 CLFS 日志的容器序列的描述性信息。
ClfsSetArchiveTail ClfsSetArchiveTail 例程将 CLFS 日志的存档尾部设置为指定的 LSN。
ClfsSetEndOfLog ClfsSetEndOfLog 例程截断 CLFS 流。
ClfsSetLogFileInformation ClfsSetLogFileInformation 例程为指定的流及其基础物理日志设置元数据和状态信息。
ClfsTerminateReadLog ClfsTerminateReadLog 例程在释放与上下文关联的资源后,使指定的读取上下文失效。
ClfsWriteRestartArea ClfsWriteRestartArea 例程将新的重启记录追加到 CLFS 流,将重启记录刷新到稳定存储,并选择性地更新流的基 LSN。

IRP

Microsoft Windows 使用 I/O 请求数据包 (IRP) 将消息发送到设备驱动程序。 IRP 是一个数据结构,其中包含用于传达事件状态的特定信息。 有关 IRP 数据结构的详细信息,请参阅 IRP 和 IRP 主要函数代码

驱动程序可以使用System-Supplied驱动程序接口将 IRP 发送到其他驱动程序。

除了标准 IRP 代码之外,还有三种类型的特定技术的 IRP:

本部分介绍驱动程序可以调用的内核模式支持例程:

  • 处理 IRP 时。

  • 为从更高级别的驱动程序到较低驱动程序的请求分配和设置 IRP。

  • 使用文件对象。

处理 IRP

函数 说明
IoGetCurrentIrpStackLocation 返回指向给定 IRP 中调用方 I/O 堆栈位置的指针。
IoGetNextIrpStackLocation 返回指向给定 IRP 中下级驱动程序的 I/O 堆栈位置的指针。
IoCopyCurrentIrpStackLocationToNext 将 IRP 堆栈参数从当前堆栈位置复制到下一个较低驱动程序的堆栈位置,并允许当前驱动程序设置 I/O 完成例程。
IoSkipCurrentIrpStackLocation 将 IRP 堆栈参数从当前堆栈位置复制到下一个较低驱动程序的堆栈位置,并且不允许当前驱动程序设置 I/O 完成例程。
IoGetRelatedDeviceObject 返回指向由给定文件对象表示的设备对象的指针。
IoGetFunctionCodeFromCtlCode 返回给定IOCTL_XXX或FSCTL_XXX代码中的函数字段的值。
IoValidateDeviceIoControlAccess 验证IRP_MJ_DEVICE_CONTROL或IRP_MJ_FILE_SYSTEM_CONTROL IRP 的发送方是否具有指定的访问权限。
IoSetCompletionRoutine 注册 IRP 的驱动程序提供的 IoCompletion 例程,因此,在下一个较低级别的驱动程序以以下一种或多种方式完成请求的操作时调用 IoCompletion 例程:成功、出错或取消 IRP。
IoSetCompletionRoutineEx 与 IoSetCompletionRoutine 相同,除非它保证在 IoCompletion 例程退出之前不会卸载非即插即用驱动程序。
IoCallDriver 将 IRP 发送到较低级别的驱动程序。
PoCallDriver 将具有主要函数代码的 IRP 发送到下一个较低驱动程序IRP_MJ_POWER。
IoForwardIrpSynchronously 同步将 IRP 发送到较低级别的驱动程序。
IoMarkIrpPending 标记给定的 IRP,指示返回STATUS_PENDING,因为其他驱动程序例程或较低级别的驱动程序需要进一步处理。
IoStartPacket 使用给定设备对象的给定 IRP 调用驱动程序的 StartIo 例程,或者在设备队列中插入 IRP(如果设备已忙),指定 IRP 是否可取消。
IoSetStartIoAttributes 设置驱动程序的 StartIo 例程何时执行的属性。
IoAcquireCancelSpinLock 以多处理器安全的方式同步 IRP 的可取消状态转换。
IoSetCancelRoutine 设置或清除 IRP 中的 Cancel 例程。 设置 Cancel 例程会使 IRP 可取消。
IoReleaseCancelSpinLock 当驱动程序更改 IRP 的可取消状态或从驱动程序的 Cancel 例程释放取消旋转锁时释放取消旋转锁。
IoCancelIrp 将 IRP 标记为已取消。
IoReadPartitionTable 返回具有给定扇区大小的磁盘上的分区列表。
IoSetPartitionInformation 设置 (磁盘) 分区的分区类型和数字。
IoWritePartitionTable 为磁盘写入分区表,给定表示磁盘的设备对象、扇区大小和指向包含驱动器几何图形的缓冲区的指针。
IoAllocateErrorLogEntry 分配并初始化错误日志数据包;返回一个指针,以便调用方可以提供错误日志数据,并使用数据包调用 IoWriteErrorLogEntry。
IoWriteErrorLogEntry 将以前分配和填充的错误日志数据包排队到系统错误日志记录线程。
IoIsErrorUserInduced 返回一个布尔值,该值指示 I/O 请求是否由于以下条件之一而失败:STATUS_IO_TIMEOUT、STATUS_DEVICE_NOT_READY、STATUS_UNRECOGNIZED_MEDIA、STATUS_VERIFY_REQUIRED、STATUS_WRONG_VOLUME、STATUS_MEDIA_WRITE_PROTECTED或STATUS_NO_MEDIA_IN_DEVICE。 如果结果为 TRUE,则可移动媒体驱动程序必须在完成 IRP 之前调用 IoSetHardErrorOrVerifyDevice。
IoSetHardErrorOrVerifyDevice 提供由于用户引起的错误导致给定 IRP 失败的设备对象,例如为请求的操作提供不正确的媒体或更改媒体,然后再完成请求的操作。 文件系统驱动程序使用关联的设备对象通知用户,然后用户可以更正错误或重试操作。
IoRaiseHardError 通知用户给定的 IRP 在给定设备对象上为可选的 VPB 失败,以便用户可以更正错误或重试该操作。
IoRaiseInformationalHardError 通知用户错误,提供 I/O 错误状态,以及提供更多信息的可选字符串。
ExRaiseStatus 引发错误状态并导致调用方提供的结构化异常处理程序被调用。 仅适用于提供异常处理程序(尤其是文件系统)的高级驱动程序。
IoStartNextPacket 取消给定设备对象的下一个 IRP 排队,指定 IRP 是否可取消,并调用驱动程序的 StartIo 例程。
IoStartNextPacketByKey 根据指定的排序键值取消设备对象的下一个 IRP,指定 IRP 是否可取消,并调用驱动程序的 StartIo 例程。
IoCompleteRequest 完成 I/O 请求,为原始调用方提供优先级提升,并将给定的 IRP 返回到 I/O 系统以供处置:要么调用高级驱动程序提供的任何 IoCompletion 例程,要么将状态返回到操作的原始请求者。
IoGetCurrentProcess 返回指向当前进程的指针。 仅适用于最高级别驱动程序。
IoGetInitialStack 返回当前线程堆栈的初始基址。 仅适用于最高级别驱动程序。
IoGetRemainingStackSize 返回可用堆栈空间量。 仅适用于最高级别驱动程序。
IoGetStackLimits 返回当前线程堆栈帧的边界。 仅适用于最高级别驱动程序。
IoCsqInitialize 初始化驱动程序取消安全的 IRP 队列的调度表。
IoCsqInsertIrp 将 IRP 插入到驱动程序的取消安全 IRP 队列中。
IoCsqRemoveIrp 从驱动程序的取消安全 IRP 队列中删除指定的 IRP。
IoCsqRemoveNextIrp 从驱动程序的取消安全 IRP 队列中删除下一个 IRP。

Driver-Allocated IRP

函数 说明
oBuildAsynchronousFsdRequest 分配并设置一个 IRP,该 IRP 指定主要函数代码 (IRP_MJ_PNP、IRP_MJ_READ、IRP_MJ_WRITE、IRP_MJ_SHUTDOWN或IRP_MJ_FLUSH_BUFFERS) ,其中包含指向:应在其中执行 I/O 的较低驱动程序的设备对象。 包含要读取的数据或包含要写入的数据的缓冲区。 缓冲区的长度(以字节为单位)。 媒体上的起始偏移量。 调用的驱动程序可以返回状态信息的 I/O 状态块,调用方 IoCompletion 例程可以访问它。 返回指向 IRP 的指针,以便调用方可以设置任何必要的次要函数代码,并在将 IRP 发送到目标驱动程序之前设置其 IoCompletion 例程。
IoBuildSynchronousFsdRequest 分配并设置一个 IRP,指定主要函数代码 (IRP_MJ_PNP、IRP_MJ_READ、IRP_MJ_WRITE、IRP_MJ_SHUTDOWN或IRP_MJ_FLUSH_BUFFERS) 指针指向:应在其中执行 I/O 的较低驱动程序的设备对象。 包含要读取的数据或包含要写入的数据的缓冲区。 缓冲区的长度(以字节为单位)。 媒体上的起始偏移量。 在请求的操作完成时,要设置为 Signaled 状态的事件对象。 调用的驱动程序可以返回状态信息的 I/O 状态块,调用方 IoCompletion 例程可以访问它。 返回指向 IRP 的指针,以便调用方可以设置任何必要的次要函数代码,并在将 IRP 发送到目标驱动程序之前设置其 IoCompletion 例程。
IoBuildDeviceIoControlRequest 分配和设置一个 IRP,指定主要函数代码 (IRP_MJ_INTERNAL_DEVICE_CONTROL或具有可选输入或输出缓冲区IRP_MJ_DEVICE_CONTROL) ;指向下部驱动程序设备对象的指针;当请求的操作完成时,要设置为 Signaled 状态的事件;以及要由接收 IRP 的驱动程序设置的 I/O 状态块。 返回指向 IRP 的指针,以便调用方可以在将 IRP 发送到下一级驱动程序之前设置相应的IOCTL_XXX。
PoRequestPowerIrp 使用主要函数代码IRP_MJ_POWER分配和初始化 IRP,然后将 IRP 发送到指定设备对象的设备堆栈中的顶级驱动程序。
IoSizeOfIrp 返回具有给定 I/O 堆栈位置计数的 IRP 所需的大小(以字节为单位)。
IoAllocateIrp 为调用方分配 I/O 堆栈位置数 ((可选)为调用方分配 I/O 堆栈位置数,但调用方) 下分层的每个驱动程序至少分配一个 I/O 堆栈位置,以及是否针对调用方收取配额。 如果成功,则返回指向非分页系统空间中的 IRP 的指针;否则返回 NULL。
IoInitializeIrp 初始化 IRP,给定指向已分配的 IRP 的指针、其长度(以字节为单位)及其 I/O 堆栈位置数。
IoSetNextIrpStackLocation 将当前 IRP 堆栈位置设置为 IRP 中的调用方位置。 堆栈位置必须由前面对 IoAllocateIrp 的调用分配,该调用指定了足够大的堆栈大小参数,以便为调用方提供自己的堆栈位置。
IoAllocateMdl 分配足够大的 MDL 来映射调用方提供的起始地址和长度;(可选)将 MDL 与给定 IRP 相关联。
IoBuildPartialMdl 为指定的起始虚拟地址和给定源 MDL 中的长度(以字节为单位)生成 MDL。 将大型传输请求拆分为多个较小的传输的驱动程序可以调用此例程。
IoFreeMdl 释放调用方分配的给定 MDL。
IoMakeAssociatedIrp 分配并初始化要与发送到最高级别驱动程序的主 IRP 关联的 IRP,使驱动程序能够“拆分”原始请求,并将关联的 IRP 发送到较低级别的驱动程序或设备。
IoSetCompletionRoutine 向给定 IRP 注册驱动程序提供的 IoCompletion 例程,以便在较低级别的驱动程序完成请求时调用 IoCompletion 例程。 IoCompletion 例程允许调用方释放使用 IoAllocateIrp 或 IoBuildAsynchronousFsdRequest 分配的 IRP;释放它分配的任何其他资源,以便为较低驱动程序设置 IRP;并执行所需的任何 I/O 完成处理。
IoSetCompletionRoutineEx 与 IoSetCompletionRoutine 相同,除非它保证在 IoCompletion 例程退出之前不会卸载非即插即用驱动程序。
IoCallDriver 将 IRP 发送到较低级别的驱动程序。
IoFreeIrp 释放调用方分配的 IRP。
IoReuseIrp 重新初始化以重复使用以前由 IoAllocateIrp 分配的 IRP。

文件对象

函数 说明
InitializeObjectAttributes 初始化类型为 OBJECT_ATTRIBUTES 的参数,以便对 ZwCreateXxx 或 ZwOpenXxx 例程进行后续调用。
ZwCreateFile 创建或打开表示物理、逻辑或虚拟设备、目录、数据文件或卷的文件对象。
ZwQueryInformationFile 返回有关打开文件的状态或属性的信息。
IoGetFileObjectGenericMapping 返回有关通用访问权限与文件对象特定访问权限之间的映射的信息。
ZwReadFile 从打开的文件返回数据。
ZwSetInformationFile 更改有关打开文件的状态或属性的信息。
ZwWriteFile 将数据传输到打开的文件。
ZwClose 释放打开对象的句柄,导致句柄变得无效并递减对象句柄的引用计数。

接收器 DDI

本部分介绍接收器 DDI。 这些 DIS 使内核组件能够了解在计算机上创建和销毁的服务器接收器。 组件注册以接收这些事件的通知,并选择性地存储与每个接收器关联的状态。

上下文管理

这些 DDI 提供在接收器对象上分配和检索上下文结构的功能。 这样,驱动程序就可以为每个接收器附加每个接收器的信息。

  • PsAllocSiloContextSlot
  • PsFreeSiloContextSlot
  • PsCreateSiloContext
  • PsInsertSiloContext
  • PsReplaceSiloContext
  • PsInsertPermanentSiloContext
  • PsGetPermanentSiloContext
  • PsMakeSiloContextPermanent
  • PsGetSiloContext
  • PsRemoveSiloContext
  • PsReferenceSiloContext
  • PsDereferenceSiloContext
  • SILO_CONTEXT_CLEANUP_CALLBACK

线程

这些 DDI 提供为当前线程设置和检索接收器的功能。

  • PsAttachSiloToCurrentThread
  • PsDetachSiloFromCurrentThread
  • PsGetCurrentSilo
  • PsGetCurrentServerSilo

监视

这些 DIS 使驱动程序能够接收有关孤岛创建和终止事件的通知。

  • PsRegisterSiloMonitor
  • PsUnregisterSiloMonitor
  • PsStartSiloMonitor
  • PsGetSiloMonitorContextSlot
  • SILO_MONITOR_CREATE_CALLBACK
  • SILO_MONITOR_TERMINATE_CALLBACK

帮助程序

这些 DDI 有助于处理孤岛对象。

  • PsGetJobSilo
  • PsGetJobServerSilo
  • PsGetEffectiveServerSilo
  • PsIsHostSilo
  • PsGetHostSilo
  • PsTerminateServerSilo

Synchronization

本部分介绍驱动程序可以调用的内核模式支持例程:

  • (驱动程序例程和 I/O 对象) 同步其自己的标准驱动程序例程的执行。
  • 临时更改当前 IRQL 以调用支持例程,或者返回当前 IRQL (IRQL) 。
  • 使用旋转锁同步对资源的访问,或者在没有旋转锁的情况下执行互锁操作, (旋转锁和互锁) 。
  • 管理超时或确定系统时间 (计时器) 。
  • 使用系统线程或管理非比特线程上下文中的同步, (驱动程序线程、调度程序对象和资源) 。

驱动程序例程和 I/O 对象

函数 说明
KeSynchronizeExecution 在给定指向中断对象的指针的情况下,将驱动程序提供的 SynchCritSection 例程的执行与与一组中断对象关联的 ISR 执行同步。
IoRequestDpc 将驱动程序提供的 DpcForIsr 例程排队,以在较低的 IRQL 处完成中断驱动的 I/O 处理。
KeInsertQueueDpc 在处理器 IRQL 低于 DISPATCH_LEVEL 时,立即对要执行的 DPC 进行排队;如果 DPC 对象已排队,则返回 FALSE。
KeRemoveQueueDpc 从 DPC 队列中删除给定的 DPC 对象;如果对象不在队列中,则返回 FALSE。
KeSetImportanceDpc 控制特定 DPC 的排队方式,在某种程度上控制运行 DPC 例程的运行方式。
KeSetTargetProcessorDpc 控制随后将排队处理特定 DPC 的处理器。
KeFlushQueuedDpcs 调用此例程,等待所有排队的 DPC 执行。
AllocateAdapterChannel 将设备对象连接到适配器对象,并调用驱动程序提供的 AdapterControl 例程,以便通过系统 DMA 控制器或总线主适配器执行 I/O 操作,只要适当的 DMA 通道和任何必要的映射寄存器都可用。 (此例程保留对 DMA 通道的独占访问权限,并映射指定 device.)
FreeAdapterChannel 释放适配器对象,表示系统 DMA 通道,并根据需要释放映射寄存器(如果有)。
FreeMapRegisters 释放一组从调用 AllocateAdapterChannel 保存的映射寄存器,该寄存器由 IoMapTransfer 使用并且总线主 DMA 传输完成。
IoAllocateController 将设备对象连接到控制器对象,并调用驱动程序提供的 ControllerControl 例程,在控制器不忙后立即在设备控制器上执行 I/O 操作。 (此例程保留对指定设备的硬件控制器的独占访问权限。)
IoFreeController 释放控制器对象,前提是所有排队到当前 IRP 控制器的设备操作都已完成。
IoStartTimer 为给定设备对象启用计时器,并在之后每秒调用驱动程序提供的 IoTimer 例程一次。
IoStopTimer 禁用给定设备对象的计时器,以便除非驱动程序重新启用计时器,否则不会调用驱动程序提供的 IoTimer 例程。
KeSetTimer 设置计时器对象将设置为信号状态的绝对或相对间隔,并选择性地提供在间隔过期后要执行的计时器 DPC。
KeSetTimerEx 设置计时器对象将设置为信号状态的绝对或相对间隔,可以选择提供在间隔到期时要执行的计时器 DPC,并选择性地为计时器提供定期间隔。
KeCancelTimer 在传递给 KeSetTimer 的时间间隔过期之前取消计时器对象;取消计时器 DPC 的排队,如果已设置计时器间隔,则过期。
KeReadStateTimer 返回给定计时器对象是否设置为信号状态。
IoStartPacket 使用给定设备对象的给定 IRP 调用驱动程序的 StartIo 例程,或者在设备队列中插入 IRP(如果设备已忙),指定 IRP 是否可取消。
IoStartNextPacket 取消给定设备对象的下一个 IRP 排队,指定 IRP 是否可取消,并调用驱动程序的 StartIo 例程。
IoStartNextPacketByKey 根据给定设备对象的指定排序键值取消排队下一个 IRP。 指定 IRP 是否可取消并调用驱动程序的 StartIo 例程。
IoSetCompletionRoutine 使用给定的 IRP 注册驱动程序提供的 IoCompletion 例程,以便在下一级驱动程序以以下一种或多种方式完成请求的操作时调用 IoCompletion 例程:成功、出错或取消 IRP。
IoSetCompletionRoutineEx 与 IoSetCompletionRoutine 相同,除非它保证在 IoCompletion 例程退出之前不会卸载非即插即用驱动程序。
IoSetCancelRoutine 设置或清除 IRP 中的 Cancel 例程。 设置 Cancel 例程会使 IRP 可取消。
KeStallExecutionProcessor 停止调用方 (设备驱动程序) 当前处理器的给定时间间隔。
ExAcquireResourceExclusiveLite 通过调用线程获取初始化的资源以独占访问,并选择性地等待获取资源。
ExAcquireResourceSharedLite 通过调用线程获取已初始化的资源以供共享访问,并选择性地等待获取资源。
ExAcquireSharedStarveExclusive 获取给定资源以供共享访问,而无需等待任何挂起尝试获取对同一资源的独占访问。
ExAcquireSharedWaitForExclusive 获取用于共享访问的给定资源,可以选择等待任何挂起的排他服务员先获取和释放资源。
ExReleaseResourceForThreadLite 释放给定线程获取的给定资源。
ZwReadFile 从打开的文件读取数据。 如果调用方打开了具有特定参数的文件对象,则调用方可以等待返回文件句柄以完成 I/O。
ZwWriteFile 将数据写入打开的文件。 如果调用方打开了具有特定参数的文件对象,则调用方可以等待返回文件句柄以完成 I/O。

IRQL

函数 说明
KeRaiseIrql 将硬件优先级提升到给定 IRQL 值,从而屏蔽当前处理器上等效或较低 IRQL 的中断。
KeRaiseIrqlToDpcLevel 将硬件优先级缩小到 IRQL DISPATCH_LEVEL,从而屏蔽当前处理器上等效或较低 IRQL 的中断。
KeLowerIrql 将当前处理器上的 IRQL 还原到其原始值。
KeGetCurrentIrql 返回当前硬件优先级 IRQL 值。

旋转锁和互锁

函数 说明
IoAcquireCancelSpinLock 以多处理器安全的方式同步 IRP 的可取消状态转换。
IoSetCancelRoutine 在可取消状态转换期间设置或清除 IRP 中的 Cancel 例程。 设置 Cancel 例程会使 IRP 可取消。
IoReleaseCancelSpinLock 当驱动程序更改 IRP 的可取消状态或从驱动程序的 Cancel 例程释放取消旋转锁时释放取消旋转锁。
KeInitializeSpinLock 初始化KSPIN_LOCK类型的变量,用于同步对非 ISR 例程之间共享的数据的访问。 初始化的旋转锁也是 ExInterlockedXxx 例程的必需参数。
KeAcquireSpinLock 获取旋转锁,以便调用方可以在多处理器平台上安全地同步对共享数据的访问。
KeAcquireSpinLockRaiseToDpc 获取旋转锁,以便调用方可以在多处理器平台上安全地同步对共享数据的访问。
KeReleaseSpinLock 释放通过调用 KeAcquireSpinLock 获取的旋转锁,并还原调用方正在运行的原始 IRQL。
KeAcquireSpinLockAtDpcLevel 获取旋转锁,前提是调用方已在 IRQL DISPATCH_LEVEL运行。
KeTryToAcquireSpinLockAtDpcLevel 获取尚未保留的旋转锁,前提是调用方已在 IRQL DISPATCH_LEVEL上运行。
KeReleaseSpinLockFromDpcLevel 释放通过调用 KeAcquireSpinLockAtDpcLevel 获取的旋转锁。
KeAcquireInStackQueuedSpinLock 获取排队的旋转锁,以便调用方可以在多处理器平台上安全地同步对共享数据的访问。
KeReleaseInStackQueuedSpinLock 释放通过调用 KeAcquireInStackQueuedSpinLock 获取的排队旋转锁。
KeAcquireInStackQueuedSpinLockAtDpcLevel 获取排队的旋转锁,前提是调用方已在 IRQL DISPATCH_LEVEL运行。
KeReleaseInStackQueuedSpinLockFromDpcLevel 释放通过调用 KeAcquireInStackQueuedSpinLockAtDpcLevel 获取的排队旋转锁。
KeAcquireInterruptSpinLock 获取与中断的 ISR 同步访问的旋转锁。
KeReleaseInterruptSpinLock 释放与中断的 ISR 同步访问的旋转锁。
ExInterlockedXxxList 在驱动程序托管的内部队列中插入和删除 IRP,该队列受驱动程序为其提供存储的初始化旋转锁的保护。
KeXxxDeviceQueue 在驱动程序分配和管理的内部设备队列对象中插入和删除 IRP,该对象受内置旋转锁的保护。
ExInterlockedAddUlong 使用旋转锁将 ULONG 类型的变量添加一个值作为原子操作,以确保对变量的多处理器安全访问;返回调用发生前变量的值。
ExInterlockedAddLargeInteger 使用旋转锁将LARGE_INTEGER类型的变量添加一个值作为原子操作,以确保对变量的多处理器安全访问;返回调用发生前变量的值。
InterlockedIncrement 将 LONG 类型的变量递增为原子操作。 返回值的符号是操作结果的符号。
InterlockedDecrement 将 LONG 类型的变量递减为原子操作。 返回值的符号是操作结果的符号。
InterlockedExchange 将 LONG 类型的变量设置为指定值作为原子操作;返回调用发生前变量的值。
InterlockedExchangeAdd 将值作为原子运算添加到给定整数变量;返回调用发生前变量的值。
InterlockedCompareExchange 比较两个指针引用的值。 如果值相等,则将其中一个值重置为原子操作中调用方提供的值。
InterlockedCompareExchangePointer 比较两个指针引用的指针。 如果指针值相等,则将其中一个值重置为原子操作中调用方提供的值。
ExInterlockedCompareExchange64 将一个整数变量与另一个整数变量进行比较,如果它们相等,请将第一个变量重置为调用方提供的 ULONGLONG 类型的值作为原子操作。
KeGetCurrentProcessorNumber 在 SMP 计算机中调试旋转锁使用情况时返回当前处理器编号。

计时器

函数 说明
oInitializeTimer 将计时器与给定的设备对象相关联,并为设备对象注册驱动程序提供的 IoTimer 例程。
IoStartTimer 为给定设备对象启用计时器,并每秒调用驱动程序提供的 IoTimer 例程一次。
IoStopTimer 禁用给定设备对象的计时器,因此除非驱动程序可重新启用计时器,否则不会调用驱动程序提供的 IoTimer 例程。
KeInitializeDpc 初始化 DPC 对象并设置可以使用给定上下文调用的驱动程序提供的 CustomTimerDpc 例程。
KeInitializeTimer 将通知计时器对象初始化为Not-Signaled状态。
KeInitializeTimerEx 将通知或同步计时器对象初始化为Not-Signaled状态。
KeSetTimer 设置计时器对象将设置为信号状态的绝对或相对间隔;(可选)提供在间隔到期时要执行的计时器 DPC。
KeSetTimerEx 设置计时器对象将设置为信号状态的绝对或相对间隔;(可选)提供在间隔过期时要执行的计时器 DPC;(可选)为计时器提供定期间隔。
KeCancelTimer 在传递给 KeSetTimer 的时间间隔过期之前取消计时器对象;取消计时器 DPC 的排队,如果已设置计时器间隔,则过期。
KeReadStateTimer 如果给定计时器对象设置为信号状态,则返回 TRUE。
KeQuerySystemTime 返回当前系统时间。
KeQueryRuntimeThread 返回累积的内核模式和用户模式运行时。
KeQueryTickCount 返回自系统启动以来发生的间隔计时器中断数。
KeQueryTimeIncrement 返回在每个间隔计时器中断时添加到系统时间的 100 纳秒单位数。
KeQueryInterruptTime 以 100 纳秒为单位返回系统中断时间计数的当前值,精度达到系统时钟周期内。
KeQueryInterruptTimePrecise 以 100 纳秒为单位返回系统中断时间计数的当前值,精度为微秒内。
KeQueryPerformanceCounter 返回赫茨中的系统性能计数器值。

驱动程序线程、调度程序对象和资源

函数 说明
KeDelayExecutionThread 将当前线程置于给定间隔的可警报或不可操作的等待状态。
ExInitializeResourceLite 初始化调用方为其提供存储的资源,供一组线程 (共享读取器、独占编写器) 用于同步。
ExReinitializeResourceLite 重新初始化现有资源变量。
ExAcquireResourceExclusiveLite 获取由调用线程进行独占访问的初始化资源,并选择性地等待获取资源。
ExAcquireResourceSharedLite 获取由调用线程进行共享访问的初始化资源,并选择性地等待获取资源。
ExAcquireSharedStarveExclusive 获取用于共享访问的给定资源,而无需等待任何挂起尝试获取对同一资源的独占访问权限。
ExAcquireSharedWaitForExclusive 获取用于共享访问的给定资源,可以选择等待任何挂起的独占服务员先获取和释放资源。
ExIsResourceAcquiredExclusiveLite 返回调用线程是否具有对给定资源的独占访问权限。
ExIsResourceAcquiredSharedLite 返回调用线程获取对给定资源的共享访问权限的次数。
ExGetExclusiveWaiterCount 返回当前正在等待获取给定资源以供独占访问的线程数。
ExGetSharedWaiterCount 返回当前等待获取给定资源以供共享访问的线程数。
ExConvertExclusiveToSharedLite 将给定资源从获取的资源转换为为共享访问获取的独占访问权限。
ExGetCurrentResourceThread 返回当前线程的线程 ID。
ExReleaseResourceForThreadLite 释放给定线程获取的给定资源。
ExDeleteResourceLite 从系统的资源列表中删除调用方初始化的资源。
IoQueueWorkItem 对已初始化的工作队列项进行排队,以便在给定系统工作线程控制时调用驱动程序提供的例程。
KeSetTimer 设置计时器对象将设置为信号状态的绝对或相对间隔,并选择性地提供在间隔到期时要执行的计时器 DPC。
KeSetTimerEx 设置计时器对象将设置为 Signaled 状态的绝对或相对间隔。 (可选)提供计时器 DPC,以便在时间间隔过期时执行,以及计时器的定期间隔。
KeCancelTimer 在传递给 KeSetTimer 的间隔过期之前取消计时器对象。 如果任何) 过期,在计时器间隔前取消计时器 DPC 的排队 (。
KeReadStateTimer 如果给定的计时器对象设置为 Signaled 状态,则返回 TRUE。
KeSetEvent 返回给定事件对象的上一状态,并将事件 ((如果尚未信号) )设置为 Signaled 状态。
KeClearEvent 将事件重置为Not-Signaled状态。
KeResetEvent 返回事件对象的上一个状态,并将事件重置为Not-Signaled状态。
KeReadStateEvent 返回给定事件对象的“未信号”) 的当前状态 (非零。
ExAcquireFastMutex 获取初始化的快速互斥体,可能是在将调用方置于等待状态后,直到获取它,并在禁用了 APC 的情况下为调用线程所有权提供。
ExTryToAcquireFastMutex 为禁用 APC 的调用方立即获取给定的快速互斥体,或返回 FALSE。
ExReleaseFastMutex 释放使用 ExAcquireFastMutex 或 ExTryToAcquireFastMutex 获取的快速互斥体的所有权。
ExAcquireFastMutexUnsafe 获取初始化的快速互斥体,可能是在将调用方置于等待状态后,直到获取它。
ExReleaseFastMutexUnsafe 释放使用 ExAcquireFastMutexUnsafe 收购的快速互斥体所有权。
KeReleaseMutex 释放给定的 mutex 对象,指定调用方在 KeReleaseMutex 返回前一个值 mutex 状态 (Signaled 的零时是否将调用 KeWaitXxx 例程之一:否则,未发出信号) 。
KeReadStateMutex 返回给定互斥体对象的 Not-Signaled) 的当前状态 (一个。
KeReleaseSemaphore 释放给定信号灯对象。 如果发布将信号灯设置为 Signaled 状态,则为等待线程提供 (运行时) 优先级提升。 按给定值扩充信号灯计数,并指定调用方在 KeReleaseSemaphore 返回后是否立即调用 KeWaitXxx 例程之一。
KeReadStateSemaphore 返回给定信号灯对象的信号) 的当前状态 (Not-Signaled零或正值。
KeWaitForSingleObject 将当前线程置于可警报或不可变的等待状态,直到给定调度程序对象设置为 Signaled 状态,或者可以选择 () 等待超时。
KeWaitForMutexObject 将当前线程置于可警报或不可变的等待状态,直到给定的互斥表达式设置为信号状态或 (可以选择) ,直到等待超时。
KeWaitForMultipleObjects 将当前线程置于可警报或不可变的等待状态,直到任何一个或多个调度程序对象都设置为信号状态,或者可以选择 () ,直到等待超时。
PsGetCurrentThread 返回指向当前线程的指针。
KeGetCurrentThread 返回一个指针,该指针指向表示当前线程的不透明线程对象。
IoGetCurrentProcess 返回指向当前线程的进程的指针。
PsGetCurrentProcess 返回指向当前线程的进程的指针。
KeEnterCriticalRegion 在请求当前 I/O 操作的用户模式线程的上下文中,临时禁用正常内核 APC 的传递。 仍然提供特殊的内核模式 APC。
KeLeaveCriticalRegion 尽快重新启用通过对 KeEnterCriticalRegion 的调用禁用的正常内核模式 APC。
KeAreApcsDisabled 如果禁用正常内核模式 APC,则返回 TRUE。
KeSaveFloatingPointState 保存当前线程的非易失浮点上下文,以便调用方可以执行自己的浮点操作。
KeRestoreFloatingPointState 还原使用 KeSaveFloatingPointState 保存的上一个非易失性浮点上下文。
ZwSetInformationThread 设置调用方具有句柄的给定线程的优先级。
PsGetCurrentProcessId 返回当前进程的系统分配标识符。
PsGetCurrentThreadId 返回当前线程的系统分配标识符。
PsSetCreateProcessNotifyRoutine 注册一个最高级别的驱动程序回调例程,每当创建新进程或删除现有进程时,该例程随后将执行该例程。
PsSetCreateThreadNotifyRoutine 注册一个最高级别的驱动程序回调例程,每当创建新线程或删除现有线程时,该例程随后将执行该例程。
PsSetLoadImageNotifyRoutine 为最高级别的系统分析驱动程序注册回调例程。 每当加载新映像以执行时,将执行回调例程。

内存分配和缓冲区管理

本部分介绍内核模式驱动程序调用以分配内存和管理 I/O 缓冲区的 Windows 内核例程和宏。

Windows 内存管理器提供内核模式驱动程序用于分配和管理内存的一组例程。 这些例程的名称以前缀 Mm 开头。

本部分包含 MmXxx 例程和内存管理宏的参考页。 这些引用页按字母顺序列出。

有关这些例程和宏的功能概述,请参阅内存分配和缓冲区管理。 有关内核模式驱动程序的内存管理支持简介,请参阅 Windows 驱动程序的内存管理。

以下例程保留供系统使用。 请勿在驱动程序中使用它们。

  • MmAddPhysicalMemory
  • MmAddPhysicalMemoryEx
  • MmAddVerifierThunks
  • MmCreateMirror
  • MmGetMdlBaseVa
  • MmGetPhysicalMemoryRanges
  • MmGetProcedureAddress
  • MmGetVirtualForPhysical
  • MmIsVerifierEnabled
  • MmIsIoSpaceActive
  • MmMapUserAddressesToPage
  • MmMapVideoDisplay
  • MmMapVideoDisplayEx
  • MmMapViewInSessionSpace
  • MmMapViewInSystemSpace
  • MmMarkPhysicalMemoryAsBad
  • MmMarkPhysicalMemoryAsGood
  • MmProbeAndLockProcessPages
  • MmRemovePhysicalMemory
  • MmRemovePhysicalMemoryEx
  • MmRotatePhysicalView
  • MmUnmapVideoDisplay
  • MmUnmapViewInSessionSpace
  • MmUnmapViewInSystemSpace

有关内存分配和缓冲区管理的详细信息,请参阅适用于 Windows 驱动程序的内存管理。

缓冲区管理

短期缓冲区管理例程由内核模式驱动程序调用,以分配和释放临时缓冲区。

函数 说明
ExAllocatePoolWithTag 从分页或非分页系统空间分配 ((可选)缓存对齐) 池内存。 调用方提供的标记将放入发生内存的任何故障转储中。
ExAllocatePoolWithQuotaTag 分配池内存,针对 I/O 操作的原始请求者收取配额。 调用方提供的标记将放入发生内存的任何故障转储中。 只有最高级别的驱动程序才能调用此例程。
ExFreePool 将内存释放到分页系统空间或非分页系统空间。
ExFreePoolWithTag 释放具有指定池标记的内存。
ExInitializeNPagedLookasideList 初始化非分页内存的外观列表。 成功初始化列表后,可以分配固定大小的块并将其释放到外观列表。
ExAllocateFromNPagedLookasideList 从非分页内存中的指定外观列表中删除第一个条目。 如果 lookaside 列表为空,则从非分页池分配一个条目。
ExFreeToNPagedLookasideList 返回非分页内存中指定外观列表的条目。 如果列表已达到其最大大小,则返回非分页池的条目。
ExDeleteNPagedLookasideList 删除非分页的 lookaside 列表。
ExInitializePagedLookasideList 初始化分页内存的查看列表。 成功初始化列表后,可以分配固定大小的块并将其释放到 lookaside 列表。
ExAllocateFromPagedLookasideList 从分页内存中的指定外观列表中删除第一个条目。 如果 lookaside 列表为空,请从分页池分配一个条目。
ExFreeToPagedLookasideList 返回分页内存中指定外观列表的条目。 如果列表已达到其最大大小,则返回分页池的条目。
ExDeletePagedLookasideList 删除分页的查找列表。
MmQuerySystemsize 返回当前平台上可用内存量的估计值 (小、中或大) 。
MmIsThisAnNtAsSystem 如果计算机作为服务器运行,则返回 TRUE。 如果此例程返回 TRUE,则调用方可能需要更多资源来处理 I/O 请求,并且计算机是服务器,因此可能有更多的资源可用。

Long-Term内部驱动程序缓冲区

长期缓冲区管理例程由内核模式驱动程序调用,以分配长期驱动程序内部缓冲区。

函数 说明
MmAllocateContiguousMemory 在非分页池中分配物理上连续的缓存对齐内存范围。
MmFreeContiguousMemory 在驱动程序卸载时释放一系列物理连续内存。
MmAllocateNonCachedMemory 在非分页系统空间 (池) 分配非缓存和缓存对齐内存的虚拟地址范围。
MmFreeNonCachedMemory 在驱动程序卸载时,在非分页系统空间中释放非缓存内存的虚拟地址范围。
MmAllocateMappingAddress 保留一系列虚拟地址空间,以后可以使用 MmMapLockedPagesWithReservedMapping 进行映射。
MmFreeMappingAddress 释放 MmAllocateMappingAddress 保留的保留内存地址。
AllocateCommonBuffer 分配和映射同时从处理器和设备访问的逻辑连续内存区域,给定对适配器对象的访问、要分配的内存区域的请求长度,以及返回分配区域的起始逻辑地址和虚拟地址的变量的访问权限。 如果分配了请求的长度,则返回 TRUE。 可用于连续总线主 DMA,也可以使用系统 DMA 控制器的自动初始化模式对系统 DMA 使用系统 DMA。
FreeCommonBuffer 释放分配的通用缓冲区并取消映射,给定对适配器对象的访问、长度以及驱动程序卸载时释放区域的起始逻辑和虚拟地址。 参数必须与在对 AllocateCommonBuffer 的调用中传递的参数匹配。

缓冲数据和缓冲区初始化

缓冲数据和缓冲区初始化例程由内核模式驱动程序调用,用于管理缓冲数据或初始化驱动程序分配的缓冲区。

函数 说明
RtlCompareMemory 比较数据,给定指向调用方提供的缓冲区的指针以及比较的长度(以字节为单位)。 返回相等的字节数。
RtlCopyMemory 将数据从一个调用方提供的缓冲区复制到另一个缓冲区,给定指向缓冲区的指针以及要复制的长度(以字节为单位)。
RtlMoveMemory 将数据从一个调用方提供的内存范围复制到另一个,给定指向两个范围的基数和要复制的长度(以字节为单位)的指针。
RtlFillMemory 使用指定的 UCHAR 值填充调用方提供的缓冲区,给定指向缓冲区的指针以及要填充的长度(以字节为单位)。
RtlZeroMemory 使用零填充缓冲区,给定指向调用方提供的缓冲区的指针以及要填充的长度(以字节为单位)。
RtlStoreUshort 将 USHORT 值存储在给定地址,避免对齐错误。
RtlRetrieveUshort 检索位于给定地址的 USHORT 值,避免对齐错误,并将该值存储在假定对齐的给定地址。
RtlStoreUlong 将 ULONG 值存储在给定地址,避免对齐错误。
RtlRetrieveUlong 检索给定地址处的 ULONG 值,避免对齐错误,并将该值存储在假定为对齐的给定地址。

地址映射和 MDL

地址映射和 MDL 管理例程由内核模式驱动程序调用,用于管理地址映射和内存描述符列表 (MDL) 。

函数 说明
oAllocateMdl 分配足够大的 MDL 来映射调用方提供的起始地址和长度;(可选)将 MDL 与给定的 IRP 相关联。
IoBuildPartialMdl 为指定的起始虚拟地址和给定源 MDL 中的长度(以字节为单位)生成 MDL。 将大型传输请求拆分为多个较小的传输的驱动程序可以调用此例程。
IoFreeMdl 释放由调用方分配的给定 MDL。
MmAllocatePagesForMdlEx 为 MDL 分配非分页的物理内存页。
MmBuildMdlForNonPagedPool 填写给定 MDL 的相应物理地址,该地址指定非分页池中的一系列虚拟地址。
MmCreateMdl 已过时。 分配和初始化描述给定虚拟地址指定的缓冲区的 MDL 和长度(以字节为单位);返回指向 MDL 的指针。
MmGetMdlByteCount 返回由给定 MDL 映射的缓冲区的长度(以字节为单位)。
MmGetMdlByteOffset 返回给定 MDL 描述的缓冲区页中的字节偏移量。
MmGetMdlVirtualAddress 返回给定 MDL 描述的缓冲区的 (可能无效) 虚拟地址;返回的地址(用作 MDL 中物理地址条目的索引)可以为使用 DMA 的驱动程序的 MapTransfer 输入。
MmGetPhysicalAddress 返回给定有效虚拟地址的相应物理地址。
MmGetSystemAddressForMdlSafe 返回一个系统空间虚拟地址,用于映射给定 MDL 描述的物理页面,其设备必须使用编程的 I/O (PIO) 。 如果没有虚拟地址,则会分配一个。
MmInitializeMdl 初始化调用方创建的 MDL,以描述由给定虚拟地址指定的缓冲区和长度(以字节为单位)。
MmIsAddressValid 返回在给定虚拟地址执行读取或写入操作时是否会发生页面错误。
MmMapIoSpace 将物理地址范围映射到非分页系统空间中缓存的或未缓存的虚拟地址范围。
MmMapLockedPages 已过时。 将已锁定的物理页面(由给定 MDL 描述)映射到返回的虚拟地址范围。
MmMapLockedPagesWithReservedMapping 使用 MmAllocateMappingAddress 映射已保留的虚拟地址范围。
MmPrepareMdlForReuse 重新初始化调用方创建的 MDL 以重复使用。
MmProbeAndLockPages 探测 MDL 中指定的特定访问页,使页面驻留并在内存中锁定它们:返回使用相应物理地址更新的 MDL。 (通常,只有最高级别的驱动程序调用此例程。)
MmProtectMdlSystemAddress 设置内存地址范围的保护类型。
MmSecureVirtualMemory 保护内存地址范围,以便无法释放内存地址范围,并且无法限制其页面保护。
MmsizeOfMdl 返回描述给定虚拟地址指定的缓冲区的 MDL 所需的字节数,以及长度(以字节为单位)。
MmUnlockPages 解锁在 MDL 中指定的以前探测和锁定的页面。
MmUnmapIoSpace 从物理地址范围取消映射虚拟地址范围。
MmUnmapLockedPages 释放 MmMapLockedPages 设置的映射。
MmUnmapReservedMapping 取消映射 MmMapLockedPagesWithReservedMapping 映射的虚拟地址范围。
MmUnsecureVirtualMemory 不安全由 MmSecureVirtualMemory 保护的内存地址范围。

缓冲区和 MDL 管理

缓冲区和 MDL 管理宏由内核模式驱动程序调用,用于管理缓冲区和内存描述符列表 (MDL) 。

有关 MDL 的详细信息,请参阅使用 MDL

函数 说明
ADDRESS_AND_SIZE_TO_SPAN_PAGES 返回包含给定虚拟地址和大小(以字节为单位)所需的页数。
BYTE_OFFSET 返回页面中给定虚拟地址的字节偏移量。
BYTES_TO_PAGES 返回包含给定字节数所需的页数。
PAGE_ALIGN 返回包含给定虚拟地址的页面的页对齐虚拟地址。
ROUND_TO_PAGES 将给定大小(以字节为单位)舍入到页大小的倍数。

设备内存访问

设备内存访问宏由内核模式驱动程序调用,用于访问各自设备的内存映射硬件寄存器和 I/O 端口。

对于以下宏,XXX_REGISTER_XXX指示映射到系统内存地址空间的设备内存,而XXX_PORT_XXX指示 I/O 端口地址空间中的设备内存。

函数 说明
EAD_PORT_UCHAR 从给定的 I/O 端口地址读取 UCHAR 值。
READ_PORT_USHORT 从给定的 I/O 端口地址读取 USHORT 值。
READ_PORT_ULONG 从给定的 I/O 端口地址读取 ULONG 值。
READ_PORT_BUFFER_UCHAR 将给定的 UCHAR 值计数从给定的 I/O 端口读取到给定缓冲区。
READ_PORT_BUFFER_USHORT 将给定的 USHORT 值计数从给定的 I/O 端口读取到给定缓冲区。
READ_PORT_BUFFER_ULONG 将给定的 ULONG 值计数从给定的 I/O 端口读取到给定缓冲区中。
WRITE_PORT_UCHAR 将给定的 UCHAR 值写入给定的 I/O 端口地址。
WRITE_PORT_USHORT 将给定的 USHORT 值写入给定的 I/O 端口地址。
WRITE_PORT_ULONG 将给定的 ULONG 值写入给定的 I/O 端口地址。
WRITE_PORT_BUFFER_UCHAR 将给定的 UCHAR 值计数从给定缓冲区写入给定 I/O 端口。
WRITE_PORT_BUFFER_USHORT 将给定的 USHORT 值计数从给定缓冲区写入给定 I/O 端口。
WRITE_PORT_BUFFER_ULONG 将给定的 ULONG 值计数从给定缓冲区写入给定 I/O 端口。
READ_REGISTER_UCHAR 从内存空间中给定寄存器地址读取 UCHAR 值。
READ_REGISTER_USHORT 从内存空间中的给定寄存器地址读取 USHORT 值。
READ_REGISTER_ULONG 从内存空间中的给定寄存器地址读取 ULONG 值。
READ_REGISTER_BUFFER_UCHAR 将给定寄存器地址中的 UCHAR 值的给定计数读取到给定缓冲区中。
READ_REGISTER_BUFFER_USHORT 将给定寄存器地址中的 USHORT 值的给定计数读取到给定缓冲区中。
READ_REGISTER_BUFFER_ULONG 将给定寄存器地址中的 ULONG 值的给定计数读取到给定缓冲区中。
WRITE_REGISTER_UCHAR 将给定的 UCHAR 值写入内存空间中的给定寄存器地址。
WRITE_REGISTER_USHORT 将给定的 USHORT 值写入内存空间中的给定寄存器地址。
WRITE_REGISTER_ULONG 将给定的 ULONG 值写入内存空间中的给定寄存器地址。
WRITE_REGISTER_BUFFER_UCHAR 将给定的 UCHAR 值计数从给定缓冲区写入给定寄存器地址。
WRITE_REGISTER_BUFFER_USHORT 将给定的 USHORT 值计数从给定缓冲区写入给定寄存器地址。
WRITE_REGISTER_BUFFER_ULONG 将给定的 ULONG 值计数从给定缓冲区写入给定寄存器地址。

可寻呼驱动程序

可分页驱动程序例程由内核模式驱动程序调用,以锁定和解锁驱动程序的可分页代码或数据部分,或使整个驱动程序可分页。

函数 说明
MmLockPagableCodeSection 将一组标记为特殊编译器指令的驱动程序例程锁定到系统空间中。
MmLockPagableDataSection 将标记有特殊编译器指令的数据锁定到系统空间中,当数据访问频率不常、可预测,且 IRQL 小于DISPATCH_LEVEL时。
MmLockPagableSectionByHandle 使用从 MmLockPagableCodeSection 或 mmLockPagableDataSection 返回的句柄将可分页分区锁定到系统内存中。
MmUnlockPagableImageSection 释放以前在驱动程序不再处理 IRP 或不再需要分区内容时锁定在系统空间中的节。
MmPageEntireDriver 允许驱动程序页其所有代码和数据,而不考虑驱动程序映像中各个部分的属性。
MmResetDriverPaging 将驱动程序的可分页状态重置为由组成驱动程序映像的部分指定的状态。

节和视图

分区和视图管理例程由内核模式驱动程序调用,以设置映射的分区和内存视图。

函数 说明
nitializeObjectAttributes 为对 ZwCreateXxx 或 ZwOpenXxx 例程的后续调用设置OBJECT_ATTRIBUTES类型的参数。
ZwOpenSection 获取现有节的句柄,前提是允许请求的访问。
ZwMapViewOfSection 将打开部分的视图映射到进程的虚拟地址空间。 返回映射视图) 和映射大小 (基部分的偏移量。
ZwUnmapViewOfSection 在进程的虚拟地址空间中释放映射视图。

访问结构

结构访问宏由内核模式驱动程序调用,以访问结构的各个部分。

函数 说明
RGUMENT_PRESENT 如果参数指针为 NULL,则返回 FALSE;否则返回 TRUE。
CONTAINING_RECORD 返回结构实例的基址,给定结构类型和其中字段的地址。
FIELD_OFFSET 返回已知结构类型中命名字段的字节偏移量。

即插即用例程

驱动程序使用这些例程来实现 即插即用 (PnP) 支持。 有关在驱动程序中支持 PnP 的后台和面向任务的信息,请参阅即插即用。

以下主题按功能汇总例程:

设备信息例程

函数 说明
oGetDeviceProperty 检索有关设备的信息,例如配置信息及其 PDO 的名称。
IoInvalidateDeviceRelations 通知 PnP 管理器设备的关系已更改。
IoInvalidateDeviceState 通知 PnP 管理器设备 PnP 状态已更改。 响应中,PnP 管理器将IRP_MN_QUERY_PNP_DEVICE_STATE发送到设备堆栈。
IoReportDetectedDevice 向 PnP 管理器报告非 PnP 设备。
IoReportResourceForDetection 声明旧设备的配置注册表中的硬件资源。 此例程适用于检测无法由 PnP 枚举的旧硬件的驱动程序。

注册表例程

函数 说明
IoOpenDeviceInterfaceRegistryKey 返回注册表项的句柄,用于存储有关特定设备接口的信息。
IoOpenDeviceRegistryKey 返回特定设备实例特定于设备的或特定于驱动程序的注册表项的句柄。

设备接口例程

函数 说明
IoRegisterDeviceInterface (设备接口) 注册设备功能,驱动程序将允许应用程序或其他系统组件使用。
IoSetDeviceInterfaceState 启用或禁用以前注册的设备接口。 应用程序和其他系统组件只能打开已启用的接口。
IoOpenDeviceInterfaceRegistryKey 返回注册表项的句柄,用于存储有关特定设备接口的信息。
IoGetDeviceInterfaces 返回特定设备接口类的设备接口列表 (,例如支持 HID 接口) 系统上的所有设备。
IoGetDeviceInterfaceAlias 如果别名存在,则返回指定接口类的别名设备接口。 如果设备接口由同一基础设备公开,并且具有相同的接口引用字符串,但具有不同的接口类,则设备接口被视为别名。

PnP 通知例程

函数 说明
IoRegisterPlugPlayNotification 注册在发生指定的 PnP 事件时调用的驱动程序回调例程。
IoReportTargetDeviceChange 通知 PnP 管理器在设备上发生了自定义事件。 PnP 管理器将事件的通知发送到为其注册的驱动程序。 请勿使用此例程来报告系统 PnP 事件,例如GUID_TARGET_DEVICE_REMOVE_COMPLETE。
IoReportTargetDeviceChangeAsynchronous 通知 PnP 管理器在设备上发生了自定义事件。 立即返回,在 PnP 管理器向注册事件的驱动程序发送事件通知时不会等待。 请勿使用此例程来报告系统 PnP 事件,例如GUID_TARGET_DEVICE_REMOVE_COMPLETE。
IoUnregisterPlugPlayNotification 删除 PnP 事件的驱动程序回调例程的注册。

删除锁定例程

函数 说明
IoInitializeRemoveLock 初始化设备对象的删除锁。 驱动程序可以使用锁跟踪设备上的未完成 I/O,并确定驱动程序何时可以删除其设备对象,以响应IRP_MN_REMOVE_DEVICE请求。
IoAcquireRemoveLock 递增删除锁的计数,指示不应将关联的设备对象与设备堆栈分离,也不应删除。
IoReleaseRemoveLock 释放使用之前对 IoAcquireRemoveLock 的调用获取的删除锁。
IoReleaseRemoveLockAndWait 释放使用之前调用 IoAcquireRemoveLock 获取的删除锁,并等到释放锁定的所有获取为止。 驱动程序通常在其调度代码中为IRP_MN_REMOVE_DEVICE请求调用此例程。

其他 PnP 例程

函数 说明
IoAdjustPagingPathCount 递增或递减调用方提供的页文件计数器作为原子操作。 此例程可用于调整其他计数器,例如休眠文件的计数器或故障转储文件。
IoRequestDeviceEject 通知 PnP 管理器设备弹出按钮已按下。 请注意,此例程报告设备弹出的请求,而不是媒体弹出。

Windows Management Instrumentation 例程

本部分总结了驱动程序可用于与 Windows Management Instrumentation (WMI) 交互的内核模式支持例程。

支持例程的类别包括驱动程序可以调用的例程:

处理驱动程序接收 (WMI IRP 处理例程)

函数 说明
WmiCompleteRequest 如果驱动程序使用 WmiSystemControl 将 WMI IRP 调度到回调例程,则回调例程可以使用 WmiCompleteRequest 完成 IRP。
WmiSystemControl 将 WMI IRP 调度到驱动程序提供的回调例程。
WmiFireEvent WmiFireEvent 例程将事件发送到 WMI,以便传递给请求事件通知的数据使用者。
WmiQueryTraceInformation WmiQueryTraceInformation 例程返回有关 WMI 事件跟踪的信息。
WmiSystemControl WmiSystemControl 例程是使用 WMI 库支持例程来处理 WMI IRP 的驱动程序的调度例程。
WmiTraceMessage WmiTraceMessage 例程向 WPP 软件跟踪会话的输出日志添加消息。
WmiTraceMessageVa WmiTraceMessageVa 例程向 WPP 软件跟踪会话的输出日志添加消息。

驱动程序可以在处理 WMI IRP 时使用这些例程

函数 说明
WmiCompleteRequest 如果驱动程序使用 WmiSystemControl 将 WMI IRP 调度到回调例程,则回调例程可以使用 WmiCompleteRequest 完成 IRP。
WmiSystemControl 将 WMI IRP 调度到驱动程序提供的回调例程。

驱动程序使用这些例程发送 WMI IRP

函数 说明
IoWMIAllocateInstanceIds 为给定 WMI 类 GUID 分配未使用的 WMI 实例 ID。
IoWMIDeviceObjectToInstanceName 给定设备对象后,确定相应驱动程序支持的 WMI 类实例名称。 调用方可以使用此方法来确定特定驱动程序支持的实例名称。
IoWMIExecuteMethod 执行指定的 WMI 类方法。
IoWMIHandleToInstanceName 给定文件句柄,确定相应驱动程序支持的 WMI 类实例名称。 调用方可以使用此方法来确定特定驱动程序支持的实例名称。
IoWMIOpenBlock 打开 WMI 数据块。 调用方使用此来提交 WMI I/O 请求。
IoWMIQueryAllData 获取指定 WMI 类 GUID 的每个实例的属性值。
IoWMIQueryAllDataMultiple 获取指定 WMI 类 GUID 集的每个实例的属性值。
IoWMIQuerySingleInstance 获取指定 WMI 类 GUID 的特定实例的属性值。
IoWMIQuerySingleInstanceMultiple 获取特定 WMI 类实例集的属性值。
IoWMISetNotificationCallback 设置 WMI 事件的通知回调。
IoWMISetSingleInstance 设置特定 WMI 类实例的属性值。
IoWMISetSingleItem 设置特定 WMI 类实例的指定属性。

本部分介绍内核模式 WDM 驱动程序包含的必需和可选例程(如果驱动程序通过调用 WmiSystemControl 处理 WMI 次要 IRP)。 有关详细信息,请参阅 调用 WmiSystemControl 来处理 WMI IRP

Microsoft Windows 驱动程序工具包 (WDK) 文档中使用的 DpWmiXxx 名称是占位符。 驱动程序的 DpWmiXxx 例程可以具有驱动程序编写器选择的任何名称。

ZwXxx/NtXxx 例程

ZwXxx 例程提供一组系统入口点,这些入口点与执行部门的某些系统服务并行。 从内核模式代码调用 ZwXxx 例程会导致调用相应的系统服务。 不支持从用户模式调用 ZwXxx 例程;相反, (绕过 Microsoft Win32 子系统) 的本机应用程序应调用与 ZwXxx 例程等效的 NtXxx。

有关 NtXxx 例程的列表,请参阅 NtXxx 例程

对于从内核模式驱动程序调用 ZwXxx 例程,系统不会检查调用方的访问权限,也不会将以前的处理器模式设置为 UserMode。 在调用 ZwXxx 例程之前,内核模式驱动程序必须检查所有用户提供的参数是否有效。

有关 NtXxx 与 ZwXxx 例程之间的关系的详细信息,请参阅 使用本机系统服务例程的 Nt 和 Zw 版本。 有关每个主要功能类别中 ZwXxx 例程的列表,请参阅Kernel-Mode支持例程的摘要。

以下例程保留供系统使用。 请勿在驱动程序中使用它们。

例程所返回的值 Replacement
ZwCancelTimer 请改用 KeCancelTimer。
ZwCreateTimer 请改用 KeInitializeTimer 或 KeInitializeTimerEx。
ZwOpenTimer
ZwSetTimer 请改用 KeSetTimer。
NtRenameTransactionManager 已过时。

注意

NtRenameTransactionManager 和 TmRenameTransactionManager 是同一例程的两个版本。 内核模式驱动程序不应调用 NtRenameTransactionManager。 应改为调用 TmRenameTransactionManager。

函数 说明
NtRenameTransactionManager NtRenameTransactionManager 例程更改存储在日志文件名称中包含的 CLFS 日志文件流中的事务管理器对象的标识。
NtSetInformationTransactionManager 请勿从内核模式代码调用此例程。
ZwAllocateLocallyUniqueId ZwAllocateLocallyUniqueId 例程分配本地唯一标识符 (LUID) 。
ZwAllocateVirtualMemory ZwAllocateVirtualMemory 例程保留、提交或同时保留指定进程的用户模式虚拟地址空间中的页面区域。
ZwClose ZwClose 例程关闭对象句柄。
ZwCreateDirectoryObject ZwCreateDirectoryObject 例程创建或打开对象目录对象。
ZwCreateEvent ZwCreateEvent 例程创建事件对象,将事件的初始状态设置为指定值,并打开具有指定访问权限的对象句柄。
ZwCreateFile ZwCreateFile 例程创建一个新文件或打开现有文件。
ZwCreateKey ZwCreateKey 例程创建新的注册表项或打开现有注册表项。
ZwCreateKeyTransacted ZwCreateKeyTransacted 例程创建新的注册表项或打开现有注册表项,并将密钥与事务相关联。
ZwCreateSection ZwCreateSection 例程创建节对象。
ZwDeleteFile ZwDeleteFile 例程将删除指定的文件。
ZwDeleteKey ZwDeleteKey 例程从注册表中删除打开的键。
ZwDeleteValueKey ZwDeleteValueKey 例程从注册表中的打开键中删除与名称匹配的值项。 如果不存在此类条目,则返回错误。
ZwDeviceIoControlFile ZwDeviceIoControlFile 例程将控制代码直接发送到指定的设备驱动程序,导致相应的驱动程序执行指定的操作。
ZwDuplicateToken ZwDuplicateToken 函数为复制现有令牌的新访问令牌创建句柄。 此函数可以创建主令牌或模拟令牌。
ZwEnumerateKey ZwEnumerateKey 例程返回有关打开的注册表项的子项的信息。
ZwEnumerateValueKey ZwEnumerateValueKey 例程获取有关打开键的值条目的信息。
ZwFlushBuffersFile ZwFlushBuffersFile 例程由文件系统筛选器驱动程序调用,以便向文件系统发送指定文件的刷新请求。
ZwFlushBuffersFileEx ZwFlushBuffersFileEx 例程由文件系统筛选器驱动程序调用,以便向文件系统发送给定文件的刷新请求。 可以设置可选的刷新操作标志,以控制如何将文件数据写入存储。
ZwFlushKey ZwFlushKey 例程强制将注册表项提交到磁盘。
ZwFlushVirtualMemory ZwFlushVirtualMemory 例程在指定进程的虚拟地址空间中刷新一系列虚拟地址,如果数据文件已被修改,则映射到数据文件。
ZwFreeVirtualMemory ZwFreeVirtualMemory 例程发布、取消提交或两者,是指定进程的虚拟地址空间中的页面区域。
ZwFsControlFile ZwFsControlFile 例程将控制代码直接发送到指定的文件系统或文件系统筛选器驱动程序,导致相应的驱动程序执行指定的操作。
ZwLoadDriver ZwLoadDriver 例程将驱动程序加载到系统中。
ZwLockFile ZwLockFile 例程请求指定文件的字节范围锁。
ZwMakeTemporaryObject ZwMakeTemporaryObject 例程更改对象的属性,使其临时。
ZwMapViewOfSection ZwMapViewOfSection 例程将分区的视图映射到主题进程的虚拟地址空间。
ZwNotifyChangeKey ZwNotifyChangeKey 例程允许驱动程序在注册表项更改时请求通知。
ZwOpenEvent ZwOpenEvent 例程打开具有指定访问权限的现有命名事件对象的句柄。
ZwOpenFile ZwOpenFile 例程打开现有文件、目录、设备或卷。
ZwOpenKey ZwOpenKey 例程将打开现有的注册表项。
ZwOpenKeyEx ZwOpenKeyEx 例程将打开现有的注册表项。
ZwOpenKeyTransacted ZwOpenKeyTransacted 例程将打开现有的注册表项,并将密钥与事务相关联。
ZwOpenKeyTransactedEx ZwOpenKeyTransactedEx 例程将打开现有注册表项,并将密钥与事务相关联。
ZwOpenProcess ZwOpenProcess 例程打开进程对象的句柄,并设置对此对象的访问权限。
ZwOpenProcessTokenEx ZwOpenProcessTokenEx 例程将打开与进程关联的访问令牌。
ZwOpenSection ZwOpenSection 例程打开现有节对象的句柄。
ZwOpenSymbolicLinkObject ZwOpenSymbolicLinkObject 例程将打开现有的符号链接。
ZwOpenThreadTokenEx ZwOpenThreadTokenEx 例程将打开与线程关联的访问令牌。
ZwPowerInformation ZwPowerInformation 例程设置或检索系统电源信息。
ZwQueryInformationThread ZwQueryInformationThread 例程检索有关指定线程的信息,例如其页面优先级。
ZwQueryDirectoryFile ZwQueryDirectoryFile 例程返回有关给定文件句柄所指定的目录中文件的各种信息。
ZwQueryEaFile ZwQueryEaFile 例程返回有关文件的扩展属性 (EA) 值的信息。
ZwQueryFullAttributesFile ZwQueryFullAttributesFile 例程为指定文件提供网络开放信息。
ZwQueryInformationFile ZwQueryInformationFile 例程返回有关文件对象的各种信息。
ZwQueryInformationToken ZwQueryInformationToken 例程检索有关访问令牌的指定类型信息。 调用过程必须具有适当的访问权限才能获取信息。
ZwQueryKey ZwQueryKey 例程提供有关注册表项类及其子项的数量和大小的信息。
ZwQueryObjec ZwQueryObject 例程提供有关提供的对象的信息。
ZwQueryQuotaInformationFile ZwQueryQuotaInformationFile 例程检索与 FileHandle 参数指定的卷关联的配额条目。
ZwQuerySecurityObject ZwQuerySecurityObject 例程检索对象的安全描述符的副本。
ZwQuerySymbolicLinkObject ZwQuerySymbolicLinkObject 例程返回一个 Unicode 字符串,其中包含符号链接的目标。
ZwQueryValueKey ZwQueryValueKey 例程返回注册表项的值项。
ZwQueryVirtualMemory ZwQueryVirtualMemory 例程确定主题进程的虚拟地址空间中页面区域的状态、保护和类型。
ZwQueryVolumeInformationFile ZwQueryVolumeInformationFile 例程检索与给定文件、目录、存储设备或卷关联的卷的相关信息。
ZwReadFile ZwReadFile 例程从打开的文件读取数据。
ZwSetEaFile ZwSetEaFile 例程设置文件的扩展属性 (EA) 值。
ZwSetEvent ZwSetEvent 例程将事件对象设置为信号状态,并尝试满足尽可能多的等待。
ZwSetInformationFile ZwSetInformationFile 例程更改有关文件对象的各种信息。
ZwSetInformationThread ZwSetInformationThread 例程设置线程的优先级。
ZwSetInformationToken ZwSetInformationToken 例程修改指定令牌中的信息。 调用过程必须具有适当的访问权限才能设置信息。
ZwSetInformationVirtualMemory ZwSetInformationVirtualMemory 例程对进程的用户地址空间中的指定地址范围列表执行操作。
ZwSetQuotaInformationFile ZwSetQuotaInformationFile 例程更改与 FileHandle 参数关联的卷的配额条目。 指定缓冲区中的所有配额条目都应用于卷。
ZwSetSecurityObject ZwSetSecurityObject 例程设置对象的安全状态。
ZwSetValueKey ZwSetValueKey 例程创建或替换注册表项的值条目。
ZwSetVolumeInformationFile ZwSetVolumeInformationFile 例程修改与给定文件、目录、存储设备或卷关联的卷的相关信息。
ZwTerminateProcess ZwTerminateProcess 例程终止进程及其所有线程。
ZwUnloadDriver ZwUnloadDriver 例程从系统卸载驱动程序。 请谨慎使用此例程。 (请参阅以下备注部分。)
ZwUnlockFile ZwUnlockFile 例程解锁文件中的字节范围锁。
ZwUnmapViewOfSection ZwUnmapViewOfSection 例程从主题进程的虚拟地址空间取消映射节的视图。
ZwWaitForSingleObject ZwWaitForSingleObject 例程等待,直到指定对象达到 Signaled 状态。 还可以指定可选的超时。
ZwWriteFile ZwWriteFile 例程将数据写入打开的文件。

辅助Kernel-Mode库例程和结构

辅助Kernel-Mode库使驱动程序能够访问内核模式子系统中不可用的某些系统功能。

AuxKlibInitialize 例程初始化辅助Kernel-Mode库。 使用此库的驱动程序必须在调用任何库的其他例程之前调用 AuxKlibInitialize。

  • AuxKlibEnumerateSystemFirmwareTables
  • AuxKlibGetBugCheckData
  • AuxKlibGetImageExportDirectory
  • AuxKlibGetSystemFirmwareTable
  • AuxKlibInitialize
  • AuxKlibQueryModuleInformation
  • AUX_MODULE_BASIC_INFO
  • AUX_MODULE_EXTENDED_INFO
  • KBUGCHECK_DATA

处理器组兼容性库

支持可用于使用处理器组的内核模式驱动程序。 处理器组 (ProcGrp) 兼容性库支持写入以使用早期版本的 Windows 上运行的处理器组(不支持处理器组)的内核模式驱动程序。 运行此驱动程序时,如果硬件平台支持多个处理器组,则可以利用这些组。 当同一驱动程序在早期版本的 Windows 上运行时,它仅限于单个处理器组,而不考虑硬件平台的功能。 若要使用 ProcGrp 库,驱动程序必须调用库初始化例程。 此外,必须为 WDK 中的 Windows 7 环境编译驱动程序,并且必须与 Procgrp.lib 链接。

ProcGrp 库旨在满足调用以下 KeXxx 例程的驱动程序的兼容性要求,但还必须在未实现这些例程的 Windows 版本上运行:

  • KeGetCurrentProcessorNumberEx
  • KeGetProcessorIndexFromNumber
  • KeGetProcessorNumberFromIndex
  • KeQueryActiveGroupCount
  • KeQueryActiveProcessorCountEx
  • KeQueryGroupAffinity
  • KeQueryMaximumProcessorCount
  • KeQueryMaximumProcessorCountEx
  • KeQueryMaximumGroupCount
  • KeSetSystemAffinityThreadEx
  • KeSetSystemGroupAffinityThread
  • KeRevertToUserAffinityThreadEx
  • KeRevertToUserGroupAffinityThread
  • KeSetTargetProcessorDpcEx

ProcGrp 库为上述列表中的 KeXxx 例程实现包装函数。 如果库在 Windows 7 或 Windows Server 2008 R2 上运行,包装器函数只需调用相应的 KeXxx 例程。 包装函数的名称与这些 KeXxx 例程的名称相同,其行为与它们所替换的 KeXxx 例程相同。

早期版本的 Windows 不支持处理器组,并且未在前面的列表中实现 KeXxx 例程。 如果 ProcGrp 库链接到在这些早期版本的 Windows 上运行的驱动程序,则库初始化函数 WdmlibProcgrpInitialize 检测到操作系统不支持处理器组。 为了处理这种情况,每个包装器函数都包含相应的 KeXxx 例程的简化实现。 此实现仅支持一个处理器组,组号 0。 例如,KeQueryMaximumGroupCount 例程的包装函数始终返回一个计数。 对于另一个示例,KeGetCurrentProcessorNumberEx 例程的包装函数通过调用 KeGetCurrentProcessorNumber 例程来模拟此例程。 KeGetCurrentProcessorNumber 类似于 KeGetCurrentProcessorNumberEx,但缺少对处理器组的支持,在这种情况下,它的效果与仅支持一个处理器组的效果相同。

有关对 Windows 7 中处理器组的支持的详细信息,请参阅 WHDC 网站上的 64 多个处理器白皮书的支持系统

ProcGrp 库包含在 Windows 7 版本的 WDK 中。 库函数在 Procgrp.h 头文件中声明,并在 Procgrp.lib 库文件中实现。

除了 KeXxx 包装器函数,ProcGrp 库还实现以下函数来初始化库:

  • WdmlibProcgrpInitialize

DMA

DMA 库例程驱动程序使用本节中所述的例程来执行直接内存访问 (DMA) 操作。 例程是通过指针访问的,不能通过名称直接调用。

执行 DMA 操作的驱动程序使用 IoGetDmaAdapter 获取指向设备的DMA_ADAPTER结构的指针。 结构的 DmaOperations 成员指向DMA_OPERATIONS结构,该结构是指向该设备物理设备对象的 DMA 例程的指针表。

函数 说明
IoGetDmaAdapter 返回指向适配器对象的指针,该对象表示驱动程序设备连接到的 DMA 通道或驱动程序的总线主适配器。 还返回驱动程序可以为每个 DMA 传输指定的最大映射寄存器数。
MmGetMdlVirtualAddress 返回给定 MDL 描述的缓冲区的基虚拟地址。 可将用作 MDL 中物理地址项的索引的返回地址输入到 MapTransfer 中。
MmGetSystemAddressForMdlSafe 返回 MDL 描述的内存区域的基数的非分页系统空间虚拟地址。 它将 MDL 描述的物理页映射到系统空间(如果尚未映射到系统空间)。
ADDRESS_AND_SIZE_TO_SPAN_PAGES 返回虚拟地址定义的虚拟范围跨越的页数,以及长度(以字节为单位)。 驱动程序可以使用此宏来确定传输请求是否必须拆分为部分传输。
AllocateAdapterChannel 保留对 DMA 通道的独占访问权限,并为设备映射寄存器。 当通道和寄存器可用时,此例程调用驱动程序提供的 AdapterControl 例程,以通过系统 DMA 控制器或总线主适配器执行 I/O 操作。
AllocateCommonBuffer 分配和映射可从处理器和设备同时访问的逻辑连续内存区域。 如果分配了请求的长度,则此例程返回 TRUE。
BuildMdlFromScatterGatherList 生成对应于散点/收集列表的 MDL。
BuildScatterGatherList 为设备准备散点/收集 DMA 的系统,并调用驱动程序提供的例程来执行 I/O 操作。 此函数提供与 GetScatterGatherList 相同的功能,但它使用驱动程序提供的缓冲区来保存散点/收集列表。
CalculateScatterGatherList 计算存储内存缓冲区的散点/收集列表所需的缓冲区大小。
FlushAdapterBuffers 强制将总线主适配器或系统 DMA 控制器的内部缓冲区中的任何数据写入内存或设备。
FreeAdapterChannel 释放表示系统 DMA 通道的适配器对象,并选择性地释放任何分配的映射寄存器。
FreeCommonBuffer 释放和取消映射以前分配的通用缓冲区。 参数必须与前面调用 AllocateCommonBuffer 中传递的参数匹配。
FreeMapRegisters 释放从对 AllocateAdapterChannel 的调用保存的一组映射寄存器。 驱动程序在一个或多个对 MapTransfer 的调用中使用寄存器后调用此例程,通过调用 FlushAdapterBuffers 刷新缓存,并完成总线主 DMA 传输。
GetDmaAlignment 返回 DMA 控制器或设备的缓冲区对齐要求。
GetScatterGatherList 为设备准备散点/收集 DMA 的系统,并调用驱动程序提供的例程来执行 I/O 操作。 对于支持散点/收集 DMA 的设备,此例程结合了 AllocateAdapterChannel 和 MapTransfer 的功能。
KeFlushIoBuffers 将 MDL 描述的内存区域从所有处理器的缓存刷新到内存中。
MapTransfer 为以前由 AllocateAdapterChannel 分配的适配器对象设置映射寄存器,以映射来自锁定缓冲区的传输。 返回映射区域的逻辑地址,对于支持散点/收集的总线主设备,映射的字节数。
PutDmaAdapter 释放以前由 IoGetDmaAdapter 分配的适配器对象。
PutScatterGatherList 释放以前由 GetScatterGatherList 分配的映射寄存器和散点/收集列表。
ReadDmaCounter 返回在自动初始化模式下 (当前系统 DMA 操作期间尚未传输的字节数) 。

PIO

函数 说明
MmProbeAndLockPages 探测 MDL 中指定的特定访问页,使页面驻留并在内存中锁定它们:返回使用相应物理地址更新的 MDL。
MmGetSystemAddressForMdlSafe 返回一个系统空间虚拟地址,用于映射给定 MDL 描述的物理页面,这些驱动程序的设备必须使用 PIO。 如果没有虚拟地址,则会分配一个。
KeFlushIoBuffers 将给定 MDL 描述的内存区域从所有处理器的缓存刷新到内存中。
MmUnlockPages 解锁在 MDL 中指定的以前探测和锁定的页面。
MmMapIoSpace 将物理地址范围映射到非分页系统空间中缓存的或未缓存的虚拟地址范围。
MmUnmapIoSpace 从物理地址范围取消映射虚拟地址范围。

中断

函数 说明
IoConnectInterrupt 注册驱动程序的中断处理例程。 驱动程序应改用 IoConnectInterruptEx。
IoDisconnectInterrupt 取消注册 IoConnectInterrupt 注册的中断处理例程。
IoConnectInterruptEx 注册驱动程序的中断处理例程。 驱动程序可以为基于行的中断注册一个 InterruptService 例程,也可以为消息信号中断注册一个 InterruptMessageService 例程。
IoDisconnectInterruptEx 取消注册 IoConnectInterruptEx 注册的中断处理例程。
IoInitializeDpcRequest 将驱动程序提供的 DpcForIsr 例程与给定的设备对象相关联,以便 DpcForIsr 例程可以完成中断驱动的 I/O 操作。
KeSynchronizeExecution 在给定指向中断对象的指针的情况下,将驱动程序提供的 SynchCritSection 例程的执行与与一组中断对象关联的 ISR 执行同步。
KeAcquireInterruptSpinLock 获取与中断的 ISR 同步访问的旋转锁。
KeReleaseInterruptSpinLock 释放与中断的 ISR 同步访问的旋转锁。
KeRegisterNmiCallback 注册在 NMI) 发生不可掩码中断 (时调用的例程。
KeDeregisterNmiCallback 取消注册 KeRegisterNmiCallback 注册的例程。

Driver-Managed队列

函数 说明
KeInitializeSpinLock 初始化KSPIN_LOCK类型的变量。 初始化的旋转锁是 ExInterlockedXxxList 例程的必需参数。
InitializeListHead 为驱动程序的内部队列设置队列标头,给定指向队列标头和队列的驱动程序提供的存储的指针。 初始化的队列标头是 ExInterlockedInsert/RemoveXxxList 例程的必需参数。
ExInterlockedInsertTailList 使用旋转锁在多倍链接列表的末尾插入一个条目,以确保对列表进行多处理器安全访问以及列表链接的原子修改。
ExInterlockedInsertHeadList 使用旋转锁在多维链接列表的头插入一个条目,以确保对列表中的列表进行多处理器安全访问,以及列表中链接的原子修改。
ExInterlockedRemoveHeadList 使用旋转锁从多倍链接列表的头中删除一个条目,以确保对列表中的列表进行多处理器安全访问,以及列表中链接的原子修改。
ExInterlockedPopEntryList 使用旋转锁从单向链接列表的头中删除条目作为原子操作,以确保对列表的多处理器安全访问。
ExInterlockedPushEntryList 使用旋转锁在单向链接列表的头插入条目作为原子操作,以确保对列表的多处理器安全访问。
IsListEmpty 如果队列为空,则返回 TRUE。 (此类型的双重链接列表不受旋转锁的保护,除非调用方显式管理已排队条目的同步,并且调用方为其提供 storage.)
InsertTailList 在列表末尾对条目进行排队。
InsertHeadList 将条目排入列表的头。
RemoveHeadList 取消列表头处的条目的排队。
RemoveTailList 取消列表末尾的条目的排队。
RemoveEntryList 返回给定条目是否在给定列表中,如果为给定项,则取消排队。
PushEntryList 在队列中插入一个条目。 (此类型的单调链接列表不受旋转锁的保护,除非调用方显式管理与已排队条目的同步,并且调用方为其提供 storage.)
PopEntryList 从队列中删除一个条目。
ExInterlockedPopEntrySList 从使用 ExInitializeSListHead 设置的已排序、单声链接列表的头中删除一个条目。
ExInterlockedPushEntrySList 在已使用 ExInitializeSListHead 设置的有序链接列表的头处对条目进行排队。
ExQueryDepthSList 返回当前排队在排序的、单声链接列表中排队的条目数。
ExInitializeNPagedLookasideList 在非分页池中设置由系统提供的旋转锁保护的 lookaside 列表,驱动程序可以从中分配和释放固定大小的块。
KeInitializeDeviceQueue 将设备队列对象初始化为不忙状态,为多处理器安全访问设备队列条目设置关联的旋转锁。
KeInsertDeviceQueue 如果设备队列不为空,则获取设备队列旋转锁并将条目排队到设备驱动程序;否则,将条目插入到设备队列的结尾处。
KeInsertByKeyDeviceQueue 如果设备队列不为空,则获取设备队列旋转锁并将条目排队到设备驱动程序;否则,根据给定的排序键值将条目插入队列中。
KeRemoveDeviceQueue 从给定设备队列的头中删除条目。
KeRemoveByKeyDeviceQueue 从给定设备队列中删除根据指定的排序键值选择的条目。
KeRemoveEntryDeviceQueue 确定给定条目是否位于给定的设备队列中,如果是,则取消排队条目。

驱动程序系统进程和线程

函数 说明
PsCreateSystemThread 创建与给定进程对象或默认系统进程关联的内核模式线程。 返回线程的句柄。
PsTerminateSystemThread 终止当前线程并满足当前线程对象的尽可能多的等待。
PsGetCurrentThread 返回当前线程的句柄。
KeGetCurrentThread 返回一个指针,该指针指向表示当前线程的不透明线程对象。
KeQueryPriorityThread 返回给定线程的当前优先级。
KeSetBasePriorityThread 为驱动程序创建的线程设置相对于系统进程的运行时优先级。
KeSetPriorityThread 使用实时优先级属性为驱动程序创建的线程设置运行时优先级。
KeDelayExecutionThread 将当前线程置于给定间隔的可警报或不可操作的等待状态。
IoQueueWorkItem 对已初始化的工作队列项进行排队,以便在给定系统工作线程控制时调用驱动程序提供的例程。
ZwSetInformationThread 设置调用方具有句柄的给定线程的优先级。
函数 说明
PsGetCurrentProcessId PsGetCurrentProcessId 例程标识当前线程的进程。
PsGetProcessCreateTimeQuadPart PsGetProcessCreateTimeQuadPart 例程返回一个LONGLONG 值,该值表示创建进程的时间。
PsGetProcessId PsGetProcessId 例程返回与指定进程关联的进程 ID (进程 ID) 。
PsQueryTotalCycleTimeProcess PsQueryTotalCycleTimeProcess 例程返回指定进程的累积周期时间。
PCREATE_PROCESS_NOTIFY_ROUTINE 驱动程序实现的进程创建回调,用于跟踪针对驱动程序的内部状态创建和删除进程的范围。
PsSetCreateProcessNotifyRoutine PsSetCreateProcessNotifyRoutine 例程将驱动程序提供的回调例程添加到或从中删除该例程列表,每当创建或删除进程时调用该例程。
PCREATE_PROCESS_NOTIFY_ROUTINE_EX 驱动程序实现的回调例程,用于在创建或退出进程时通知调用方。
PsSetCreateProcessNotifyRoutineEx PsSetCreateProcessNotifyRoutineEx 例程注册或删除回调例程,在创建或退出进程时通知调用方。
PsSetCreateProcessNotifyRoutineEx2 PsSetCreateProcessNotifyRoutineEx2 例程注册或删除回调例程,在创建或删除进程时通知调用方。
函数 说明
PLOAD_IMAGE_NOTIFY_ROUTINE 操作系统调用,以便在驱动程序映像或用户映像 (时通知驱动程序,例如,DLL 或 EXE) 映射到虚拟内存中。
PsSetLoadImageNotifyRoutine PsSetLoadImageNotifyRoutine 例程会注册驱动程序提供的回调,每当映像加载到 (或映射到内存) 时,该回调随后会收到通知。
PsSetLoadImageNotifyRoutineEx PsSetLoadImageNotifyRoutineEx 例程会注册驱动程序提供的回调,每当映像加载到 (或映射到内存) 时,该回调随后会收到通知。
PsTerminateSystemThread PsTerminateSystemThread 例程终止当前系统线程。

这组指导原则适用于以下回调例程:

  • PCREATE_PROCESS_NOTIFY_ROUTINE
  • PCREATE_PROCESS_NOTIFY_ROUTINE_EX
  • PCREATE_THREAD_NOTIFY_ROUTINE
  • PLOAD_IMAGE_NOTIFY_ROUTINE

使通知例程保持简短且简单。

  • 请勿调用用户模式服务来验证进程、线程或映像。

  • 请勿进行注册表调用。

  • 请勿进行阻塞和/或进程间通信 (IPC) 函数调用。

  • 请勿与其他线程同步,因为这可能会导致发生重入死锁。

  • 使用系统工作线程来对工作进行排队,尤其是涉及以下任何一项的工作:

    • 慢速 API 或 API 调用其他进程。
    • 可能会中断核心服务中的线程的任何阻止行为。
  • 处处考虑到适用于内核模式堆栈使用情况的最佳做法。 有关示例,请参阅如何防止驱动程序耗尽内核模式堆栈?和重要驱动程序概念和提示。

Run-Time库 (RTL) 例程

有关复制、连接和格式化字符串的方式防止缓冲区溢出错误的函数的信息,请参阅下面的 安全字符串函数。 其他字符串操作函数包括:

函数 说明
RtlInitString 初始化缓冲区中的指定字符串。
RtlInitAnsiString 初始化缓冲区中的指定 ANSI 字符串。
RtlInitUnicodeString 初始化缓冲区中的指定 Unicode 字符串。
RtlAnsiStringToUnicodeSize 返回保存给定缓冲 ANSI 字符串的 Unicode 版本所需的大小(以字节为单位)。
RtlAnsiStringToUnicodeString 将缓冲的 ANSI 字符串转换为 Unicode 字符串,给定指向源字符串缓冲区的指针,并为指向目标缓冲区的指针提供调用方存储的地址。 (如果调用方不提供 storage.) 还可以使用编译器提供的字符串操作例程将 ANSI 字符串转换为 Unicode,则此例程分配目标缓冲区。
RtlFreeUnicodeString 释放包含 Unicode 字符串的缓冲区,给定 RtlAnsiStringToUnicodeString 返回的缓冲区的指针。
RtlUnicodeStringToAnsiString 将缓冲的 Unicode 字符串转换为 ANSI 字符串,给定指向源字符串缓冲区的指针以及指向目标缓冲区的调用方提供的存储的地址。 (如果调用方未提供 storage.) ,此例程将分配目标缓冲区
RtlFreeAnsiString 释放包含 ANSI 字符串的缓冲区,给定 RtlUnicodeStringToAnsiString 返回的缓冲区的指针。
RtlAppendUnicodeStringToString 将缓冲的 Unicode 字符串的副本与缓冲的 Unicode 字符串连接,给定指向这两个缓冲区的指针。
RtlAppendUnicodeToString 给定输入字符串与缓冲 Unicode 字符串连接,给定指向缓冲区的指针。
RtlCopyString 将源字符串复制到目标,给定指向两个缓冲区的指针,或设置目标字符串的长度 (,但如果指向源字符串缓冲区的可选指针为 NULL,则目标缓冲区的长度) 为零。
RtlCopyUnicodeString 将源字符串复制到目标,给定指向两个缓冲区的指针,或设置目标字符串的长度 (,但如果指向源字符串缓冲区的可选指针为 NULL,则目标缓冲区的长度) 为零。
RtlEqualString 如果给定的 ANSI 字母字符串等效,则返回 TRUE。
RtlEqualUnicodeString 如果给定的缓冲字符串等效,则返回 TRUE。
RtlCompareString 比较两个缓冲的单字节字符串,并返回一个带符号的值,该值指示它们是否等效或更大。
RtlCompareUnicodeString 比较两个缓冲的 Unicode 字符串,并返回一个有符号值,该值指示它们是否等效或更大。
RtlUpperString 将缓冲字符串的副本转换为大写,并将副本存储在目标缓冲区中。
RtlUpcaseUnicodeString 将缓冲 Unicode 字符串的副本转换为大写,并将副本存储在目标缓冲区中。
RtlIntegerToUnicodeString 将指定基中的无符号整数值转换为缓冲区中的一个或多个 Unicode 字符。
RtlUnicodeStringToInteger RtlUnicodeStringToInteger 将整数的 Unicode 字符串表示形式转换为其等效整数。

以下例程保留供系统使用。 请勿在驱动程序中使用它们。

例程所返回的值 Replacement
RtlAssert 请改用 ASSERT。
RtlGetCallersAddress 请改用内部_ReturnAddress。
RtlInterlockedAndBits 请改用 InterlockedAnd。
RtlInterlockedAndBitsDiscardReturn 请改用 InterlockedAnd。
RtlInterlockedClearBits 请改用 InterlockedAnd。
RtlInterlockedClearBitsDiscardReturn 请改用 InterlockedAnd。
RtlInterlockedSetBits 请改用 InterlockedOr。
RtlInterlockedSetBitsDiscardReturn 请改用 InterlockedOr。
RtlInterlockedSetClearBits
RtlInterlockedXorBits 改用 InterlockedXor
RtlWalkFrameChain

Unicode 和 ANSI 字符的安全字符串函数

使用本节中的函数在内核模式驱动程序中操作 Unicode 和 ANSI 字符串。

每个函数在两个版本中可用:

支持双字节 Unicode 字符的 W 后缀版本。

支持一字节 ANSI 字符的 A 后缀版本。

如果使用安全字符串函数而不是 C 语言运行时库提供的字符串操作函数,则可以保护代码免受缓冲区溢出错误,使代码不可信。 有关详细信息,请参阅 使用安全字符串函数

函数 说明
RtlStringCbCatW RtlStringCbCatW 和 RtlStringCbCatA 函数连接两个字节计数的字符串。
RtlStringCbCatExW RtlStringCbCatExW 和 RtlStringCbCatExA 函数连接两个字节计数的字符串。
RtlStringCbCatNW RtlStringCbCatNW 和 RtlStringCbCatNA 函数连接两个字节计数字符串,同时限制追加字符串的大小。
RtlStringCbCatNExW RtlStringCbCatNExW 和 RtlStringCbCatNExA 函数连接两个字节计数字符串,同时限制追加字符串的大小。
RtlStringCbCopyW RtlStringCbCopyW 和 RtlStringCbCopyA 函数将字节计数的字符串复制到缓冲区中。
RtlStringCbCopyExW RtlStringCbCopyExW 和 RtlStringCbCopyExA 函数将字节计数的字符串复制到缓冲区中。
RtlStringCbCopyNW RtlStringCbCopyNW 和 RtlStringCbCopyNA 函数将字节计数的字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCbCopyNExW RtlStringCbCopyNExW 和 RtlStringCbCopyNExA 函数将字节计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCbLengthW RtlStringCbLengthW 和 RtlStringCbLengthA 函数确定提供的字符串的长度(以字节为单位)。
RtlStringCbPrintfW RtlStringCbPrintfW 和 RtlStringCbPrintfA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbPrintfExW RtlStringCbPrintfExW 和 RtlStringCbPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbVPrintfW RtlStringCbVPrintfW 和 RtlStringCbVPrintfA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbVPrintfExW RtlStringCbVPrintfExW 和 RtlStringCbVPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchCatW RtlStringCchCatW 和 RtlStringCchCatA 函数连接两个字符计数的字符串。
RtlStringCchCatExW RtlStringCchCatExW 和 RtlStringCchCatExA 函数连接两个字符计数的字符串。
RtlStringCchCatNW RtlStringCchCatNW 和 RtlStringCchCatNA 函数连接两个字符计数字符串,同时限制追加字符串的大小。
RtlStringCchCatNExW RtlStringCchCatNExW 和 RtlStringCchCatNExA 函数连接两个字符计数字符串,同时限制追加字符串的大小。
RtlStringCchCopyW RtlStringCchCopyW 和 RtlStringCchCopyA 函数将以 null 结尾的源字符串复制到指定长度的目标缓冲区中。
RtlStringCchCopyExW RtlStringCchCopyExW 和 RtlStringCchCopyExA 函数将字符计数的字符串复制到缓冲区中。
RtlStringCchCopyNW RtlStringCchCopyNW 和 RtlStringCchCopyNA 函数将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCchCopyNExW RtlStringCchCopyNExW 和 RtlStringCchCopyNExA 函数将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCchLengthW RtlStringCchLengthW 和 RtlStringCchLengthA 函数确定提供的字符串的长度(以字符为单位)。
RtlStringCchPrintfW RtlStringCchPrintfW 和 RtlStringCchPrintfA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchPrintfExW RtlStringCchPrintfExW 和 RtlStringCchPrintfExA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchVPrintfW RtlStringCchVPrintfW 和 RtlStringCchVPrintfA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchVPrintfExW RtlStringCchVPrintfExW 和 RtlStringCchVPrintfExA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlUnalignedStringCbLength RtlUnalignedStringCbLengthW 函数是 RtlStringCbLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。
RtlUnalignedStringCchLengthW RtlUnalignedStringCchLengthW 函数是 RtlStringCchLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。

UNICODE_STRING结构的安全字符串函数

使用本节中的函数在内核模式驱动程序中处理UNICODE_STRING结构中的字符串。

如果使用安全字符串函数而不是 C 语言运行时库提供的字符串操作函数,则可以保护代码免受缓冲区溢出错误,使代码不可信。 有关安全字符串函数的详细信息,请参阅 使用安全字符串函数

函数 说明
RtlStringCbCopyUnicodeString RtlStringCbCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。
RtlStringCbCopyUnicodeStringEx RtlStringCbCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定的目标。
RtlStringCchCopyUnicodeString RtlStringCchCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。
RtlStringCchCopyUnicodeStringEx RtlStringCchCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定目标。
RtlUnicodeStringCat RtlUnicodeStringCat 函数连接UNICODE_STRING结构中包含的两个字符串。
RtlUnicodeStringCatEx RtlUnicodeStringCatEx 函数连接UNICODE_STRING结构中包含的两个字符串。
RtlUnicodeStringCatString 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCatString 函数连接两个字符串。
RtlUnicodeStringCatStringEx 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCatStringEx 函数连接两个字符串。
RtlUnicodeStringCbCatN RtlUnicodeStringCbCatN 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCbCatNEx RtlUnicodeStringCbCatNEx 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCbCatStringN 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringN 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCbCatStringNEx 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringNEx 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCbCopyN RtlUnicodeStringCbCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCbCopyNEx RtlUnicodeStringCbCopyNEx 函数将一个字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCbCopyStringN RtlUnicodeStringCbCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCbCopyStringNEx RtlUnicodeStringCbCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCatN RtlUnicodeStringCchCatN 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCatNEx RtlUnicodeStringCchCatNEx 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCatStringN 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringN 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCchCatStringNEx 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringNEx 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCchCopyN RtlUnicodeStringCchCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCchCopyNEx RtlUnicodeStringCchCopyNEx 函数将一个字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCchCopyStringN RtlUnicodeStringCchCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCopyStringNEx RtlUnicodeStringCchCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCopy RtlUnicodeStringCopy 函数将字符串从一个UNICODE_STRING结构复制到另一个结构。
RtlUnicodeStringCopyEx RtlUnicodeStringCopyEx 函数将一个字符串从一个UNICODE_STRING结构复制到另一个结构。
RtlUnicodeStringCopyString RtlUnicodeStringCopyString 函数将字符串复制到UNICODE_STRING结构中。
RtlUnicodeStringCopyStringEx RtlUnicodeStringCopyStringEx 函数将字符串复制到UNICODE_STRING结构中。
RtlUnicodeStringInit RtlUnicodeStringInit 函数初始化UNICODE_STRING结构。
RtlUnicodeStringInitEx RtlUnicodeStringInitEx 函数初始化UNICODE_STRING结构。
RtlUnicodeStringPrintf RtlUnicodeStringPrintf 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。
RtlUnicodeStringPrintfEx RtlUnicodeStringPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。
RtlUnicodeStringValidate RtlUnicodeStringValidate 函数验证UNICODE_STRING结构的内容。
RtlUnicodeStringValidateEx RtlUnicodeStringValidateEx 函数验证UNICODE_STRING结构的内容。
RtlUnicodeStringVPrintf RtlUnicodeStringVPrintf 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。
RtlUnicodeStringVPrintfEx RtlUnicodeStringVPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。

安全整数库例程

本部分介绍驱动程序的安全整数函数。 这些函数在 WDK 的 Ntintsafe.h 头文件中定义为内联函数。 安全整数函数旨在帮助驱动程序避免算术溢出错误。 这些函数分为两组:第一个将整数值从一种类型转换为另一种类型,第二种将执行数学函数。 有关这些函数的详细信息,请参阅使用安全整数函数。

Windows SDK 中的 Intsafe.h 头文件定义了一组类似的安全整数函数,供应用程序使用。 有关此版本的安全整数函数的详细信息,请参阅 Intsafe.h Functions。

数据转换

函数 说明
InterlockedExchange 将 LONG 类型的变量设置为作为原子操作的给定值;返回变量的原始值。
RtlConvertLongToLargeInteger 将给定的 LONG 值转换为LARGE_INTEGER值。
RtlConvertUlongToLargeInteger 将给定的 ULONG 值转换为LARGE_INTEGER值。
RtlTimeFieldsToTime 将TIME_FIELDS结构中的信息转换为系统时间。
RtlTimeToTimeFields 将系统时间值转换为缓冲TIME_FIELDS值。
ExSystemTimeToLocalTime 将当前区域设置的时区偏差添加到 GMT 系统时间,将其转换为本地时间。
ExLocalTimeToSystemTime 从本地时间减去时区偏差,将其转换为 GMT 系统时间。
RtlAnsiStringToUnicodeString 将缓冲的 ANSI 字符串转换为 Unicode 字符串,给定指向源字符串缓冲区的指针和指向目标缓冲区的调用方提供的存储地址。 (如果调用方不提供 storage.) ,此例程将分配目标缓冲区
RtlUnicodeStringToAnsiString 将缓冲的 Unicode 字符串转换为 ANSI 字符串,给定指向源字符串缓冲区的指针和指向目标缓冲区的调用方提供的存储地址。 (如果调用方不提供 storage.) ,此例程将分配目标缓冲区
RtlUpperString 将缓冲字符串的副本转换为大写,并将副本存储在目标缓冲区中。
RtlUpcaseUnicodeString 将缓冲 Unicode 字符串的副本转换为大写,并将副本存储在目标缓冲区中。
RtlCharToInteger 将单字节字符值转换为指定基中的整数。
RtlIntegerToUnicodeString 将指定基中的无符号整数值转换为给定缓冲区中的一个或多个 Unicode 字符。
RtlUnicodeStringToInteger 将整数的 Unicode 字符串表示形式转换为其等效的整数。

对Driver-Managed对象的访问

函数 说明
ExCreateCallback 创建或打开回调对象。
ExNotifyCallback 调用以前创建或打开的回调对象注册的回调例程。
ExRegisterCallback 向以前创建的或打开的回调对象注册回调例程,以便在为回调例程定义的条件时通知调用方。
ExUnregisterCallback 取消使用回调对象的回调例程的注册。
IoRegisterDeviceInterface (设备接口) 注册设备功能,驱动程序可以允许应用程序或其他系统组件使用。
IoSetDeviceInterfaceState 启用或禁用以前注册的设备接口。 应用程序和其他系统组件只能打开已启用的接口。
IoGetDeviceInterfaceAlias 如果别名存在,则返回指定接口类的别名设备接口。 如果设备接口由同一基础设备公开,并且具有相同的接口引用字符串,但属于不同的接口类,则设备接口被视为别名。
IoGetDeviceInterfaces 返回特定设备接口类的设备接口列表 (,例如支持 HID 接口) 系统上的所有设备。
IoGetFileObjectGenericMapping 返回有关通用访问权限与文件对象特定访问权限之间的映射的信息。
IoSetShareAccess 设置允许访问表示设备的给定文件对象。 (只有最高级别的驱动程序可以调用此例程。)
IoCheckShareAccess 检查打开文件对象的请求是否指定与打开文件对象的当前共享访问权限兼容的所需访问。 (只有最高级别的驱动程序可以调用此例程。)
IoUpdateShareAccess 修改给定文件对象的当前共享访问权限。 (只有最高级别的驱动程序可以调用此例程。)
IoRemoveShareAccess 还原之前对 IoUpdateShareAccess 调用修改的给定文件对象的共享访问权限。
RtlLengthSecurityDescriptor 返回给定安全描述符的大小(以字节为单位)。
RtlValidSecurityDescriptor 返回给定的安全描述符是否有效。
RtlCreateSecurityDescriptor 将新的安全描述符初始化为绝对格式,其默认值 (有效,且没有任何安全约束) 。
RtlSetDaclSecurityDescriptor 以绝对格式设置给定安全描述符的任意 ACL 信息。
SeAssignSecurity 为新对象生成安全描述符,前提是其父目录的安全描述符 ((如果有) 和最初请求该对象的安全性)。
SeDeassignSecurity 解除分配与使用 SeAssignSecurity 创建的安全描述符关联的内存。
SeValidSecurityDescriptor 返回给定的安全描述符是否在结构上有效。
SeAccessCheck 返回一个布尔值,该值指示是否可以向受安全描述符和当前所有者保护的对象授予请求的访问权限。
SeSinglePrivilegeCheck 返回一个布尔值,该值指示当前线程是否至少具有给定特权级别。

错误处理

函数 说明
IoAllocateErrorLogEntry 分配并初始化错误日志数据包;返回一个指针,以便调用方可以提供错误日志数据,并使用数据包调用 IoWriteErrorLogEntry。
IoFreeErrorLogEntry 释放 IoAllocateErrorLogEntry 分配的错误日志条目。
IoWriteErrorLogEntry 将以前分配的错误日志数据包(由驱动程序填充)排队到系统错误日志记录线程。
IoIsErrorUserInduced 返回一个布尔值,该值指示 I/O 请求是否由于以下 (用户可更正) 条件之一而失败:STATUS_IO_TIMEOUT、STATUS_DEVICE_NOT_READY、STATUS_UNRECOGNIZED_MEDIA、STATUS_VERIFY_REQUIRED、STATUS_WRONG_VOLUME、STATUS_MEDIA_WRITE_PROTECTED或STATUS_NO_MEDIA_IN_DEVICE。 如果结果为 TRUE,则可移动媒体驱动程序必须在完成 IRP 之前调用 IoSetHardErrorOrVerifyDevice。
IoSetHardErrorOrVerifyDevice 提供由于用户引起的错误导致给定 IRP 失败的设备对象,例如为请求的操作提供不正确的媒体或更改媒体,然后再完成请求的操作。 (文件系统驱动程序使用关联的设备对象向用户发送对话框;然后,用户可以更正错误或重试 operation.)
IoSetThreadHardErrorMode 使用 IoRaiseHardError 或 IoRaiseInformationalHardError 启用或禁用当前线程的错误报告。
IoRaiseHardError 导致向用户发送一个对话框,指示给定的 IRP 在给定设备对象上为可选的 VPB 失败,以便用户可以更正错误或重试操作。
IoRaiseInformationalHardError 导致向用户发送对话框,显示 I/O 错误状态和可选字符串,并提供详细信息。
ExRaiseStatus 引发错误状态,以便调用调用方提供的结构化异常处理程序。 (此例程仅适用于提供异常处理程序的最高级别驱动程序,尤其是文件系统。)
KeBugCheckEx 在调用方发现无法恢复的不一致,除非系统关闭,否则会以受控的方式关闭系统,显示 bug 检查代码和可能的详细信息。 系统关闭后,此例程会显示 bug 检查,并可能显示其他信息。 (调试开发不足驱动程序时,可以调用此例程。否则,当驱动程序通过失败 IRP 和调用 IoAllocateErrorLogEntry 和 IoWriteErrorLogEntry.) 来处理错误时,不应调用此例程
KeBugCheck 当调用方发现一个无法恢复的不一致(如果调用方继续运行)会损坏系统时,以受控的方式关闭系统。 KeBugCheckEx 更可取。
KeInitializeCallbackRecord 在设备驱动程序调用 KeRegisterBugCheckCallback 之前初始化 bug 检查回调记录。
KeRegisterBugCheckCallback 注册设备驱动程序的 bug 检查回调例程,如果发生系统 bug 检查,将调用该例程。 此类驱动程序提供的例程保存驱动程序确定的状态信息,例如设备寄存器的内容,否则不会写入系统故障转储文件。
KeDeregisterBugCheckCallback 从已注册的 bug 检查回调例程集中删除设备驱动程序的回调例程。

IOCTL

 
IOCTL_SYSENV_ENUM_VARIABLES

返回有关使用 SysEnv 设备的系统环境变量的信息。
IOCTL_SYSENV_GET_VARIABLE

使用 SysEnv 设备获取指定系统环境变量的值。
IOCTL_SYSENV_QUERY_VARIABLE_INFO

IOCTL_SYSENV_QUERY_VARIABLE_INFO使用 SysEnv 设备返回有关系统环境变量的信息。
IOCTL_SYSENV_SET_VARIABLE

使用 SysEnv 设备设置指定系统环境变量的值。

枚举

 
BDCB_CALLBACK_TYPE

BDCB_CALLBACK_TYPE枚举指定传递给BOOT_DRIVER_CALLBACK_FUNCTION例程的回调是状态更新还是启动启动驱动程序初始化通知。
BDCB_CLASSIFICATION

BDCB_CLASSIFICATION枚举列出了启动启动映像的不同分类。
BDCB_STATUS_UPDATE_TYPE

BDCB_STATUS_UPDATE_TYPE枚举列出了启动驱动程序回调状态更新的类型。
BOUND_CALLBACK_STATUS

BOUND_CALLBACK_STATUS枚举指示 BoundCallback 函数如何处理用户模式边界异常。
BUS_DATA_TYPE

_BUS_DATA_TYPE枚举 (miniport.h) 定义指示总线配置空间类型的值。
BUS_DATA_TYPE

_BUS_DATA_TYPE枚举 (ntddk.h) 定义指示总线配置空间类型的值。
CLFS_CONTEXT_MODE

CLFS_CONTEXT_MODE枚举指示从流中读取一组记录时,通用日志文件系统 (CLFS) 驱动程序所遵循的序列类型。
CLFS_MGMT_POLICY_TYPE

CLFS_MGMT_POLICY_TYPE枚举类型标识 CLFS 管理策略的类型。
CLS_LOG_INFORMATION_CLASS

CLFS_LOG_INFORMATION_CLASS枚举指示调用 ClfsQueryLogFileInformation 请求的信息类型。
D3COLD_LAST_TRANSITION_STATUS

D3COLD_LAST_TRANSITION_STATUS枚举指示 D3hot 设备电源状态的最新转换是否随后转换为 D3cold 设备电源状态。
DEVICE_DIRECTORY_TYPE

从中加载驱动程序的目录。
DEVICE_INSTALL_STATE

DEVICE_INSTALL_STATE枚举描述设备的安装状态。
DEVICE_POWER_STATE

DEVICE_POWER_STATE枚举类型指示设备电源状态。
DEVICE_POWER_STATE

了解DEVICE_POWER_STATE枚举类型如何指示设备电源状态。
DEVICE_REGISTRY_PROPERTY

DEVICE_REGISTRY_PROPERTY枚举标识存储在注册表中的设备属性。
DEVICE_REMOVAL_POLICY

DEVICE_REMOVAL_POLICY枚举描述设备的删除策略。
DEVICE_RESET_TYPE

DEVICE_RESET_TYPE枚举指定通过调用 GUID_DEVICE_RESET_INTERFACE_STANDARD 接口的 DeviceReset 例程请求的设备重置的类型。
DEVICE_USAGE_NOTIFICATION_TYPE

详细了解:DEVICE_USAGE_NOTIFICATION_TYPE枚举
DEVICE_WAKE_DEPTH

DEVICE_WAKE_DEPTH枚举指定设备触发唤醒信号的最深设备电源状态。
DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_TYPE

提供从 MDL 创建公共缓冲区时可以提供的可选配置类型。 与类型对应的配置值保存在DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION结构中。
DMA_COMPLETION_STATUS

DMA_COMPLETION_STATUS枚举描述 DMA 传输的完成状态。
DOMAIN_CONFIGURATION_ARCH

定义指定系统体系结构类型的值。
DRIVER_REGKEY_TYPE

详细了解:DRIVER_REGKEY_TYPE枚举
ENLISTMENT_INFORMATION_CLASS

ENLISTMENT_INFORMATION_CLASS枚举标识 ZwSetInformationEnlistment 例程可以设置的信息类型,ZwQueryInformationEnlistment 例程可以检索登记对象。
EX_POOL_PRIORITY

了解以下内容的详细信息:EX_POOL_PRIORITY
GPIO_PIN_CONFIG_TYPE

了解GPIO_PIN_CONFIG_TYPE枚举如何描述连接 IO 资源。
GPIO_PIN_CONFIG_TYPE

GPIO_PIN_CONFIG_TYPE枚举描述连接 IO 资源。
GPIO_PIN_IORESTRICTION_TYPE

了解GPIO_PIN_IORESTRICTION_TYPE枚举如何描述 GPIO 引脚限制为执行的函数。
GPIO_PIN_IORESTRICTION_TYPE

GPIO_PIN_IORESTRICTION_TYPE枚举描述 GPIO 引脚限制为执行的函数。
HAL_QUERY_INFORMATION_CLASS

HAL_QUERY_INFORMATION_CLASS枚举仅供系统使用。 请勿使用。
HAL_SET_INFORMATION_CLASS

_HAL_SET_INFORMATION_CLASS枚举定义 pHalSetSystemInformation 回调函数为内部使用保留的值。
HARDWARE_COUNTER_TYPE

HARDWARE_COUNTER_TYPE枚举指定硬件计数器的类型。
IMAGE_POLICY_ENTRY_TYPE

不支持_IMAGE_POLICY_ENTRY_TYPE枚举。
IMAGE_POLICY_ID

不支持_IMAGE_POLICY_ID枚举。
INTERFACE_TYPE

_INTERFACE_TYPE枚举 (miniport.h) 定义指示发布接口的总线驱动程序类型的值。
INTERFACE_TYPE

_INTERFACE_TYPE枚举 (wdm.h) 定义指示发布接口的总线驱动程序类型的值。
IO_ACCESS_MODE

定义计划文件 I/O (SFIO) 的访问模式类型。
IO_ACCESS_MODE

_IO_ACCESS_MODE定义计划文件 I/O (SFIO) 的访问模式类型。
IO_ACCESS_TYPE

定义计划文件 I/O (SFIO) 的访问权限。
IO_ACCESS_TYPE

_IO_ACCESS_TYPE定义计划文件 I/O (SFIO) 的访问权限。
IO_ALLOCATION_ACTION

IO_ALLOCATION_ACTION枚举类型用于指定 AdapterControl 和 ControllerControl 例程的返回值。
IO_CONTAINER_INFORMATION_CLASS

IO_CONTAINER_INFORMATION_CLASS枚举包含常量,这些常量指示内核模式驱动程序可以请求的系统信息的类。
IO_CONTAINER_NOTIFICATION_CLASS

IO_CONTAINER_NOTIFICATION_CLASS枚举包含常量,这些常量指示内核模式驱动程序可以注册以接收通知的事件类。
IO_NOTIFICATION_EVENT_CATEGORY

详细了解:IO_NOTIFICATION_EVENT_CATEGORY枚举
IO_PAGING_PRIORITY

IO_PAGING_PRIORITY枚举描述分页 I/O IRP 的优先级值。
IO_PRIORITY_HINT

IO_PRIORITY_HINT枚举类型指定 IRP 的优先级提示。
IO_SESSION_EVENT

IO_SESSION_EVENT枚举指示驱动程序接收通知的会话事件的类型。
IO_SESSION_STATE

IO_SESSION_STATE枚举包含指示用户会话的当前状态的常量。
IOMMU_DEVICE_CREATION_CONFIGURATION_TYPE

描述IOMMU_DMA_DEVICE创建时使用的配置类型,具体取决于设备类型和系统。
IOMMU_DMA_DOMAIN_TYPE

描述可以通过DMA_IOMMU_INTERFACE_EX创建和交互的域类型。
IOMMU_DMA_LOGICAL_ALLOCATOR_TYPE

IOMMU_DMA_LOGICAL_ALLOCATOR_TYPE枚举指示IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG结构中描述的逻辑分配器的类型。
IOMMU_MAP_PHYSICAL_ADDRESS_TYPE

IOMMU_MAP_PHYSICAL_ADDRESS_TYPE枚举指示IOMMU_MAP_PHYSICAL_ADDRESS结构中描述的物理地址的格式。
IRQ_DEVICE_POLICY

_IRQ_DEVICE_POLICY枚举 (miniport.h) 类型指示用于将设备中断分配给不同处理器的操作系统策略。
IRQ_DEVICE_POLICY

_IRQ_DEVICE_POLICY枚举 (wdm.h) 类型指示用于将中断从设备分配给不同处理器的操作系统策略。
IRQ_PRIORITY

_IRQ_PRIORITY枚举 (miniport.h) 类型指示系统应为设备中断提供服务的优先级。
IRQ_PRIORITY

_IRQ_PRIORITY枚举 (wdm.h) 类型指示系统应为设备中断提供服务的优先级。
KBUGCHECK_CALLBACK_REASON

KBUGCHECK_CALLBACK_REASON枚举类型指定执行 bug 检查回调的情况。
KBUGCHECK_DUMP_IO_TYPE

KBUGCHECK_DUMP_IO_TYPE枚举类型标识故障转储文件中数据节的类型。
KEY_INFORMATION_CLASS

KEY_INFORMATION_CLASS枚举类型表示要提供有关注册表项的信息的类型。
KEY_SET_INFORMATION_CLASS

KEY_SET_INFORMATION_CLASS枚举类型表示要为注册表项设置的信息的类型。
KEY_VALUE_INFORMATION_CLASS

KEY_VALUE_INFORMATION_CLASS枚举类型指定要提供有关注册表项值的信息类型。
KINTERRUPT_MODE

_KINTERRUPT_MODE枚举 (miniport.h) 类型指示中断是级别触发还是边缘触发。
KINTERRUPT_MODE

_KINTERRUPT_MODE枚举 (wdm.h) 类型指示中断是级别触发还是边缘触发。
KINTERRUPT_POLARITY

_KINTERRUPT_POLARITY枚举 (miniport.h) 包含指示设备如何在中断行上发出中断请求信号的值。
KINTERRUPT_POLARITY

_KINTERRUPT_POLARITY枚举 (wdm.h) 包含指示设备如何在中断行上向中断请求发出信号的值。
KTMOBJECT_TYPE

KTMOBJECT_TYPE枚举标识 KTM 支持的对象类型。
MEM_EXTENDED_PARAMETER_TYPE

定义扩展参数的值用于文件映射到地址空间。
MEM_SECTION_EXTENDED_PARAMETER_TYPE

详细了解:MEM_SECTION_EXTENDED_PARAMETER_TYPE枚举
MEMORY_CACHING_TYPE

_MEMORY_CACHING_TYPE枚举 (miniport.h) 类型指定分配或映射内存时允许的缓存行为。
MEMORY_CACHING_TYPE

_MEMORY_CACHING_TYPE枚举 (wdm.h) 类型指定分配或映射内存时允许的缓存行为。
MONITOR_DISPLAY_STATE

指示正在显示的监视器的电源状态。
MONITOR_DISPLAY_STATE

了解此方法如何指示正在显示的监视器的电源状态。
PEP_ACPI_OBJECT_TYPE

了解PEP_ACPI_OBJECT_TYPE枚举如何指示 ACPI 对象的类型。
PEP_ACPI_OBJECT_TYPE

PEP_ACPI_OBJECT_TYPE枚举指示 ACPI 对象的类型。
PEP_ACPI_RESOURCE_TYPE

了解如何使用PEP_ACPI_RESOURCE_TYPE枚举来标识PEP_ACPI_RESOURCE联合中包含的 ACPI 资源的类型。
PEP_ACPI_RESOURCE_TYPE

PEP_ACPI_RESOURCE_TYPE枚举用于标识PEP_ACPI_RESOURCE联合中包含的 ACPI 资源的类型。
PEP_DEVICE_ACCEPTANCE_TYPE

了解PEP_DEVICE_ACCEPTANCE_TYPE枚举如何指示 PEP 是否接受设备的所有权。
PEP_DEVICE_ACCEPTANCE_TYPE

PEP_DEVICE_ACCEPTANCE_TYPE枚举指示 PEP 是否接受设备的所有权。
PEP_PERF_STATE_TYPE

了解PEP_PERF_STATE_TYPE枚举如何指示为组件的性能状态 (P 状态) 指定的性能信息的类型。
PEP_PERF_STATE_TYPE

PEP_PERF_STATE_TYPE枚举指示为组件的性能状态 (P 状态) 指定的性能信息的类型。
PEP_PERF_STATE_UNIT

了解PEP_PERF_STATE_UNIT枚举如何指示指定组件的性能状态 (P 状态) 的度量单位。
PEP_PERF_STATE_UNIT

PEP_PERF_STATE_UNIT枚举指示指定组件 (P 状态) 的性能状态的度量单位。
PEP_PROCESSOR_IDLE_CANCEL_CODE

PEP_PROCESSOR_IDLE_CANCEL_CODE枚举值指示处理器无法进入以前由平台扩展插件 (PEP) 选择的空闲状态的原因。
PEP_PROCESSOR_IDLE_TYPE

PEP_PROCESSOR_IDLE_TYPE枚举指示空闲约束仅适用于当前处理器或硬件平台中的所有处理器。
PEP_WORK_TYPE

了解PEP_WORK_TYPE枚举如何描述平台扩展插件 (PEP) 请求的工作类型。
PEP_WORK_TYPE

PEP_WORK_TYPE枚举描述了平台扩展插件 (PEP) 请求的工作类型。
PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE

PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE枚举包含常量,这些常量指示由PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构描述的硬件性能计数器资源的类型。
PO_FX_PERF_STATE_TYPE

PO_FX_PERF_STATE_TYPE枚举包含描述PO_FX_COMPONENT_PERF_SET中性能状态类型的值。
PO_FX_PERF_STATE_UNIT

PO_FX_PERF_STATE_UNIT枚举包含描述由PO_FX_COMPONENT_PERF_SET中性能状态控制的单位类型的值。
PO_INTERNAL_WAKE_SOURCE_TYPE

详细了解:PO_INTERNAL_WAKE_SOURCE_TYPE枚举
POOL_EXTENDED_PARAMETER_TYPE

了解以下内容的详细信息:POOL_EXTENDED_PARAMETER_TYPE
POOL_TYPE

POOL_TYPE枚举类型指定要分配的系统内存的类型。
POWER_ACTION

POWER_ACTION枚举标识计算机上可能发生的系统电源操作。
POWER_ACTION

了解 wdm.h) (POWER_ACTION枚举如何标识计算机上可能发生的系统电源操作。
POWER_INFORMATION_LEVEL

指示电源级别信息。
POWER_INFORMATION_LEVEL

POWER_INFORMATION_LEVEL枚举电源级别信息指示器。
POWER_MONITOR_REQUEST_REASON

定义监视器电源转换原因的值。
POWER_REQUEST_TYPE

POWER_REQUEST_TYPE枚举指示电源请求类型。
POWER_REQUEST_TYPE

了解POWER_REQUEST_TYPE枚举如何指示电源请求类型。
POWER_STATE_TYPE

POWER_STATE_TYPE枚举类型指示电源状态值是系统电源状态或设备电源状态。
POWER_STATE_TYPE

了解POWER_STATE_TYPE枚举类型如何指示电源状态值是系统电源状态或设备电源状态。
PROCESS_MITIGATION_POLICY

枚举进程缓解策略。
PSCREATEPROCESSNOTIFYTYPE

指示进程通知的类型。 在 PsSetCreateProcessNotifyRoutineEx2 中使用此枚举来注册回调通知。
PSCREATETHREADNOTIFYTYPE

指示线程通知的类型。 在 PsSetCreateThreadNotifyRoutineEx 中使用此枚举来注册与线程创建或删除关联的回调通知。
REG_NOTIFY_CLASS

REG_NOTIFY_CLASS枚举类型指定配置管理器传递给 RegistryCallback 例程的注册表操作的类型。
RESOURCEMANAGER_INFORMATION_CLASS

RESOURCEMANAGER_INFORMATION_CLASS枚举标识 ZwQueryInformationResourceManager 例程可以为资源管理器对象检索的信息类型。
SE_IMAGE_TYPE

详细了解:_SE_IMAGE_TYPE枚举
STATE_LOCATION_TYPE

定义设备和驱动程序文件的持久状态位置的值。
SUBSYSTEM_INFORMATION_TYPE

指示进程或线程的子系统类型。 此枚举在 NtQueryInformationProcess 和 NtQueryInformationThread 调用中使用。
SYSTEM_POWER_STATE

SYSTEM_POWER_STATE枚举类型用于指示系统电源状态。
SYSTEM_POWER_STATE

了解如何使用SYSTEM_POWER_STATE枚举类型来指示系统电源状态。
TRACE_INFORMATION_CLASS

TRACE_INFORMATION_CLASS枚举类型用于指示与 WMI 事件跟踪会话关联的信息类型。
TRANSACTION_INFORMATION_CLASS

TRANSACTION_INFORMATION_CLASS枚举指定 ZwSetInformationTransaction 可以设置的信息类型,ZwQueryInformationTransaction 可以检索事务管理器对象。
TRANSACTION_OUTCOME

TRANSACTION_OUTCOME枚举定义 KTM 可以分配给事务的结果 (结果) 结果。
TRANSACTION_STATE

TRANSACTION_STATE枚举定义 KTM 可以分配给事务的状态。
TRANSACTIONMANAGER_INFORMATION_CLASS

TRANSACTIONMANAGER_INFORMATION_CLASS枚举指定 ZwQueryInformationTransactionManager 例程可以为事务管理器对象检索的信息类型。
WHEA_PCI_RECOVERY_SIGNAL

描述WHEA_PCI_RECOVERY_SIGNAL枚举。
WHEA_PCI_RECOVERY_STATUS

描述WHEA_PCI_RECOVERY_STATUS枚举。
WHEAP_DPC_ERROR_EVENT_TYPE

本主题介绍WHEAP_DPC_ERROR_EVENT_TYPE枚举。
WORK_QUEUE_TYPE

WORK_QUEUE_TYPE枚举类型指示处理工作项的系统工作线程的类型。

函数

 
_BitTest64

本主题介绍_BitTest64函数。
_BitTest64

_BitTest64函数...
_BitTestAndComplement64

本主题介绍_BitTestAndComplement64函数。
_BitTestAndComplement64

_BitTestAndComplement64函数...
_BitTestAndReset64

本主题介绍_BitTestAndReset64函数。
_BitTestAndReset64

_BitTestAndReset64函数...
_BitTestAndSet64

本主题介绍_BitTestAndSet64函数。
_BitTestAndSet64

_BitTestAndSet64函数...
_ReadWriteBarrier

介绍 readWriteBarrier~r1 函数 (miniport.h) 。
_ReadWriteBarrier

介绍 readWriteBarrier~r2 函数 (wdm.h) 。
_WHEA_SIGNAL_HANDLER_OVERRIDE_CALLBACK

本主题介绍_WHEA_SIGNAL_HANDLER_OVERRIDE_CALLBACK回调函数。
ALLOCATE_FUNCTION_EX

当客户端从空的 lookaside 列表中请求条目时,LookasideListAllocateEx 例程为新的 lookaside 列表条目分配存储。
AppendTailList

AppendTailList 例程将LIST_ENTRY结构的双重链接列表追加到另一个LIST_ENTRY结构的双链接列表的尾部。
ARM64_SYSREG_CRM

返回给定 ARM 系统寄存器的 CRn 字段。
ARM64_SYSREG_CRN

了解该方法如何返回给定 ARM 系统寄存器的 CRn 字段。
ARM64_SYSREG_OP1

返回给定 ARM 系统寄存器的 op1 字段。
ARM64_SYSREG_OP2

返回给定 ARM 系统寄存器的 op2 字段。
AuxKlibEnumerateSystemFirmwareTables

AuxKlibEnumerateSystemFirmwareTables 例程枚举指定类型的所有系统固件表。
AuxKlibGetBugCheckData

AuxKlibGetBugCheckData 例程检索刚刚发生的 bug 检查的相关信息。
AuxKlibGetImageExportDirectory

AuxKlibGetImageExportDirectory 例程返回图像模块的导出目录。
AuxKlibGetSystemFirmwareTable

AuxKlibGetSystemFirmwareTable 例程从固件表提供程序检索指定的固件表。
AuxKlibInitialize

AuxKlibInitialize 例程初始化辅助Kernel-Mode库。
AuxKlibQueryModuleInformation

AuxKlibQueryModuleInformation 例程检索有关操作系统加载的图像模块的信息。
BarrierAfterRead

介绍 BarrierAfterRead 函数 (miniport.h) 。
BarrierAfterRead

介绍 BarrierAfterRead~r1 (miniport.h) 函数。
BarrierAfterRead

介绍 BarrierAfterRead~r2 函数 (miniport.h) 。
BarrierAfterRead

介绍 barrierAfterRead 函数 (wdm.h) 。
BarrierAfterRead

描述 (wdm.h) 的 BarrierAfterRead~r1 函数。
BarrierAfterRead

介绍 barrierAfterRead~r2 函数 (wdm.h) 。
BOOT_DRIVER_CALLBACK_FUNCTION

详细了解:BOOT_DRIVER_CALLBACK_FUNCTION回调函数
BOUND_CALLBACK

每当系统针对用户模式线程发出边界异常时,将执行 BoundCallback 例程。
ClfsAddLogContainer

ClfsAddLogContainer 例程将容器添加到 CLFS 日志。
ClfsAddLogContainerSet

ClfsAddLogContainerSet 例程以原子方式将一组容器添加到 CLFS 日志。
ClfsAdvanceLogBase

ClfsAdvanceLogBase 例程设置 CLFS 流的基 LSN。
ClfsAlignReservedLog

ClfsAlignReservedLog 例程计算必须为指定记录集保留的空间大小。 大小计算包括标头所需的空间和扇区对齐所需的空间。
ClfsAllocReservedLog

ClfsAllocReservedLog 例程保留一组记录的封送区域中的空间。
ClfsCloseAndResetLogFile

ClfsCloseAndResetLogFile 例程释放对指定日志文件对象的所有引用,并标记其关联的流进行重置。
ClfsCloseLogFileObject

ClfsCloseLogFileObject 例程释放对日志文件对象的所有引用。
ClfsCreateLogFile

ClfsCreateLogFile 例程创建或打开 CLFS 流。 如有必要,ClfsCreateLogFile 还会创建保存流记录的基础物理日志。
ClfsCreateMarshallingArea

ClfsCreateMarshallingArea 例程为 CLFS 流创建封送区域,并返回指向表示新封送区域的不透明上下文的指针。
ClfsCreateScanContext

ClfsCreateScanContext 例程创建一个扫描上下文,该上下文可用于循环访问指定 CLFS 日志的容器。
ClfsDeleteLogByPointer

ClfsDeleteLogByPointer 例程标记要删除的 CLFS 流。
ClfsDeleteLogFile

ClfsDeleteLogFile 例程标记要删除的 CLFS 流。
ClfsDeleteMarshallingArea

ClfsDeleteMarshallingArea 例程删除封送区域。
ClfsFlushBuffers

ClfsFlushBuffers 例程强制指定封送区域中的所有日志 I/O 块以稳定存储。
ClfsFlushToLsn

ClfsFlushToLsn 例程强制存储稳定,所有 LSN 小于或等于指定 LSN 的记录。
ClfsGetContainerName

ClfsGetContainerName 例程返回指定容器的路径名称。
ClfsGetIoStatistics

ClfsGetIoStatistics 例程返回指定 CLFS 日志的 I/O 统计信息。
ClfsLsnBlockOffset

ClfsLsnBlockOffset 例程返回指定 LSN 中包含的扇区对齐块偏移量。
ClfsLsnContainer

ClfsLsnContainer 例程返回指定 LSN 中包含的逻辑容器标识符。
ClfsLsnCreate

ClfsLsnCreate 例程在给定容器标识符、块偏移量和记录序列号的情况下, (LSN) 创建日志序列号。
ClfsLsnEqual

ClfsLsnEqual 例程确定同一流中的两个 LSN 是否相等。
ClfsLsnGreater

ClfsLsnGreater 例程确定一个 LSN 是否大于另一个 LSN。 这两个 LSN 必须来自同一流。
ClfsLsnLess

ClfsLsnLess 例程确定一个 LSN 是否小于另一个 LSN。 这两个 LSN 必须来自同一流。
ClfsLsnNull

ClfsLsnNull 例程确定指定的 LSN 是否等于最小可能的 LSN,CLFS_LSN_NULL。
ClfsLsnRecordSequence

ClfsLsnRecordSequence 例程返回指定 LSN 中包含的记录序列号。
ClfsMgmtDeregisterManagedClient

ClfsMgmtDeregisterManagedClient 例程删除客户端与日志之间的连接,以便客户端不再管理日志。
ClfsMgmtHandleLogFileFull

ClfsMgmtHandleLogFileFull 例程尝试在日志中提供更多空间。 它可能会通过向日志添加容器来提供更多空间,或者可能会要求客户端移动其日志尾部。
ClfsMgmtInstallPolicy

ClfsMgmtInstallPolicy 例程向物理日志添加CLFS_MGMT_POLICY结构。
ClfsMgmtQueryPolicy

ClfsMgmtQueryPolicy 例程检索日志的特定CLFS_MGMT_POLICY结构。
ClfsMgmtRegisterManagedClient

ClfsMgmtRegisterManagedClient 例程创建将管理 CLFS 日志的客户端。
ClfsMgmtRemovePolicy

ClfsMgmtRemovePolicy 例程将日志的CLFS_MGMT_POLICY结构重置为其默认值。
ClfsMgmtSetLogFileSize

ClfsMgmtSetLogFileSize 例程将容器添加到日志或删除日志中的容器。
ClfsMgmtSetLogFileSizeAsClient

ClfsMgmtSetLogFileSizeAsClient 例程通过将容器添加到客户端日志或删除客户端日志中的容器来设置日志文件大小。
ClfsMgmtTailAdvanceFailure

ClfsMgmtTailAdvanceFailure 例程通知 CLFS 管理客户端无法推进日志尾部。
ClfsQueryLogFileInformation

ClfsQueryLogFileInformation 例程返回指定 CLFS 流的元数据和状态信息或其基础物理日志或两者。
ClfsReadLogRecord

ClfsReadLogRecord 例程读取 CLFS 流中的目标记录,并返回一个读取上下文,调用方可以使用该上下文在流中读取前面或之后的记录。
ClfsReadNextLogRecord

ClfsReadNextLogRecord 例程读取序列中的下一条记录,相对于读取上下文中的当前记录。
ClfsReadPreviousRestartArea

ClfsReadPreviousRestartArea 例程相对于读取上下文中的当前记录读取以前的重启记录。
ClfsReadRestartArea

ClfsReadRestartArea 例程读取最近写入指定 CLFS 流的重启记录。
ClfsRemoveLogContainer

ClfsRemoveLogContainer 例程从 CLFS 日志中删除容器。
ClfsRemoveLogContainerSet

ClfsRemoveLogContainerSet 例程从 CLFS 日志中原子删除一组容器。
ClfsReserveAndAppendLog

ClfsReserveAndAppendLog 例程在封送区域中保留空间,或者将记录追加到封送区域,或者同时以原子方式执行。
ClfsReserveAndAppendLogAligned

ClfsReserveAndAppendLogAligned 例程在封送区域中保留空间,或者将记录追加到封送区域,或者同时以原子方式执行。 记录的数据在指定的边界上对齐。
ClfsScanLogContainers

ClfsScanLogContainers 例程检索属于特定 CLFS 日志的容器序列的描述性信息。
ClfsSetArchiveTail

ClfsSetArchiveTail 例程将 CLFS 日志的存档尾部设置为指定的 LSN。
ClfsSetEndOfLog

ClfsSetEndOfLog 例程截断 CLFS 流。
ClfsSetLogFileInformation

ClfsSetLogFileInformation 例程设置指定流及其基础物理日志的元数据和状态信息。
ClfsTerminateReadLog

ClfsTerminateReadLog 例程在释放与上下文关联的资源后使指定的读取上下文失效。
ClfsWriteRestartArea

ClfsWriteRestartArea 例程以原子方式将新的重启记录追加到 CLFS 流,将重启记录刷新到稳定存储,并选择性地更新流的基 LSN。
CmCallbackGetKeyObjectID

CmCallbackGetKeyObjectID 例程检索与指定注册表项对象关联的唯一标识符和对象名称。
CmCallbackGetKeyObjectIDEx

CmCallbackGetKeyObjectIDEx 例程检索与指定注册表项对象关联的唯一标识符和对象名称。
CmCallbackReleaseKeyObjectIDEx

CmCallbackReleaseKeyObjectIDEx 例程释放从 CmCallbackGetKeyObjectIDEx 例程获取的对象名称字符串。
CmGetBoundTransaction

CmGetBoundTransaction 例程返回指向事务对象的指针,该对象表示与指定注册表项对象关联的事务(如果有)。
CmGetCallbackVersion

CmGetCallbackVersion 例程检索配置管理器注册表回调功能的当前版本的主版本号和次要版本号。
CmRegisterCallback

对于 Windows Vista 及更高版本的操作系统版本,CmRegisterCallback 例程已过时。 请改用 CmRegisterCallbackEx。CmRegisterCallback 例程注册 RegistryCallback 例程。
CmRegisterCallbackEx

CmRegisterCallbackEx 例程注册 RegistryCallback 例程。
CmSetCallbackObjectContext

CmSetCallbackObjectContext 例程将指定的上下文信息与指定的注册表对象相关联。
CmUnRegisterCallback

CmUnRegisterCallback 例程取消注册以前注册的 CmRegisterCallback 或 CmRegisterCallbackEx 例程的 RegistryCallback 例程。
CUSTOM_SYSTEM_EVENT_TRIGGER_INIT

初始化CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG结构。
D3COLD_REQUEST_AUX_POWER

使函数设备对象 (FDO) 传达其辅助电源要求。
D3COLD_REQUEST_CORE_POWER_RAIL

启用函数设备对象 (FDO) ,以指示是否需要核心电源轨。
D3COLD_REQUEST_PERST_DELAY

使函数设备对象 (FDO) 传达其固定延迟时间的要求。
DEVICE_QUERY_BUS_SPECIFIC_RESET_HANDLER

本主题介绍DEVICE_QUERY_BUS_SPECIFIC_RESET_HANDLER回调函数。
DEVICE_RESET_HANDLER

DeviceReset 例程用于重置和恢复故障设备。
DMA_COMPLETION_ROUTINE

DmaCompletionRoutine 回调例程通知驱动程序以前请求系统 DMA 传输,此传输已完成。
DRIVER_ADD_DEVICE

AddDevice 例程负责为 即插即用 (PnP) 管理器枚举的设备创建功能设备对象 (FDO) 或筛选设备对象 (筛选器 DO) 。
DRIVER_CANCEL

Cancel 例程取消 I/O 操作。
DRIVER_CONTROL

此例程启动 DMA 数据传输或数据传输操作。
DRIVER_DISPATCH

回调例程服务各种 IRP。 有关函数代码的列表,请参阅“备注”。
DRIVER_INITIALIZE

DriverEntry 是在加载驱动程序后调用的第一个例程,负责初始化驱动程序。
DRIVER_LIST_CONTROL

AdapterListControl 例程启动直接内存访问 (DMA) 散点/收集操作。
DRIVER_REINITIALIZE

在驱动程序的 DriverEntry 例程返回后,重新初始化例程会继续驱动程序和设备初始化。
DRIVER_STARTIO

StartIo 例程启动 IRP 描述的 I/O 操作。
DRIVER_UNLOAD

Unload 例程执行在系统卸载驱动程序之前所需的任何操作。
EX_CALLBACK_FUNCTION

筛选器驱动程序的 RegistryCallback 例程可以监视、阻止或修改注册表操作。
ExAcquirePushLockExclusive

获取给定的推送锁,以便通过调用线程进行独占访问。
ExAcquirePushLockShared

获取给定的推送锁,以便通过调用线程进行共享访问。
ExAcquireResourceExclusiveLite

ExAcquireResourceExclusiveLite 例程获取给定的资源供调用线程进行独占访问。
ExAcquireResourceSharedLite

ExAcquireResourceSharedLite 例程获取由调用线程进行共享访问的给定资源。
ExAcquireRundownProtection

ExAcquireRundownProtection 例程尝试获取共享对象的运行保护,以便调用方可以安全地访问该对象。
ExAcquireRundownProtectionEx

ExAcquireRundownProtectionEx 例程尝试获取共享对象的运行保护,以便调用方可以安全地访问该对象。
ExAcquireSharedStarveExclusive

ExAcquireSharedStarveExclusive 例程获取用于共享访问的给定资源,而无需等待任何挂起尝试获取对同一资源的独占访问权限。
ExAcquireSharedWaitForExclusive

ExAcquireSharedWaitForExclusive 例程获取共享访问的给定资源(如果可以授予共享访问权限,并且没有独占服务员)。
ExAllocateFromLookasideListEx

ExAllocateFromLookasideListEx 例程从指定的 lookaside 列表中删除第一个条目,或者,如果列表为空,则动态分配新条目的存储。
ExAllocateFromLookasideListEx

本主题介绍 ExAllocateFromLookasideListEx 函数。
ExAllocateFromNPagedLookasideList

ExAllocateFromNPagedLookasideList 例程返回指向给定外观列表中的非分页条目的指针,或者返回指向新分配的非分页条目的指针。
ExAllocateFromPagedLookasideList

ExAllocateFromPagedLookasideList 例程返回指向给定外观列表中的分页条目的指针,或者返回指向新分配的分页条目的指针。
ExAllocatePool

ExAllocatePool 例程已过时,并且仅针对现有二进制文件导出。 请改用 ExAllocatePoolWithTag。 ExAllocatePool 分配池内存。
ExAllocatePool2

了解以下内容的详细信息:ExAllocatePool2
ExAllocatePool3

详细了解:ExAllocatePool3
ExAllocatePoolPriorityUninitialized

详细了解:ExAllocatePoolPriorityUninitialized
ExAllocatePoolPriorityZero

了解以下内容的详细信息:ExAllocatePoolPriorityZero
ExAllocatePoolQuotaUninitialized

详细了解:ExAllocatePoolQuotaUninitialized
ExAllocatePoolQuotaZero

详细了解:ExAllocatePoolQuotaZero
ExAllocatePoolUninitialized

详细了解:ExAllocatePoolUninitialized
ExAllocatePoolWithQuota

ExAllocatePoolWithQuota 分配池内存,但已过时。 它仅针对现有驱动程序二进制文件导出。 请改用 ExAllocatePoolWithQuotaTag。
ExAllocatePoolWithQuotaTag

ExAllocatePoolWithQuotaTag 例程分配池内存,针对当前进程收取配额。
ExAllocatePoolWithTag

ExAllocatePoolWithTag 例程分配指定类型的池内存,并返回指向已分配块的指针。
ExAllocatePoolWithTagPriority

ExAllocatePoolWithTagPriority 例程分配指定类型的池内存。
ExAllocatePoolZero

详细了解:ExAllocatePoolZero
ExAllocateTimer

ExAllocateTimer 例程分配并初始化计时器对象。
ExCancelTimer

ExCancelTimer 例程取消先前调用 ExSetTimer 例程设置的计时器。
ExConvertExclusiveToSharedLite

ExConvertExclusiveToSharedLite 例程将给定资源从获取的资源转换为共享访问获取的资源。
ExCreateCallback

ExCreateCallback 例程可以创建新的回调对象或代表调用方打开现有回调对象。
ExCreatePool

定义 ExCreatePool 函数。
ExDeleteLookasideListEx

ExDeleteLookasideListEx 例程删除 lookaside 列表。
ExDeleteNPagedLookasideList

ExDeleteNPagedLookasideList 例程会销毁非分页的 lookaside 列表。
ExDeletePagedLookasideList

ExDeletePagedLookasideList 例程会破坏分页外观列表。
ExDeleteResourceLite

ExDeleteResourceLite 例程从系统的资源列表中删除给定资源。
ExDeleteTimer

ExDeleteTimer 例程删除以前由 ExAllocateTimer 例程分配的计时器对象。
ExDestroyPool

定义 ExDestroyPool 函数。
ExFlushLookasideListEx

ExFlushLookasideListEx 例程刷新指定外观列表中的所有条目,并释放每个条目的分配存储。
ExFreePool

ExFreePool 宏 (ntddk.h) 例程解除分配之前分配的指定池内存块。
ExFreePool

ExFreePool 函数 (wdm.h) 解除分配之前分配的指定池内存块。
ExFreePool2

定义 ExFreePool2 函数。
ExFreePoolWithTag

ExFreePoolWithTag 例程解除分配使用指定标记分配的池内存块。
ExFreeToLookasideListEx

ExFreeToLookasideListEx 例程将条目插入到 lookaside 列表中,或者,如果列表已满,则释放条目的已分配存储。
ExFreeToLookasideListEx

本主题介绍 ExFreeToLookasideListEx 函数。
ExFreeToNPagedLookasideList

ExFreeToNPagedLookasideList 例程返回给定的 lookaside 列表或非分页池的非分页条目。
ExFreeToNPagedLookasideList

本主题介绍 ExFreeToNPagedLookasideList 函数。
ExFreeToPagedLookasideList

ExFreeToPagedLookasideList 例程返回给定外观列表或分页池的可分页条目。
ExGetExclusiveWaiterCount

ExGetExclusiveWaiterCount 例程返回对给定资源的独占访问权限的等待程序数。
ExGetFirmwareEnvironmentVariable

ExGetFirmwareEnvironmentVariable 例程获取指定系统固件环境变量的值。
ExGetFirmwareType

返回系统固件类型。
ExGetPreviousMode

ExGetPreviousMode 例程返回当前线程的上一个处理器模式。
ExGetSharedWaiterCount

ExGetSharedWaiterCount 例程返回对给定资源的共享访问权限的等待程序数。
ExInitializeDeleteTimerParameters

ExInitializeDeleteTimerParameters 例程初始化EXT_DELETE_PARAMETERS结构。
ExInitializeDeviceAts

描述 ExInitializeDeviceAts 函数。
ExInitializeDriverRuntime

了解以下内容的详细信息:ExInitializeDriverRuntime
ExInitializeFastMutex

ExInitializeFastMutex 例程初始化快速互斥变量,该变量用于将一组线程相互排斥的访问同步到共享资源。
ExInitializeLookasideListEx

ExInitializeLookasideListEx 例程初始化 lookaside 列表。
ExInitializeNPagedLookasideList

ExInitializeNPagedLookasideList 例程初始化指定大小的非分页条目的 lookaside 列表。
ExInitializePagedLookasideList

ExInitializePagedLookasideList 例程初始化指定大小的可分页条目的 lookaside 列表。
ExInitializePushLock

初始化推送锁变量。
ExInitializeResourceLite

ExInitializeResourceLite 例程初始化资源变量。
ExInitializeRundownProtection

ExInitializeRundownProtection 例程初始化共享对象的运行保护。
ExInitializeSetTimerParameters

ExInitializeSetTimerParameters 例程初始化EXT_SET_PARAMETERS结构。
ExInterlockedAddLargeInteger

ExInterlockedAddLargeInteger 例程将大整数值作为原子操作添加到指定变量。
ExInterlockedAddLargeStatistic

ExInterlockedAddLargeStatistic 例程对 LARGE_INTEGER 变量执行 ULONG 递增值的互锁加法。
ExInterlockedAddUlong

ExInterlockedAddUlong 例程将无符号长值作为原子操作添加到给定无符号整数。
ExInterlockedCompareExchange64

ExInterlockedCompareExchange64 例程将一个整数变量与另一个整数变量进行比较,如果它们相等,请将第一个变量设置为调用方提供的值。
ExInterlockedFlushSList

ExInterlockedFlushSList 例程以原子方式从序列单行链接列表中删除所有条目。
ExInterlockedInsertHeadList

ExInterlockedInsertHeadList 例程以原子方式在LIST_ENTRY结构两次链接列表的开头插入一个条目。
ExInterlockedInsertTailList

ExInterlockedInsertTailList 例程以原子方式在LIST_ENTRY结构两次链接列表的末尾插入一个条目。
ExInterlockedPopEntryList

ExInterlockedPopEntryList 例程以原子方式从SINGLE_LIST_ENTRY结构SINGLE_LIST_ENTRY链接列表的开头删除一个条目。
ExInterlockedPopEntrySList

ExInterlockedPopEntrySList 例程以原子方式从序列单行链接列表中删除第一个条目。
ExInterlockedPushEntryList

ExInterlockedPushEntryList 例程以原子方式在SINGLE_LIST_ENTRY结构SINGLE_LIST_ENTRY列表的开头插入一个条目。
ExInterlockedPushEntrySList

ExInterlockedPushEntrySList 例程以原子方式在序列单行链接列表的开头插入一个条目。
ExInterlockedRemoveHeadList

ExInterlockedRemoveHeadList 例程从LIST_ENTRY结构多链接列表的开头删除一个条目。
ExIsProcessorFeaturePresent

ExIsProcessorFeaturePresent 例程查询是否存在指定的处理器功能。
ExIsResourceAcquiredExclusiveLite

ExIsResourceAcquiredExclusiveLite 例程返回当前线程是否具有对给定资源的独占访问权限。
ExIsResourceAcquiredSharedLite

ExIsResourceAcquiredSharedLite 例程返回当前线程是否有权访问给定资源 (共享或独占) 。
ExIsSoftBoot

确定系统是否已经历软重启。
ExLocalTimeToSystemTime

ExLocalTimeToSystemTime 例程将当前时区的系统时间值转换为不偏不偏的 GreenGMT 值。
ExNotifyCallback

ExNotifyCallback 例程会导致为给定对象注册的所有回调例程调用。
EXPAND_STACK_CALLOUT

ExpandedStackCall 例程使用保证的堆栈大小执行。
ExQueryDepthSList

ExQueryDepthSList 例程返回给定序列链接列表中当前存在的条目数。
ExQueryTimerResolution

ExQueryTimerResolution 例程报告系统时钟支持的计时器分辨率范围。
ExRaiseAccessViolation

ExRaiseAccessViolation 例程可用于结构化异常处理,以引发驱动程序确定的异常,以便在驱动程序处理 I/O 请求时发生的内存访问冲突。
ExRaiseDatatypeMisalignment

ExRaiseDatatypeMisalignment 例程可用于结构化异常处理,为驱动程序处理 I/O 请求时发生的不对齐数据类型引发驱动程序确定的异常。
ExRaiseStatus

ExRaiseStatus 例程由提供结构化异常处理程序的驱动程序调用,用于处理处理 I/O 请求时发生的特定错误。
ExRegisterCallback

ExRegisterCallback 例程向给定回调对象注册给定回调例程。
ExReinitializeResourceLite

ExReinitializeResourceLite 例程重新初始化现有资源变量。
ExReInitializeRundownProtection

ExReInitializeRundownProtection 例程在关联对象运行后重新初始化EX_RUNDOWN_REF结构。
ExReleasePushLockExclusive

释放指定推送锁以用于当前线程拥有的独占访问。
ExReleasePushLockShared

为当前线程拥有的共享访问释放指定的推送锁。
ExReleaseResourceForThreadLite

ExReleaseResourceForThreadLite 例程释放指示线程的输入资源。
ExReleaseResourceLite

ExReleaseResourceLite 例程释放当前线程拥有的指定执行资源。
ExReleaseRundownProtection

ExReleaseRundownProtection 例程释放调用方以前通过调用 ExAcquireRundownProtection 例程获取的运行保护。
ExReleaseRundownProtectionEx

ExReleaseRundownProtectionEx 例程释放调用方以前通过调用 ExAcquireRundownProtectionEx 例程获取的运行保护。
ExReleaseSpinLockExclusive

ExReleaseSpinLockExclusive 例程释放调用方以前为独占访问获取的旋转锁,并将 IRQL 还原为其原始值。
ExReleaseSpinLockShared

ExReleaseSpinLockShared 例程释放调用方以前为共享访问获取的旋转锁的所有权,并将 IRQL 还原到其原始值。
ExRundownCompleted

ExRundownCompleted 例程更新共享对象的运行状态,以指示对象的运行已完成。
ExSecurePoolUpdate

ExSecurePoolUpdate 函数更新安全池分配的内容。
ExSecurePoolValidate

ExSecurePoolValidate 函数验证所提供的安全池是否确实是以前创建的池。
ExSetFirmwareEnvironmentVariable

ExSetFirmwareEnvironmentVariable 例程设置指定的系统固件环境变量的值。
ExSetResourceOwnerPointer

ExSetResourceOwnerPointer 例程设置执行资源的所有者线程指针。
ExSetResourceOwnerPointerEx

ExSetResourceOwnerPointerEx 例程将执行资源的所有权从调用线程转移到所有者指针,这是标识资源所有者的系统地址。
ExSetTimer

ExSetTimer 例程启动计时器操作,并将计时器设置为在指定的截止日期过期。
ExSetTimerResolution

ExSetTimerResolution 例程修改系统时钟中断的频率。 请谨慎使用此例程, (请参阅以下“备注”部分) 。
ExSystemTimeToLocalTime

ExSystemTimeToLocalTime 例程将 GMT 系统时间值转换为当前时区的本地系统时间。
EXT_CALLBACK

ExTimerCallback 回调例程在 EX_TIMER计时器对象的时间间隔过期后运行。
EXT_DELETE_CALLBACK

当操作系统删除EX_TIMER计时器对象时,ExTimerDeleteCallback 回调例程将运行。
ExTryConvertSharedSpinLockExclusive

ExTryConvertSharedSpinLockExclusive 例程尝试从获取的旋转锁的访问状态转换为独占访问。
ExUnregisterCallback

ExUnregisterCallback 例程从通知过程中要调用的例程列表中删除以前向回调对象注册的回调例程。
ExUuidCreate

ExUuidCreate 例程将 UUID (GUID) 结构初始化为新生成的值。
ExWaitForRundownProtectionRelease

ExWaitForRundownProtectionRelease 例程等待,直到已授予运行保护的所有驱动程序完成对共享对象的访问。
FIELD_OFFSET

FIELD_OFFSET宏 (miniport.h) 返回指定已知结构类型中指定字段的字节偏移量。
FIELD_OFFSET

FIELD_OFFSET宏 (wdm.h) 返回指定已知结构类型中指定字段的字节偏移量。
FirstEntrySList

FirstEntrySList 例程返回序列单行链接列表中的第一个条目。
FPGA_BUS_SCAN

保留供将来使用。 在 FPGA 设备的父级触发总线扫描。
FPGA_CONTROL_CONFIG_SPACE

保留供将来使用。 启用或禁用对 FPGA 设备的配置空间的访问。
FPGA_CONTROL_ERROR_REPORTING

保留供将来使用。 切换 FPGA 设备及其父网桥的错误报告。
FPGA_CONTROL_LINK

保留供将来使用FPGA_CONTROL_LINK。
FREE_FUNCTION_EX

当客户端尝试将条目插入到已满的 lookaside 列表中时,LookasideListFreeEx 例程释放对 lookaside 列表条目的存储。
GET_D3COLD_CAPABILITY

GetBusDriverD3ColdSupport 例程使设备的驱动程序能够查询枚举总线驱动程序是否支持 D3cold 设备电源状态。
GET_D3COLD_LAST_TRANSITION_STATUS

GetLastTransitionStatus 例程使设备驱动程序能够查询最近是否转换到 D3hot 子状态后跟 D3cold 子状态的转换。
GET_DEVICE_RESET_STATUS

本主题介绍GET_DEVICE_RESET_STATUS回调函数。
GET_DMA_ADAPTER

GetDmaAdapter 例程返回目标设备的DMA_ADAPTER结构。
GET_IDLE_WAKE_INFO

GetIdleWakeInfo 例程使设备的驱动程序能够发现设备电源状态,设备可以从中发出唤醒事件信号。
GET_SDEV_IDENTIFIER

此材料尚不可用。 此占位符主题作为可能包含在更高版本中的文档示例提供。
GET_SET_DEVICE_DATA

GetBusData 例程从设备的配置空间读取数据。
GET_UPDATED_BUS_RESOURCE

报告最新的资源列表。
HalAllocateHardwareCounters

HalAllocateHardwareCounters 例程分配一组硬件性能计数器。
HalExamineMBR

HalExamineMBR 函数读取磁盘 (MBR) 的主启动记录,如果 MBR 为指定类型,则返回 MBR 数据。
HalFreeHardwareCounters

HalFreeHardwareCounters 例程释放了一组硬件性能计数器,这些计数器是在先前调用 HalAllocateHardwareCounters 例程中获取的。
IMAGE_POLICY_OVERRIDE

为IMAGE_POLICY_OVERRIDE宏保留。
InitializeListHead

InitializeListHead 例程初始化一个LIST_ENTRY结构,该结构表示双链接列表的头。
InitializeSListHead

InitializeSListHead 例程 (或 ExInitializeSListHead) 初始化SLIST_HEADER结构,该结构表示序列单向链接列表的头。
InsertHeadList

InsertHeadList 例程在LIST_ENTRY结构的两次链接列表的头插入一个条目。
InsertTailList

InsertTailList 例程在LIST_ENTRY结构的两次链接列表的尾部插入一个条目。
InterlockedAnd

InterlockedAnd (miniport.h) 宏以原子方式计算具有指定变量和指定值的按位 AND 运算。
InterlockedAnd

InterlockedAnd (wdm.h) 宏以原子方式计算具有指定变量和指定值的按位 AND 运算。
InterlockedCompareExchange

InterlockedCompareExchange 例程执行原子操作,该原子操作将 Destination 指向的输入值与 Compareand 的值进行比较。
InterlockedCompareExchange

InterlockedCompareExchange 例程执行原子操作,将 Destination 指向的输入值与 Comperand 的值进行比较。
InterlockedCompareExchangePointer

InterlockedCompareExchangePointer 例程执行原子操作,该原子操作将目标指向的输入指针值与指针值 Compareand 进行比较。
InterlockedCompareExchangePointer

InterlockedCompareExchangePointer 例程执行原子操作,该原子操作将目标指向的输入指针值与指针值 Comperand 进行比较。
InterlockedDecrement

InterlockedDecrement 函数 (miniport.h) 递减调用方提供的长型变量作为原子操作。
InterlockedDecrement

InterlockedDecrement 函数 (wdm.h) 递减调用方提供的长型变量作为原子操作。
InterlockedExchange

InterlockedExchange 函数 (miniport.h) 将整数变量设置为给定值作为原子操作。
InterlockedExchange

interlockedExchange 函数 (wdm.h) 将整数变量设置为给定值作为原子操作。
InterlockedExchangeAdd

InterlockedExchangeAdd 函数 (miniport.h) 将值作为原子运算添加到给定整数,并返回给定整数的原始值。
InterlockedExchangeAdd

InterlockedExchangeAdd 函数 (wdm.h) 将值作为原子运算添加到给定整数,并返回给定整数的原始值。
InterlockedExchangePointer

InterlockedExchangePointer 函数 (miniport.h) 执行原子操作,用于设置指向新值的指针。
InterlockedExchangePointer

wdm.h (InterlockedExchangePointer 函数) 执行原子操作,用于设置指向新值的指针。
InterlockedIncrement

InterlockedIncrement 函数 (miniport.h) 以原子操作的形式递增调用方提供的变量。
InterlockedIncrement

interlockedIncrement 函数 (wdm.h) 以原子操作的形式递增调用方提供的变量。
InterlockedOr

InterlockedOr 函数 (miniport.h) 原子计算具有指定变量和指定值的按位 OR 运算。
InterlockedOr

InterlockedOr 函数 (wdm.h) 以原子方式计算具有指定变量和指定值的按位 OR 运算。
InterlockedXor

InterlockedXor 函数 (miniport.h) 以原子方式计算具有指定变量和指定值的按位独占 OR 运算。
InterlockedXor

InterlockedXor 函数 (wdm.h) 以原子方式计算具有指定变量和指定值的按位独占 OR 运算。
IO_COMPLETION_ROUTINE

IoCompletion 例程完成 I/O 操作的处理。
IO_CSQ_ACQUIRE_LOCK

CsqAcquireLock 例程由系统用于获取驱动程序实现的取消安全 IRP 队列的锁。
IO_CSQ_COMPLETE_CANCELED_IRP

系统使用 CsqCompleteCanceledIrp 例程向驱动程序发出信号,表明它可以完成已取消的 IRP。
IO_CSQ_INSERT_IRP

CsqInsertIrp 例程由系统用来将 IRP 插入驱动程序实现的取消安全的 IRP 队列。
IO_CSQ_INSERT_IRP_EX

系统使用 CsqInsertIrpEx 例程将 IRP 插入驱动程序实现的取消安全 IRP 队列。
IO_CSQ_PEEK_NEXT_IRP

系统使用 CsqPeekNextIrp 例程在驱动程序实现的取消安全 IRP 队列中找到下一个匹配的 IRP。
IO_CSQ_RELEASE_LOCK

系统使用 CsqReleaseLock 例程释放使用 CsqAcquireLock 获取的锁。
IO_CSQ_REMOVE_IRP

系统使用 CsqRemoveIrp 例程从驱动程序实现的取消安全 IRP 队列中删除指定的 IRP。
IO_DPC_ROUTINE

在 InterruptService 例程返回后,DpcForIsr 例程完成 I/O 操作的服务。
IO_SESSION_NOTIFICATION_FUNCTION

IO_SESSION_NOTIFICATION_FUNCTION函数类型定义回调例程,通过该例程驱动程序接收有关驱动程序感兴趣的用户会话状态更改的通知。
IO_TIMER_ROUTINE

IoTimer 例程是一个 DPC,如果已注册,则每秒调用一次。
IO_WORKITEM_ROUTINE

WorkItem 例程对 IoQueueWorkItem 例程排队的工作项执行处理。
IO_WORKITEM_ROUTINE_EX

WorkItemEx 例程对由 IoQueueWorkItemEx 或 IoTryQueueWorkItem 例程排队的工作项执行处理。
IoAcquireKsrPersistentMemory

Microsoft 保留 IoAcquireKsrPersistentMemory 函数供内部使用。 请勿在代码中使用此函数。
IoAcquireKsrPersistentMemoryEx

Microsoft 保留 IoAcquireKsrPersistentMemoryEx 函数供内部使用。 请勿在代码中使用此函数。
IoAcquireRemoveLock

IoAcquireRemoveLock 例程递增删除锁的计数,指示不应将关联的设备对象与设备堆栈分离或删除。
IoAdjustPagingPathCount

IoAdjustPagingPathCount 例程递增或递减调用方提供的页文件计数器作为原子操作。
IoAllocateAdapterChannel

已弃用。 使用PALLOCATE_ADAPTER_CHANNEL。
IoAllocateController

IoAllocateController 例程设置对驱动程序提供的 ControllerControl 例程的调用,一旦由给定控制器对象表示的设备控制器可用于对由给定设备对象表示的目标设备执行 I/O 操作。
IoAllocateDriverObjectExtension

IoAllocateDriverObjectExtension 例程分配每个驱动程序上下文区域,称为驱动程序对象扩展,并为其分配唯一标识符。
IoAllocateErrorLogEntry

IoAllocateErrorLogEntry 例程分配错误日志条目,并返回指向调用方用来提供有关 I/O 错误信息的数据包的指针。
IoAllocateIrp

IoAllocateIrp 例程分配 IRP,给定调用方下分层的每个驱动程序的 I/O 堆栈位置数,以及(可选)为调用方分配 I/O 堆栈位置。
IoAllocateIrpEx

IoAllocateIrpEx 从中分配 I/O 请求数据包 (IRP)
IoAllocateMdl

IoAllocateMdl 例程分配内存描述符列表, (MDL) 足够大,以映射缓冲区,给定缓冲区的起始地址和长度。 (可选)此例程将 MDL 与 IRP 相关联。
IoAllocateWorkItem

IoAllocateWorkItem 例程分配工作项。
IoAssignArcName

IoAssignArcName 例程在物理设备的 ARC 名称与创建相应设备对象的名称之间创建符号链接。
IoAttachDevice

IoAttachDevice 例程将调用方的设备对象附加到命名的目标设备对象,以便首先将目标设备的 I/O 请求路由到调用方。
IoAttachDeviceToDeviceStack

IoAttachDeviceToDeviceStack 例程将调用方的设备对象附加到链中最高的设备对象,并返回指向以前最高的设备对象的指针。
IoBuildAsynchronousFsdRequest

IoBuildAsynchronousFsdRequest 例程分配并设置要发送到较低级别的驱动程序的 IRP。
IoBuildDeviceIoControlRequest

IoBuildDeviceIoControlRequest 例程为同步处理的设备控制请求分配并设置 IRP。
IoBuildPartialMdl

IoBuildPartialMdl 例程生成新的内存描述符列表 (MDL) ,该列表表示现有 MDL 描述的缓冲区的一部分。
IoBuildSynchronousFsdRequest

IoBuildSynchronousFsdRequest 例程为同步处理的 I/O 请求分配并设置 IRP。
IoCallDriver

IoCallDriver 例程将 IRP 发送到与指定设备对象关联的驱动程序。
IoCancelIrp

IoCancelIrp 例程设置给定 IRP 中的取消位,并调用 IRP 的取消例程(如果有)。
IoCheckFileObjectOpenedAsCopyDestination

详细了解 IoCheckFileObjectOpenedAsCopyDestination 函数。
IoCheckFileObjectOpenedAsCopySource

详细了解 IoCheckFileObjectOpenedAsCopySource 函数。
IoCheckLinkShareAccess

IoCheckLinkShareAccess 例程由文件系统驱动程序 (FSD) 或其他高级驱动程序调用,以检查是否允许链接共享访问文件对象。
IoCheckShareAccess

IoCheckShareAccess 例程由文件系统驱动程序 (FSD) 或其他高级驱动程序调用,以检查是否允许对文件对象的共享访问。
IoCheckShareAccessEx

IoCheckShareAccessEx 例程由文件系统驱动程序 (FSD) 或其他高级驱动程序调用,以检查是否允许对文件对象的共享访问。
IoClearActivityIdThread

IoClearActivityIdThread 例程清除当前线程的活动 ID。
IoConnectInterrupt

IoConnectInterrupt 例程注册设备驱动程序的 InterruptService 例程 (ISR) ,以便在设备在任何一组指定的处理器上中断时调用它。
IoConnectInterruptEx

有关详细信息,请参阅 WdmlibIoConnectInterruptEx 函数.#define IoConnectInterruptEx WdmlibIoConnectInterruptEx
IoCopyCurrentIrpStackLocationToNext

IoCopyCurrentIrpStackLocationToNext 例程将 IRP 堆栈参数从当前 I/O 堆栈位置复制到下一个较低驱动程序的堆栈位置。
IoCreateController

IoCreateController 例程分配内存,并使用驱动程序确定大小的控制器扩展初始化控制器对象。
IoCreateDevice

IoCreateDevice 例程创建设备对象供驱动程序使用。
IoCreateFile

IoCreateFile 例程会导致创建新文件或目录,或者打开现有文件、设备、目录或卷,从而为调用方提供文件对象的句柄。
IoCreateNotificationEvent

IoCreateNotificationEvent 例程创建或打开一个命名通知事件,用于通知一个或多个执行线程已发生事件。
IoCreateSymbolicLink

IoCreateSymbolicLink 例程设置设备对象名称和设备用户可见名称之间的符号链接。
IoCreateSynchronizationEvent

IoCreateSynchronizationEvent 例程创建或打开一个命名的同步事件,以便在两个其他无关驱动程序之间序列化对硬件的访问。
IoCreateSystemThread

IoCreateSystemThread 例程创建一个系统线程,该线程在内核模式下执行,并为线程提供句柄。
IoCreateUnprotectedSymbolicLink

IoCreateUnprotectedSymbolicLink 例程在设备对象名称和相应的 Win32 可见名称之间设置一个未受保护的符号链接。
IoCsqInitialize

IoCsqInitialize 例程初始化驱动程序的取消安全 IRP 队列调度表。
IoCsqInitializeEx

IoCsqInitializeEx 例程初始化取消安全的 IRP 队列的调度表。
IoCsqInsertIrp

IoCsqInsertIrp 例程在驱动程序的取消安全 IRP 队列中插入 IRP。
IoCsqInsertIrpEx

IoCsqInsertIrpEx 例程将 IRP 插入到驱动程序的取消安全 IRP 队列中。
IoCsqRemoveIrp

IoCsqRemoveIrp 例程从队列中删除特定的 IRP。
IoCsqRemoveNextIrp

IoCsqRemoveNextIrp 例程删除队列中的下一个匹配 IRP。
IoDeassignArcName

IoDeassignArcName 例程删除设备与命名设备对象的 ARC 名称之间的符号链接。
IoDecrementKeepAliveCount

IoDecrementKeepAliveCount 例程递减与特定设备上的 Windows 应用关联的引用计数。
IoDeleteController

IoDeleteController 例程从系统中删除给定的控制器对象,例如,创建它的驱动程序正在卸载时。
IoDeleteDevice

IoDeleteDevice 例程从系统中删除设备对象,例如,从系统中删除基础设备时。
IoDeleteSymbolicLink

IoDeleteSymbolicLink 例程从系统中删除符号链接。
IoDetachDevice

IoDetachDevice 例程在调用方的设备对象和较低驱动程序的设备对象之间释放附件。
IoDisconnectInterrupt

IoDisconnectInterrupt 例程释放设备驱动程序的中断对象集, (设备暂停或删除设备或卸载驱动程序时) 。
IoDisconnectInterruptEx

有关详细信息,请参阅 WdmlibIoDisconnectInterruptEx 函数.#define IoDisconnectInterruptEx WdmlibIoDisconnectInterruptEx
IoEnumerateKsrPersistentMemoryEx

Microsoft 保留 IoEnumerateKsrPersistentMemoryEx 函数供内部使用。 请勿在代码中使用此函数。
IofCallDriver

请改为调用 IoCallDriver 。 将 IRP 发送到与指定设备对象关联的驱动程序。
IofCompleteRequest

IoCompleteRequest 例程指示调用方已完成给定 I/O 请求的所有处理,并将给定的 IRP 返回到 I/O 管理器。
IoForwardIrpSynchronously

IoForwardIrpSynchronously 例程将 IRP 发送到指定的驱动程序,并等待该驱动程序完成 IRP。
IoFreeController

当驱动程序完成 I/O 请求时,IoFreeController 例程会释放以前分配的控制器对象。
IoFreeErrorLogEntry

IoFreeErrorLogEntry 例程释放了未使用的错误日志条目。
IoFreeIrp

IoFreeIrp 例程从调用方 IoCompletion 例程释放调用方分配的 IRP。
IoFreeKsrPersistentMemory

Microsoft 保留 IoFreeKsrPersistentMemory 函数以供内部使用。 请勿在代码中使用此函数。
IoFreeMdl

IoFreeMdl 例程释放调用方分配的内存描述符列表, (MDL) 。
IoFreeWorkItem

IoFreeWorkItem 例程释放由 IoAllocateWorkItem 分配的工作项。
IoGetActivityIdIrp

IoGetActivityIdIrp 例程检索与 IRP 关联的当前活动 ID。
IoGetActivityIdThread

IoGetActivityIdThread 例程返回与当前线程关联的活动 ID。
IoGetAffinityInterrupt

有关详细信息,请参阅 WdmlibIoGetAffinityInterrupt 函数.#define IoGetAffinityInterrupt WdmlibIoGetAffinityInterrupt
IoGetAttachedDeviceReference

ntifs.h 中的 IoGetAttachedDeviceReference 例程返回指向驱动程序堆栈中最高级别的设备对象的指针,并递增引用计数。
IoGetAttachedDeviceReference

wdm.h 中的 IoGetAttachedDeviceReference 例程返回指向驱动程序堆栈中最高级别的设备对象的指针,并递增引用计数。
IoGetBootDiskInformation

IoGetBootDiskInformation 例程返回描述启动和系统磁盘的信息。
IoGetConfigurationInformation

IoGetConfigurationInformation 函数 (ntddk.h) 返回指向 I/O 管理器的全局配置信息结构的指针。
IoGetConfigurationInformation

IoGetConfigurationInformation 函数 (ntifs.h) 返回指向 I/O 管理器的全局配置信息结构的指针。
IoGetContainerInformation

IoGetContainerInformation 例程提供有关用户会话的当前状态的信息。
IoGetCurrentIrpStackLocation

IoGetCurrentIrpStackLocation 例程返回指向指定 IRP 中调用方 I/O 堆栈位置的指针。
IoGetCurrentProcess

IoGetCurrentProcess 例程返回指向当前进程的指针。
IoGetDeviceDirectory

返回磁盘上特定于指定驱动程序对象的目录的句柄,驱动程序可以在其中读取和写入文件。
IoGetDeviceInterfaceAlias

如果别名存在,IoGetDeviceInterfaceAlias 例程将返回指定设备接口实例的别名设备接口。
IoGetDeviceInterfacePropertyData

IoGetDeviceInterfacePropertyData 例程检索设备接口属性的当前值。
IoGetDeviceInterfaces

IoGetDeviceInterfaces 例程返回特定设备接口类的设备接口实例列表 (,例如支持 HID 接口) 系统上的所有设备。
IoGetDeviceNumaNode

IoGetDeviceNumaNode 例程获取设备的节点数。
IoGetDeviceObjectPointer

IoGetDeviceObjectPointer 例程返回指向命名设备对象的堆栈中的顶部对象的指针,以及指向相应文件对象的指针(如果可以授予对对象的请求访问权限)。
IoGetDeviceProperty

IoGetDeviceProperty 例程检索有关设备的信息,例如配置信息和 PDO 的名称。
IoGetDevicePropertyData

IoGetDevicePropertyData 例程检索设备属性的当前设置。
IoGetDmaAdapter

IoGetDmaAdapter 例程返回指向物理设备对象的 DMA 适配器结构的指针。
IoGetDriverDirectory

返回磁盘上的目录的句柄,驱动程序可从中读取和写入文件。 该目录中的文件适用于特定的驱动程序对象。
IoGetDriverObjectExtension

IoGetDriverObjectExtension 例程检索以前分配的每驱动程序上下文区域。
IoGetFileObjectGenericMapping

IoGetFileObjectGenericMapping 例程返回有关每个泛型访问权限与文件对象特定访问权限集之间的映射的信息。
IoGetFunctionCodeFromCtlCode

IoGetFunctionCodeFromCtlCode 宏返回 I/O 控件代码中包含的函数代码的值。
IoGetInitialStack

IoGetInitialStack 例程返回当前线程堆栈的基址。
IoGetInitiatorProcess

IoGetInitiatorProcess 例程检索启动创建文件对象的进程(如果不同于发出创建的进程)。
IoGetIommuInterface

检索指向接口的指针,该接口包含指向 IOMMU 例程的指针。
IoGetIommuInterfaceEx

检索指向包含一组 IOMMU 例程的扩展接口的指针。
IoGetIoPriorityHint

IoGetIoPriorityHint 例程从 IRP 获取优先级提示值。
IoGetNextIrpStackLocation

IoGetNextIrpStackLocation 例程提供对 IRP 中下一个较低驱动程序 I/O 堆栈位置的更高级别的驱动程序访问权限,以便调用方可以为较低驱动程序设置它。
IoGetPagingIoPriority

IoGetPagingIoPriority 例程指示分页 I/O 请求的优先级。
IoGetRelatedDeviceObject

给定文件对象时,IoGetRelatedDeviceObject 例程返回指向相应设备对象的指针。
IoGetRemainingStackSize

IoGetRemainingStackSize 例程返回当前可用的内核模式堆栈空间量。
IoGetShadowFileInformation

本主题介绍 IoGetShadowFileInformation 函数。
IoGetStackLimits

IoGetStackLimits 例程返回当前线程堆栈帧的边界。
IoIncrementKeepAliveCount

IoIncrementKeepAliveCount 例程递增与特定设备上的 Windows 应用进程关联的引用计数。
IoInitializeDpcRequest

IoInitializeDpcRequest 例程注册驱动程序提供的 DpcForIsr 例程。
IoInitializeIrp

IoInitializeIrp 例程初始化调用方分配的给定 IRP。
IoInitializeRemoveLock

IoInitializeRemoveLock 例程初始化设备对象的删除锁。
IoInitializeTimer

IoInitializeTimer 例程设置与给定设备对象关联的驱动程序提供的 IoTimer 例程。
IoInitializeWorkItem

IoInitializeWorkItem 例程初始化调用方已分配的工作项。
IoInvalidateDeviceRelations

IoInvalidateDeviceRelations 例程通知 PnP 管理器设备 (的关系,例如总线关系、弹出关系、删除关系和目标设备关系) 已更改。
IoInvalidateDeviceState

IoInvalidateDeviceState 例程通知 PnP 管理器设备 PnP 状态的某些方面已更改。
IoIs32bitProcess

IoIs32bitProcess 例程检查当前 I/O 请求的发起方是否为 32 位用户模式应用程序。
IoIsErrorUserInduced

IoIsErrorUserInduced 例程确定在处理对可移动媒体设备的请求时是否遇到 I/O 错误是由用户引起的。
IoIsValidIrpStatus

IoIsValidIrpStatus 例程验证指定的 NTSTATUS 状态代码值。
IoIsWdmVersionAvailable

IoIsWdmVersionAvailable 例程检查操作系统是否支持给定的 WDM 版本。
IoMakeAssociatedIrp

此例程保留供文件系统和文件系统筛选器驱动程序使用。
IoMarkIrpPending

IoMarkIrpPending 例程标记指定的 IRP,指示驱动程序的调度例程随后返回STATUS_PENDING,因为其他驱动程序例程需要进一步处理。
IOMMU_DEVICE_CREATE

获取物理设备对象并创建IOMMU_DMA_DEVICE。
IOMMU_DEVICE_DELETE

删除提供的IOMMU_DMA_DEVICE。
IOMMU_DEVICE_FAULT_HANDLER

报告来自特定设备和域的故障。
IOMMU_DEVICE_QUERY_DOMAIN_TYPES

根据平台和 DMA 防护策略等环境因素,查询允许IOMMU_DMA_DEVICE附加到的可用域类型。
IOMMU_DOMAIN_ATTACH_DEVICE

将设备附加到现有域。
IOMMU_DOMAIN_ATTACH_DEVICE_EX

将IOMMU_DMA_DEVICE附加到现有的 DMA 设备域。
IOMMU_DOMAIN_CONFIGURE

配置要使用的域。
IOMMU_DOMAIN_CREATE

(一组页表) 创建一个新的 DMA 重新映射设备域。
IOMMU_DOMAIN_CREATE_EX

基于提供的域类型创建新的 DMA 设备域。
IOMMU_DOMAIN_DELETE

删除现有域。
IOMMU_DOMAIN_DETACH_DEVICE

从现有域分离设备。
IOMMU_DOMAIN_DETACH_DEVICE_EX

从现有域分离IOMMU_DMA_DEVICE。
IOMMU_FLUSH_DOMAIN

刷新与此域匹配的所有条目的 TLB。
IOMMU_FLUSH_DOMAIN_VA_LIST

刷新与指定域的 ASID 和所提供的列表中的某个地址匹配的所有条目的 TLB。
IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE

释放由IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE创建的逻辑地址令牌。
IOMMU_INTERFACE_STATE_CHANGE_CALLBACK

每当系统状态更改影响DMA_IOMMU_INTERFACE_EX时,都会调用此例程。
IOMMU_MAP_IDENTITY_RANGE

为提供的域中提供的 MDL 创建标识映射。
IOMMU_MAP_IDENTITY_RANGE_EX

为提供的域中提供的物理地址空间创建标识映射。
IOMMU_MAP_LOGICAL_RANGE

将一系列页面映射到域的地址空间。
IOMMU_MAP_LOGICAL_RANGE_EX

将物理地址空间映射到 IOMMU_DMA_DOMAIN的逻辑地址空间。
IOMMU_MAP_RESERVED_LOGICAL_RANGE

映射保留的逻辑范围。
IOMMU_QUERY_INPUT_MAPPINGS

尝试查找对给定设备有效的输入映射 ID,并使用这些 ID 填充给定的缓冲区。
IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK

允许调用方在发生与DMA_IOMMU_INTERFACE_EX相关的任何状态更改时注册要调用的回调。
IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE

预分配可用于将来映射的逻辑地址空间。
IOMMU_SET_DEVICE_FAULT_REPORTING

此例程将设备故障报告状态设置为已附加到域的设备。
IOMMU_SET_DEVICE_FAULT_REPORTING_EX

此例程在已附加到域的设备上设置设备故障报告状态。
IOMMU_UNMAP_IDENTITY_RANGE

删除指定 MDL 的标识映射。
IOMMU_UNMAP_IDENTITY_RANGE_EX

删除由IOMMU_MAP_IDENTITY_RANGE_EX创建的标识映射。
IOMMU_UNMAP_LOGICAL_RANGE

取消映射域的线性范围。
IOMMU_UNMAP_RESERVED_LOGICAL_RANGE

取消映射以前映射的保留逻辑范围。
IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK

允许调用方取消注册已注册IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK。
IoOpenDeviceInterfaceRegistryKey

IoOpenDeviceInterfaceRegistryKey 例程返回注册表项的句柄,用于存储有关特定设备接口实例的信息。
IoOpenDeviceRegistryKey

IoOpenDeviceRegistryKey 例程返回特定设备实例的注册表状态位置的句柄。
IoOpenDriverRegistryKey

保留为 IoOpenDriverRegistryKey 函数。
IoPropagateActivityIdToThread

IoPropagateActivityIdToThread 例程将 IRP 中的活动 ID 与当前线程相关联。
IoQueryFullDriverPath

IoQueryFullDriverPath 例程检索为指定驱动程序对象加载的二进制文件的完整路径名称。
IoQueryKsrPersistentMemorySize

Microsoft 保留 IoQueryKsrPersistentMemorySize 函数供内部使用。 请勿在代码中使用此函数。
IoQueryKsrPersistentMemorySizeEx

Microsoft 保留 IoQueryKsrPersistentMemorySizeEx 函数供内部使用。 请勿在代码中使用此函数。
IoQueueWorkItem

IoQueueWorkItem 例程将 WorkItem 例程与工作项相关联,并将工作项插入队列,供系统工作线程稍后处理。
IoQueueWorkItemEx

IoQueueWorkItemEx 例程将 WorkItemEx 例程与工作项相关联,并将工作项插入队列供系统工作线程稍后处理。
IoRaiseHardError

IoRaiseHardError 例程会导致出现一个对话框,警告用户设备 I/O 错误已发生,这可能指示物理设备出现故障。
IoRaiseInformationalHardError

IoRaiseInformationalHardError 例程向用户发送一个对话框,警告有关设备 I/O 错误,指示用户 I/O 请求失败的原因。
IoRegisterBootDriverCallback

IoRegisterBootDriverCallback 例程注册在初始化启动驱动程序及其依赖 DLL 期间要调用的BOOT_DRIVER_CALLBACK_FUNCTION例程。
IoRegisterBootDriverReinitialization

IoRegisterBootDriverReinitialization 例程由启动驱动程序调用,以在枚举和启动所有设备后,向 I/O 管理器注册驱动程序的重新初始化例程。
IoRegisterContainerNotification

IoRegisterContainerNotification 例程注册内核模式驱动程序,以接收有关指定事件类的通知。
IoRegisterDeviceInterface

IoRegisterDeviceInterface 例程注册设备接口类(如果尚未注册),并创建接口类的新实例,驱动程序随后可以启用供应用程序或其他系统组件使用。
IoRegisterDriverReinitialization

IoRegisterDriverReinitialization 例程在初始化或重新初始化过程中由驱动程序调用,以在驱动程序之前再次调用其重新初始化例程,并且可能是系统初始化完成。
IoRegisterLastChanceShutdownNotification

当系统关闭时,IoRegisterLastChanceShutdownNotification 例程注册驱动程序,以在刷新所有文件系统后接收IRP_MJ_SHUTDOWN IRP。
IoRegisterPlugPlayNotification

IoRegisterPlugPlayNotification 例程注册即插即用 (PnP) 通知回调例程,在发生指定类别的 PnP 事件时调用该例程。
IoRegisterShutdownNotification

IoRegisterShutdownNotification 例程注册驱动程序,以在系统关闭时接收IRP_MJ_SHUTDOWN IRP。
IoReleaseRemoveLock

IoReleaseRemoveLock 例程释放了使用之前对 IoAcquireRemoveLock 的调用获取的删除锁。
IoReleaseRemoveLockAndWait

IoReleaseRemoveLockAndWait 例程释放了驱动程序在之前调用 IoAcquireRemoveLock 中获取的删除锁,并等到释放锁的所有获取为止。
IoRemoveLinkShareAccess

IoRemoveLinkShareAccess 例程删除对文件对象的给定打开实例的访问和链接共享访问信息。
IoRemoveShareAccess

IoRemoveShareAccess 例程删除文件对象的给定打开实例的访问和共享访问信息。
IoReportDetectedDevice

IoReportDetectedDevice 例程向 PnP 管理器报告非 PnP 设备。
IoReportInterruptActive

IoReportInterruptActive 例程通知操作系统已注册的中断服务例程 (ISR) 处于活动状态,并准备好处理中断请求。
IoReportInterruptInactive

IoReportInterruptInactive 例程通知操作系统已注册的中断服务例程 (ISR) 处于非活动状态,并且不需要中断请求。
IoReportResourceForDetection

IoReportResourceForDetection 例程声明旧设备配置注册表中的硬件资源。
IoReportRootDevice

IoReportRootDevice 例程将 PnP 总线驱动程序无法检测到的设备报告给 PnP 管理器。 IoReportRootDevice 只允许为每个驱动程序创建一个设备。
IoReportTargetDeviceChange

IoReportTargetDeviceChange 例程通知 PnP 管理器在设备上发生了自定义事件。
IoReportTargetDeviceChangeAsynchronous

IoReportTargetDeviceChangeAsynchronous 例程通知 PnP 管理器在设备上发生了自定义事件。
IoRequestDeviceEject

IoRequestDeviceEject 例程通知 PnP 管理器设备弹出按钮已按下。
IoRequestDpc

IoRequestDpc 例程将驱动程序提供的 DpcForIsr 例程排队,以在较低的 IRQL 中完成中断驱动的 I/O 处理。
IoReserveKsrPersistentMemory

Microsoft 仅保留 IoReserveKsrPersistentMemory 函数以供内部使用。 请勿在代码中使用此函数。
IoReserveKsrPersistentMemoryEx

Microsoft 仅保留 IoReserveKsrPersistentMemoryEx 函数以供内部使用。 请勿在代码中使用此函数。
IoReuseIrp

IoReuseIrp 例程重新初始化 IRP,以便可以重复使用它。
Iosb64ToIosb

Iosb64ToIosb 函数...
IosbToIosb64

IosbToIosb64 函数...
IoSetActivityIdIrp

IoSetActivityIdIrp 例程将活动 ID 与 IRP 相关联。
IoSetActivityIdThread

IoSetActivityIdThread 例程将活动 ID 与当前线程相关联。 驱动程序在跟踪感知并在工作线程上发出 I/O 时,应使用此例程。
IoSetCancelRoutine

IoSetCancelRoutine 例程设置一个驱动程序提供的 Cancel 例程,如果取消给定的 IRP,则调用该例程。
IoSetCompletionRoutine

IoSetCompletionRoutine 例程注册 IoCompletion 例程,该例程将在下一级驱动程序完成给定 IRP 的请求操作时调用。
IoSetCompletionRoutineEx

IoSetCompletionRoutineEx 例程注册 IoCompletion 例程,该例程在下一级驱动程序完成给定 IRP 的请求操作时调用。
IoSetDeviceInterfacePropertyData

IoSetDeviceInterfacePropertyData 例程修改设备接口属性的当前值。
IoSetDeviceInterfaceState

IoSetDeviceInterfaceState 例程启用或禁用以前注册的设备接口类的实例。
IoSetDevicePropertyData

IoSetDevicePropertyData 例程修改设备属性的当前设置。
IoSetHardErrorOrVerifyDevice

较低级别的驱动程序调用 IoSetHardErrorOrVerifyDevice 例程来标识遇到错误的可移动媒体设备,以便文件系统驱动程序可以提示用户验证介质是否有效。
IoSetIoPriorityHint

IoSetIoPriorityHint 例程设置 IRP 的优先级提示值。
IoSetLinkShareAccess

IoSetLinkShareAccess 例程设置共享指定文件对象的链接的访问权限。
IoSetMasterIrpStatus

IoSetMasterIrpStatus 例程有条件地将 IRP 中的状态值替换为指定的 NTSTATUS 值。
IoSetNextIrpStackLocation

IoSetNextIrpStackLocation 例程将驱动程序分配的 IRP 中的 IRP 堆栈位置设置为调用方。
IoSetShadowFileInformation

本主题介绍 IoSetShadowFileInformation 函数。
IoSetShareAccess

IoSetShareAccess 例程设置共享给定文件对象的访问权限。
IoSetShareAccessEx

IoSetShareAccessEx 例程设置共享指定文件对象的访问权限。
IoSetStartIoAttributes

ntifs.h 中的 IoSetStartIoAttributes 例程为驱动程序的 StartIo 例程设置属性。
IoSetStartIoAttributes

wdm.h 中的 IoSetStartIoAttributes 例程为驱动程序的 StartIo 例程设置属性。
IoSetSystemPartition

IoSetSystemPartition 例程设置系统的启动分区。
IoSetThreadHardErrorMode

IoSetThreadHardErrorMode 例程启用或禁用当前线程的硬错误报告。
IoSizeOfIrp

ntifs.h 中的 IoSizeOfIrp 例程根据 IRP 中的堆栈位置数确定 IRP 的大小(以字节为单位)。
IoSizeOfIrp

wdm.h 中的 IoSizeOfIrp 例程根据 IRP 中的堆栈位置数确定 IRP 的大小(以字节为单位)。
IoSizeofWorkItem

IoSizeofWorkItem 例程返回IO_WORKITEM结构的大小(以字节为单位)。
IoStartNextPacket

ntifs.h 中的 IoStartNextPacket 例程从给定设备对象的关联设备队列中取消排队下一个 IRP,并调用驱动程序的 StartIo 例程。
IoStartNextPacket

wdm.h 中的 IoStartNextPacket 例程从给定设备对象的关联设备队列中取消排队下一个 IRP,并调用驱动程序的 StartIo 例程。
IoStartNextPacketByKey

ntifs.h 中的 IoStartNextPacketByKey 例程从指定的设备对象的关联设备队列中取消排队下一个 I/O 请求数据包。
IoStartNextPacketByKey

wdm.h 中的 IoStartNextPacketByKey 例程取消从指定设备对象的关联设备队列中的下一个 I/O 请求数据包。
IoStartPacket

ntifs.h 中的 IoStartPacket 例程使用 IRP 调用驱动程序的 StartIo 例程,或将 IRP 插入给定设备对象的设备队列中。
IoStartPacket

wdm.h 中的 IoStartPacket 例程使用 IRP 调用驱动程序的 StartIo 例程,或将 IRP 插入给定设备对象的设备队列中。
IoStartTimer

ntifs.h 中的 IoStartTimer 例程启用与给定设备对象关联的计时器,以便每秒调用驱动程序提供的 IoTimer 例程一次。
IoStartTimer

wdm.h 中的 IoStartTimer 例程启用与给定设备对象关联的计时器,以便每秒调用驱动程序提供的 IoTimer 例程一次。
IoStopTimer

ntifs.h 中的 IoStopTimer 例程禁用指定设备对象的计时器,因此不会调用驱动程序提供的 IoTimer 例程。
IoStopTimer

wdm.h 中的 IoStopTimer 例程禁用指定设备对象的计时器,因此不会调用驱动程序提供的 IoTimer 例程。
IoTransferActivityId

IoTransferActivityId 例程代表调用方使用 I/O 跟踪提供程序记录 ETW 传输事件。 这允许驱动程序关联两个相关的活动 ID,而无需启用特定的提供程序。
IoUninitializeWorkItem

IoUninitializeWorkItem 例程未初始化 IoInitializeWorkItem 初始化的工作项。
IoUnregisterBootDriverCallback

IoUnRegisterBootDriverCallback 例程取消注册以前注册的BOOT_DRIVER_CALLBACK_FUNCTION例程。
IoUnregisterContainerNotification

IoUnregisterContainerNotification 例程取消以前由 IoRegisterContainerNotification 例程创建的容器通知注册。
IoUnregisterPlugPlayNotification

此例程在 Windows 7 及更高版本中已过时。 有关详细信息,请参阅以下“备注”部分。IoUnregisterPlugPlayNotification 例程删除 PnP 事件的驱动程序回调例程的注册。
IoUnregisterPlugPlayNotificationEx

IoUnregisterPlugPlayNotificationEx 例程取消驱动程序回调例程的注册,以通知即插即用 (PnP) 事件。
IoUnregisterShutdownNotification

IoUnregisterShutdownNotification 例程从关闭通知队列中删除已注册的驱动程序。
IoUpdateLinkShareAccess

IoUpdateLinkShareAccess 例程更新给定文件对象的共享访问,通常是打开文件时。
IoUpdateLinkShareAccessEx

IoUpdateLinkShareAccessEx 例程更新给定文件对象的共享访问,通常是在打开文件时。
IoUpdateShareAccess

IoUpdateShareAccess 例程更新给定文件对象的共享访问,通常是打开文件时。
IoValidateDeviceIoControlAccess

有关详细信息,请参阅 WdmlibIoValidateDeviceIoControlAccess 函数。
IoVerifyPartitionTable

IoVerifyPartitionTable 例程检查磁盘分区表的有效性。
IoVolumeDeviceToDosName

IoVolumeDeviceToDosName 例程返回表示文件系统卷的指定设备对象的 MS-DOS 路径。
IoWithinStackLimits

IoWithinStackLimits 例程确定内存区域是否位于当前线程的堆栈限制内。
IoWMIAllocateInstanceIds

IoWMIAllocateInstanceIds 例程分配一个或多个特定于 GUID 的实例 ID。
IoWMIDeviceObjectToInstanceName

IoWMIDeviceObjectToInstanceName 例程确定由设备对象指定的驱动程序实现的 WMI 类实例的实例名称。
IoWMIDeviceObjectToProviderId

IoWMIDeviceObjectToProviderId 例程将指定的设备对象转换为相应的 WMI 提供程序 ID。
IoWMIExecuteMethod

IoWMIExecuteMethod 例程在指定的 WMI 数据块实例上运行 WMI 类方法。
IoWMIHandleToInstanceName

IoWMIHandleToInstanceName 例程确定由文件句柄指定的驱动程序实现的 WMI 类实例的实例名称。
IoWMIOpenBlock

IoWMIOpenBlock 例程打开指定 WMI 类的 WMI 数据块对象。
IoWMIQueryAllData

IoWMIQueryAllData 例程返回实现给定 WMI 类的所有 WMI 数据块。
IoWMIQueryAllDataMultiple

IoWMIQueryAllDataMultiple 例程返回实现一组 WMI 类之一的所有 WMI 数据块。
IoWMIQuerySingleInstance

IoWMIQuerySingleInstance 例程返回 WMI 数据块的指定实例。
IoWMIQuerySingleInstanceMultiple

IoWMIQuerySingleInstanceMultiple 例程返回所有实现具有指定实例名称的指定 WMI 类的 WMI 数据块实例。
IoWMIRegistrationControl

IoWMIRegistrationControl 例程注册或取消注册调用方作为指定设备对象的 WMI 数据提供程序。
IoWMISetNotificationCallback

IoWMISetNotificationCallback 例程注册 WMI 事件的通知回调。
IoWMISetSingleInstance

IoWMISetSingleInstance 例程为与指定的 WMI 类和实例名称匹配的数据块实例中的属性设置值。
IoWMISetSingleItem

IoWMISetSingleItem 例程在与指定的 WMI 类和实例名称匹配的数据块实例中设置单个属性。
IoWMISuggestInstanceName

IoWMISuggestInstanceName 例程用于请求 WMI 建议驱动程序用来为设备生成 WMI 实例名称的基名称。
IoWMIWriteEvent

IoWMIWriteEvent 例程将给定事件传递给用户模式 WMI 组件,以便通知。
IoWriteErrorLogEntry

ntifs.h 中的 IoWriteErrorLogEntry 例程将给定的错误日志数据包排队到系统错误日志记录线程。
IoWriteErrorLogEntry

wdm.h 中的 IoWriteErrorLogEntry 例程将给定的错误日志数据包排队到系统错误日志记录线程。
IoWriteKsrPersistentMemory

Microsoft 保留 IoWriteKsrPersistentMemory 函数供内部使用。 请勿在代码中使用此函数。
IsListEmpty

IsListEmpty 例程指示LIST_ENTRY结构的双重链接列表是否为空。
KBUGCHECK_CALLBACK_ROUTINE

每当系统发出 bug 检查时,将执行 BugCheckCallback 例程。
KBUGCHECK_REASON_CALLBACK_ROUTINE

驱动程序实现的回调函数在系统发出 bug 检查时执行。
KDEFERRED_ROUTINE

回调例程在中断服务返回线程 DPC 后执行操作,CustomDpc 例程在中断服务例程返回后完成 I/O 操作的服务。CustomThreadedDpc 例程执行线程 DPC 的操作。 当线程 DPC 运行时,系统会执行此例程。CustomTimerDpc 例程在计时器对象的时间间隔过期后执行。
KeAcquireSpinLock

KeAcquireSpinLock 例程获取旋转锁,以便调用方可以通过引发 IRQL 以多处理器安全的方式同步对共享数据的访问。
KeAcquireSpinLockAtDpcLevel

当调用方已在 IRQL >= DISPATCH_LEVEL 运行时,KeAcquireSpinLockAtDpcLevel 例程获取旋转锁。
KeAddTriageDumpDataBlock

将会审转储数据块添加到会审转储数据块数组。
KeAreAllApcsDisabled

KeAreAllApcsDisabled 例程指示调用线程是位于受保护的区域中还是运行在 IRQL >= APC_LEVEL,这会禁用所有 APC 传递。
KeAreApcsDisabled

KeAreApcsDisabled 函数 (ntddk.h) 返回一个值,该值指示调用线程是位于关键区域还是受保护的区域。
KeAreApcsDisabled

KeAreApcsDisabled 函数 (wdm.h) 返回一个值,该值指示调用线程是位于关键区域还是受保护的区域中。
KeBugCheck

当调用方发现一个无法恢复的不一致,如果调用方继续运行,则 KeBugCheck 例程会以受控的方式关闭系统。
KeBugCheckEx

当调用方发现一个无法恢复的不一致(如果调用方继续运行)时,KeBugCheckEx 例程会以受控的方式关闭系统。
KeCancelTimer

KeCancelTimer 例程在计时器间隔(如果已设置)之前取消排队计时器对象。
KeClearEvent

KeClearEvent 例程将事件设置为非信号状态。
KeConvertAuxiliaryCounterToPerformanceCounter

KeConvertAuxiliaryCounterToPerformanceCounter 例程将指定的辅助计数器值转换为性能计数器值。
KeConvertPerformanceCounterToAuxiliaryCounter

KeConvertPerformanceCounterToAuxiliaryCounter 例程将指定的性能计数器值转换为辅助计数器值。
KeDelayExecutionThread

KeDelayExecutionThread 例程将当前线程置于指定间隔的可警报或不可操作的等待状态。
KeDeregisterBoundCallback

KeDeregisterBoundCallback 例程取消注册由 KeRegisterBoundCallback 注册的用户模式绑定异常回调。
KeDeregisterBugCheckCallback

KeDeregisterBugCheckCallback 例程删除由 KeRegisterBugCheckCallback 注册的回调例程。
KeDeregisterBugCheckReasonCallback

KeDeregisterBugCheckReasonCallback 例程删除由 KeRegisterBugCheckReasonCallback 注册的回调例程。
KeDeregisterNmiCallback

KeDeregisterNmiCallback 例程取消注册不可掩码的中断, (KeRegisterNmiCallback 注册的 NMI) 回调。
KeDeregisterProcessorChangeCallback

KeDeregisterProcessorChangeCallback 例程取消注册以前通过调用 KeRegisterProcessorChangeCallback 例程向操作系统注册的回调函数。
KeEnterCriticalRegion

KeEnterCriticalRegion 函数 (ntddk.h) 暂时禁用正常内核 APC 的执行,但不阻止特殊内核 APC 运行。
KeEnterCriticalRegion

KeEnterCriticalRegion 函数 (wdm.h) 暂时禁用正常内核 APC 的执行,但不阻止特殊内核 APC 运行。
KeEnterGuardedRegion

KeEnterGuardedRegion 函数 (ntddk.h) 进入受保护的区域,这会禁用所有内核模式 APC 传送到当前线程。
KeEnterGuardedRegion

KeEnterGuardedRegion 函数 (wdm.h) 进入受保护的区域,这会禁用所有内核模式 APC 传送到当前线程。
KeExpandKernelStackAndCallout

KeExpandKernelStackAndCallout 例程调用具有保证堆栈空间量的例程。
KeExpandKernelStackAndCalloutEx

了解以下内容的详细信息:KeExpandKernelStackAndCalloutEx
KeFlushIoBuffers

KeFlushIoBuffers 例程从所有处理器的缓存中刷新 MDL 描述的内存区域。
KeFlushQueuedDpcs

KeFlushQueuedDpcs 例程在所有处理器上已排队的 DPC 执行后返回。
KefReleaseSpinLockFromDpcLevel

KeReleaseSpinLockFromDpcLevel 例程释放执行旋转锁,而无需更改 IRQL。
KeGetCurrentIrql

KeGetCurrentIrql 例程返回当前的 IRQL。
KeGetCurrentNodeNumber

KeGetCurrentNodeNumber 函数 (ntddk.h) 返回调用方正在运行的逻辑处理器的 NUMA 节点号。
KeGetCurrentNodeNumber

KeGetCurrentNodeNumber 函数 (wdm.h) 返回调用方正在运行的逻辑处理器的 NUMA 节点编号。
KeGetCurrentProcessorNumber

KeGetCurrentProcessorNumber 例程返回调用方正在运行的当前处理器的系统分配编号。
KeGetCurrentProcessorNumberEx

KeGetCurrentProcessorNumberEx 函数 (ntddk.h) 返回调用方正在运行的逻辑处理器的处理器编号。
KeGetCurrentProcessorNumberEx

KeGetCurrentProcessorNumberEx 函数 (wdm.h) 返回调用方正在运行的逻辑处理器的处理器编号。
KeGetCurrentThread

KeGetCurrentThread 例程标识当前线程。
KeGetProcessorIndexFromNumber

ntifs.h 中的 KeGetProcessorIndexFromNumber 例程将组号和组相对处理器编号转换为系统范围的处理器索引。
KeGetProcessorIndexFromNumber

wdm.h 中的 KeGetProcessorIndexFromNumber 例程将组号和组相对处理器编号转换为系统范围的处理器索引。
KeGetProcessorNumberFromIndex

ntifs.h 中的 KeGetProcessorNumberFromIndex 例程将系统范围的处理器索引转换为组号和组相对处理器编号。
KeGetProcessorNumberFromIndex

wdm.h 中的 KeGetProcessorNumberFromIndex 例程将系统范围的处理器索引转换为组号和组相对处理器编号。
KeGetRecommendedSharedDataAlignment

KeGetRecommendedSharedDataAlignment 例程返回可由多个处理器访问的内存结构的首选对齐方式。
KeInitializeCrashDumpHeader

KeInitializeCrashDumpHeader 例程提供系统对故障转储文件所需的标头信息。
KeInitializeCrashDumpHeader

了解 KeInitializeCrashDumpHeader 例程如何提供系统对故障转储文件所需的标头信息。
KeInitializeDeviceQueue

KeInitializeDeviceQueue 例程将设备队列对象初始化为非忙状态。
KeInitializeDpc

KeInitializeDpc 例程初始化 DPC 对象,并为该对象注册 CustomDpc 例程。
KeInitializeEvent

KeInitializeEvent 例程将事件对象初始化为同步 (单个服务员) 或通知类型事件,并将其设置为已发出信号或未发出信号的状态。
KeInitializeGuardedMutex

KeInitializeGuardedMutex 例程初始化受保护的互斥体。
KeInitializeMutex

KeInitializeMutex 例程初始化互斥对象,并将其设置为信号状态。
KeInitializeSemaphore

KeInitializeSemaphore 例程使用指定的计数初始化信号灯对象,并指定计数可以达到的上限。
KeInitializeSpinLock

KeInitializeSpinLock 例程初始化KSPIN_LOCK类型的变量。
KeInitializeThreadedDpc

KeInitializeThreadedDpc 例程初始化线程 DPC 对象,并为该对象注册 CustomThreadedDpc 例程。
KeInitializeTimer

KeInitializeTimer 例程初始化计时器对象。
KeInitializeTimerEx

KeInitializeTimerEx 例程初始化扩展内核计时器对象。
KeInsertByKeyDeviceQueue

KeInsertByKeyDeviceQueue 例程获取指定的 DeviceQueue 的旋转锁,如果设备队列设置为繁忙状态,则根据指定的排序键值对条目进行排队。
KeInsertDeviceQueue

KeInsertDeviceQueue 例程获取指定设备队列对象的旋转锁,如果设备队列设置为繁忙状态,则对指定条目进行排队。
KeInsertQueueDpc

KeInsertQueueDpc 例程将 DPC 排队以供执行。
KeInvalidateAllCaches

KeInvalidateAllCaches 例程刷新所有处理器缓存。
KeInvalidateRangeAllCaches

KeInvalidateRangeAllCaches 例程从所有处理器缓存刷新指定的虚拟地址范围。
KePiGenericCall

KePiGenericCall 例程会导致指定例程同时在所有处理器上运行。
KeIsExecutingDpc

检查是否在当前处理器上执行 DPC。
KeLeaveCriticalRegion

KeLeaveCriticalRegion 例程可重新启用前一次对 KeEnterCriticalRegion 调用禁用的正常内核模式 APC 的传递。
KeLeaveCriticalRegion

了解 KeLeaveCriticalRegion 例程如何重新启用前一次对 KeEnterCriticalRegion 调用禁用的正常内核模式 APC 的传递。
KeLeaveGuardedRegion

KeLeaveGuardedRegion 例程退出 KeEnterGuardedRegion 输入的受保护的区域。
KeLeaveGuardedRegion

了解 KeLeaveGuardedRegion 例程如何退出 KeEnterGuardedRegion 输入的受保护的区域。
KeLowerIrql

KeLowerIrql 例程将当前处理器上的 IRQL 还原为其原始值。
KeMemoryBarrier

KeMemoryBarrier 例程在代码中的位置创建屏障,编译器和处理器无法移动任何操作。
KePulseEvent

KePulseEvent 例程以原子方式将事件对象设置为信号状态,尝试满足尽可能多的等待,然后将事件对象重置为非信号状态。
KeQueryActiveGroupCount

KeQueryActiveGroupCount 例程返回多处理器系统中的活动处理器组数。
KeQueryActiveGroupCount

了解 KeQueryActiveGroupCount 例程如何返回多处理器系统中的活动处理器组数。
KeQueryActiveProcessorCount

KeQueryActiveProcessorCount 例程返回当前活动处理器的数目。
KeQueryActiveProcessorCount

了解 KeQueryActiveProcessorCount 例程如何返回当前活动处理器的数目。
KeQueryActiveProcessorCountEx

KeQueryActiveProcessorCountEx 例程返回多处理器系统或整个系统中指定组中的活动逻辑处理器数。
KeQueryActiveProcessorCountEx

了解 KeQueryActiveProcessorCountEx 例程如何返回多处理器系统或整个系统中指定组中的活动逻辑处理器数。
KeQueryActiveProcessors

KeQueryActiveProcessors 例程返回当前活动处理器的位掩码。
KeQueryActiveProcessors

了解 KeQueryActiveProcessors 例程如何返回当前活动处理器的位掩码。
KeQueryAuxiliaryCounterFrequency

KeQueryAuxiliaryCounterFrequency 例程以 Hz 为单位返回辅助计数器的频率。
KeQueryDpcWatchdogInformation

KeQueryDpcWatchdogInformation 例程返回当前处理器的延迟过程调用 (DPC) 监视器计时器值。
KeQueryGroupAffinity

KeQueryGroupAffinity 例程返回一个关联掩码,用于标识多处理器系统中指定组中的活动逻辑处理器。
KeQueryGroupAffinity

了解 KeQueryGroupAffinity 例程如何返回一个地缘掩码,用于标识多处理器系统中指定组中的活动逻辑处理器。
KeQueryHardwareCounterConfiguration

KeQueryHardwareCounterConfiguration 例程查询操作系统,以获取用于线程分析的硬件计数器列表。
KeQueryHighestNodeNumber

KeQueryHighestNodeNumber 例程返回多处理器系统中具有非统一内存访问 (NUMA) 体系结构中的最高节点数。
KeQueryHighestNodeNumber

了解 KeQueryHighestNodeNumber 例程如何返回多处理器系统中具有非统一内存访问 (NUMA) 体系结构中的最高节点数。
KeQueryInterruptTime

KeQueryInterruptTime 例程返回系统中断时间计数的当前值,准确到系统时钟周期内。
KeQueryInterruptTimePrecise

KeQueryInterruptTimePrecise 例程返回系统中断时间计数的当前值,准确性为微秒内。
KeQueryLogicalProcessorRelationship

KeQueryLogicalProcessorRelationship 例程获取有关一个或多个处理器与多处理器系统中其他处理器的关系的信息。
KeQueryMaximumGroupCount

KeQueryMaximumGroupCount 例程返回多处理器系统中的最大组数。
KeQueryMaximumGroupCount

了解 KeQueryMaximumGroupCount 例程如何返回多处理器系统中的最大组数。
KeQueryMaximumProcessorCount

KeQueryMaximumProcessorCount 例程返回最大处理器数。
KeQueryMaximumProcessorCount

了解 KeQueryMaximumProcessorCount 例程如何返回最大处理器数。
KeQueryMaximumProcessorCountEx

KeQueryMaximumProcessorCountEx 例程返回多处理器系统中指定组中的最大逻辑处理器数。
KeQueryMaximumProcessorCountEx

了解 KeQueryMaximumProcessorCountEx 例程如何返回多处理器系统中指定组中的最大逻辑处理器数。
KeQueryNodeActiveAffinity

KeQueryNodeActiveAffinity 例程获取多处理器系统中指定节点的当前处理器相关性,该节点具有非统一内存访问 (NUMA) 体系结构。
KeQueryNodeActiveAffinity2

此例程返回给定 NUMA 节点的当前多组处理器相关性。
KeQueryNodeActiveProcessorCount

此例程返回给定 NUMA 节点中跨所有组的活动处理器数。
KeQueryNodeMaximumProcessorCount

KeQueryNodeMaximumProcessorCount 例程返回非统一内存访问中指定节点的最大逻辑处理器数, (NUMA) 多处理器系统可以包含。
KeQueryNodeMaximumProcessorCount

了解 KeQueryNodeMaximumProcessorCount 例程如何返回非统一内存访问中指定节点的最大逻辑处理器数, (NUMA) 多处理器系统可以包含。
KeQueryPerformanceCounter

wdm.h 中的 KeQueryPerformanceCounter 例程检索性能计数器的当前值和频率。
KeQueryPriorityThread

KeQueryPriorityThread 例程返回特定线程的当前优先级。
KeQueryRuntimeThread

KeQueryRuntimeThread 例程报告线程累积的内核模式和用户模式运行时(以时钟周期为单位)。
KeQuerySystemTime

KeQuerySystemTime 例程获取当前系统时间。
KeQuerySystemTimePrecise

KeQuerySystemTimePrecise 例程检索当前系统时间,并且比 KeQuerySystemTime 例程更精确。
KeQueryTickCount

KeQueryTickCount 例程维护自系统启动以来发生的间隔计时器中断计数。
KeQueryTickCount

了解 KeQueryTickCount 例程如何维护自系统启动以来发生的间隔计时器中断计数。
KeQueryTimeIncrement

KeQueryTimeIncrement 例程返回每次间隔时钟中断时添加到系统时间的 100 纳秒单位数。
KeQueryTotalCycleTimeThread

KeQueryTotalCycleTimeThread 例程返回指定线程的累积周期时间。
KeQueryUnbiasedInterruptTime

KeQueryUnbiasedInterruptTime 例程返回系统中断时间计数的当前值。
KeRaiseIrql

KeRaiseIrql 例程将硬件优先级提升到指定的 IRQL 值,从而屏蔽当前处理器上等效或较低 IRQL 的中断。
KeRaiseIrqlToDpcLevel

KeRaiseIrqlToDpcLevel 例程将硬件优先级提高到 IRQL = DISPATCH_LEVEL,从而屏蔽当前处理器上等效或较低 IRQL 的中断。
KeRaiseIrqlToDpcLevel

了解 KeRaiseIrqlToDpcLevel 例程如何将硬件优先级提升到 IRQL = DISPATCH_LEVEL,从而屏蔽当前处理器上等效或较低 IRQL 的中断。
KeReadStateEvent

KeReadStateEvent 例程返回事件对象的当前状态(已发出信号或未发出信号)。
KeReadStateMutex

KeReadStateMutex 例程返回指定互斥对象的当前状态(已发出信号或未发出信号)。
KeReadStateSemaphore

KeReadStateSemaphore 例程返回指定信号量对象的当前状态(信号或未发出信号)。
KeReadStateTimer

KeReadStateTimer 例程读取计时器对象的当前状态。
KeRegisterBoundCallback

KeRegisterBoundCallback 例程在发生用户模式绑定异常时注册要调用的例程。
KeRegisterBugCheckCallback

KeRegisterBugCheckCallback 例程注册 BugCheckCallback 例程,该例程在操作系统发出 bug 检查时执行。
KeRegisterBugCheckReasonCallback

KeRegisterBugCheckReasonCallback 例程注册 KbCallbackDumpIo、KbCallbackSecondaryDumpData 或 KbCallbackAddPages 例程,该例程在操作系统发出 bug 检查时执行。
KeRegisterNmiCallback

KeRegisterNmiCallback 例程注册一个在 NMI) 发生不可掩码中断 (时调用的例程。
KeRegisterProcessorChangeCallback

KeRegisterProcessorChangeCallback 例程向操作系统注册回调函数,以便在将新处理器添加到硬件分区时,操作系统会通知驱动程序。
KeReleaseGuardedMutex

KeReleaseGuardedMutex 例程发布使用 KeAcquireGuardedMutex 或 KeTryToAcquireGuardedMutex 获取的受保护的互斥体。
KeReleaseGuardedMutexUnsafe

KeReleaseGuardedMutexUnsafe 例程发布由 KeAcquireGuardedMutexUnsafe 获取的受保护的互斥体。
KeReleaseInStackQueuedSpinLock

KeReleaseInStackQueuedSpinLock 例程释放由 KeAcquireInStackQueuedSpinLock 获取的排队旋转锁。
KeReleaseInStackQueuedSpinLockForDpc

KeReleaseInStackQueuedSpinLockForDpc 例程释放了通过调用 KeAcquireInStackQueuedSpinLockForDpc 获得的排队旋转锁。
KeReleaseInStackQueuedSpinLockFromDpcLevel

KeReleaseInStackQueuedSpinLockFromDpcLevel 例程释放 KeAcquireInStackQueuedSpinLockAtDpcLevel 获取的排队旋转锁。
KeReleaseInterruptSpinLock

KeReleaseInterruptSpinLock 例程释放由 KeAcquireInterruptSpinLock 获取的中断旋转锁。
KeReleaseMutex

KeReleaseMutex 例程释放互斥体对象,并指定调用方是否在 KeReleaseMutex 返回控件后立即调用 KeWaitXxx 例程之一。
KeReleaseSemaphore

KeReleaseSemaphore 例程释放指定的信号灯对象。
KeReleaseSpinLock

KeReleaseSpinLock 例程释放旋转锁,并还原调用方正在运行的原始 IRQL。
KeReleaseSpinLockForDpc

KeReleaseSpinLockForDpc 例程释放了通过调用 KeAcquireSpinLockForDpc 获取的旋转锁。
KeReleaseSpinLockFromDpcLevel

了解 KeReleaseSpinLockFromDpcLevel 例程如何释放执行旋转锁,而无需更改 IRQL。
KeRemoveByKeyDeviceQueue

KeRemoveByKeyDeviceQueue 例程从指定的设备队列中删除根据排序键值选择的条目。
KeRemoveDeviceQueue

KeRemoveDeviceQueue 例程从指定设备队列的头中删除一个条目。
KeRemoveEntryDeviceQueue

KeRemoveEntryDeviceQueue 例程返回指定条目是否在设备队列中,如果已排队,则从设备队列中删除它。
KeRemoveQueueDpc

KeRemoveQueueDpc 例程从系统 DPC 队列中删除指定的 DPC 对象。
KeResetEvent

KeResetEvent 例程将指定的事件对象重置为非信号状态,并返回该事件对象的上一状态。
KeRestoreExtendedProcessorState

KeRestoreExtendedProcessorState 例程还原以前保存的扩展处理器状态信息。
KeRestoreFloatingPointState

KeRestoreFloatingPointState 例程可还原上述对 KeSaveFloatingPointState 的调用所保存的非易失性浮点上下文。
KeRevertToUserAffinityThreadEx

KeRevertToUserAffinityThreadEx 例程还原当前线程的先前关联。
KeRevertToUserGroupAffinityThread

KeRevertToUserGroupAffinityThread 例程在创建线程时将调用线程的组相关性还原为其原始值。
KeSaveExtendedProcessorState

KeSaveExtendedProcessorState 例程保存扩展处理器状态信息。
KeSaveFloatingPointState

KeSaveFloatingPointState 例程保存非易失浮点上下文,以便调用方可以执行浮点操作。
KeSetBasePriorityThread

KeSetBasePriorityThread 例程为给定线程设置相对于当前进程的运行时优先级。
KeSetCoalescableTimer

KeSetCoalescableTimer 例程设置计时器对象的初始到期时间和期限,并指定在到期时间可以容忍多少延迟。
KeSetEvent

如果事件尚未发出信号,KeSetEvent 例程会将事件对象设置为信号状态,并返回事件对象的上一状态。
KeSetHardwareCounterConfiguration

KeSetHardwareCounterConfiguration 例程指定要用于线程分析的硬件计数器列表。
KeSetImportanceDpc

KeSetImportanceDpc 例程指定运行 DPC 例程的运行方式。
KeSetImportanceDpc

了解 KeSetImportanceDpc 例程如何指定运行 DPC 例程的快。
KeSetKernelStackSwapEnable

KeSetKernelStackSwapEnable 例程允许和禁用调用方堆栈交换到磁盘。
KeSetPriorityThread

KeSetPriorityThread 例程设置驱动程序创建的线程的运行时优先级。
KeSetSystemAffinityThread

KeSetSystemAffinityThread 例程设置当前线程的系统相关性。
KeSetSystemAffinityThreadEx

KeSetSystemAffinityThreadEx 例程设置当前线程的系统相关性。
KeSetSystemGroupAffinityThread

KeSetSystemGroupAffinityThread 例程更改调用线程的组号和相关性掩码。
KeSetTargetProcessorDpc

KeSetTargetProcessorDpc 例程指定运行 DPC 例程的处理器。
KeSetTargetProcessorDpc

了解 KeSetTargetProcessorDpc 例程如何指定运行 DPC 例程的处理器。
KeSetTargetProcessorDpcEx

KeSetTargetProcessorDpcEx 例程指定运行 DPC 例程的处理器。
KeSetTimer

KeSetTimer 例程设置计时器对象设置为信号状态的绝对或相对间隔,并且(可选)提供在间隔过期时要执行的 CustomTimerDpc 例程。
KeSetTimerEx

KeSetTimerEx 例程设置计时器对象设置为信号状态的绝对或相对间隔,可以选择提供在间隔过期时要执行的 CustomTimerDpc 例程,并选择性地为计时器提供定期间隔。
KeShouldYieldProcessor

了解以下内容的详细信息:KeShouldYieldProcessor 函数
KeStallExecutionProcessor

ntifs.h 中的 KeStallExecutionProcessor 例程将当前处理器上的调用方停止为指定的时间间隔。
KeStallExecutionProcessor

wdm.h 中的 KeStallExecutionProcessor 例程将当前处理器上的调用方停止为指定的时间间隔。
KeSynchronizeExecution

KeSynchronizeExecution 例程将指定的例程的执行与分配给一个或多个中断对象的一组或多个中断对象的 ISR (ISR) 同步执行。
KeTestSpinLock

KeTestSpinLock 例程测试旋转锁的可用性。
KeTryToAcquireGuardedMutex

KeTryToAcquireGuardedMutex 例程获取受保护的互斥体(如果可用)。
KeTryToAcquireSpinLockAtDpcLevel

KeTryToAcquireSpinLockAtDpcLevel 例程尝试在DISPATCH_LEVEL获取旋转锁。
KeWaitForMultipleObjects

KeWaitForMultipleObjects 例程将当前线程置于可警报或不可变的等待状态,直到将任意或所有调度程序对象设置为信号状态或 (可以选择) ,直到等待超时。
KeWaitForSingleObject

KeWaitForSingleObject 例程将当前线程置于等待状态,直到给定调度程序对象设置为信号状态或 (可以选择) ,直到等待超时。
KIPI_BROADCAST_WORKER

PiGenericCall 例程在所有处理器上同时运行。
KMESSAGE_SERVICE_ROUTINE

InterruptMessageService 例程服务消息信号中断。
KSERVICE_ROUTINE

中断服务例程 (ISR) 根据需要快速服务设备中断,并计划接收数据的中断后处理。
KSTART_ROUTINE

ThreadStart 例程为驱动程序创建的系统线程提供入口点。
KSYNCHRONIZE_ROUTINE

SynchCritSection 例程用于访问与驱动程序中断服务例程共享的硬件资源或驱动程序数据。
KzLowerIrql

将当前处理器上的 IRQL 还原到其原始值。
KzRaiseIrql

将硬件优先级提升到指定的 IRQL 值,从而屏蔽当前处理器上等效或较低 IRQL 的中断。
MM_MDL_ROUTINE

调用 MmMapMdl 函数,在内存描述符列表 (MDL) 之后调用的驱动程序提供的回调例程。
MmAdvanceMdl

MmAdvanceMdl 例程按指定的字节数推进 MDL 虚拟内存范围的开头。
MmAllocateContiguousMemory

MmAllocateContiguousMemory 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。
MmAllocateContiguousMemory

了解 MmAllocateContiguousMemory 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。
MmAllocateContiguousMemoryEx

MmAllocateContiguousMemoryEx 函数分配一系列物理连续的非分页内存并返回其虚拟地址。
MmAllocateContiguousMemorySpecifyCache

MmAllocateContiguousMemorySpecifyCache 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。
MmAllocateContiguousMemorySpecifyCache

了解 MmAllocateContiguousMemorySpecifyCache 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。
MmAllocateContiguousMemorySpecifyCacheNode

MmAllocateContiguousMemorySpecifyCacheNode 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。
MmAllocateContiguousMemorySpecifyCacheNode

了解 MmAllocateContiguousMemorySpecifyCacheNode 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。
MmAllocateContiguousNodeMemory

MmAllocateContiguousNodeMemory 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。
MmAllocateContiguousNodeMemory

了解 MmAllocateContiguousNodeMemory 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。
MmAllocateMappingAddress

MmAllocateMappingAddress 例程保留指定大小的系统虚拟地址空间范围。
MmAllocateMappingAddressEx

MmAllocateMappingAddressEx 函数分配请求长度的系统 PTE 映射,稍后可用于映射任意地址。
MmAllocateMdlForIoSpace

MmAllocateMdlForIoSpace 例程分配 MDL 并初始化此 MDL 以描述 I/O 地址空间中的一组物理地址范围。
MmAllocateNodePagesForMdlEx

MmAllocateNodePagesForMdlEx 例程从理想的节点分配非分页物理内存,并分配 MDL 结构来描述此内存。
MmAllocateNonCachedMemory

MmAllocateNonCachedMemory 例程分配非缓存内存和缓存对齐内存的虚拟地址范围。
MmAllocatePagesForMdl

MmAllocatePagesForMdl 例程将零填充的非分页物理内存页分配给 MDL。
MmAllocatePagesForMdlEx

MmAllocatePagesForMdlEx 例程将非分页的物理内存页分配给 MDL。
MmBuildMdlForNonPagedPool

MmBuildMdlForNonPagedPool 例程接收一个 MDL,该 MDL 指定非分页虚拟内存缓冲区,并对其进行更新以描述基础物理页。
MmCopyMemory

MmCopyMemory 例程将指定的虚拟或物理内存范围复制到调用方提供的缓冲区中。
MmFreeContiguousMemory

MmFreeContiguousMemory 例程释放由 MmAllocateContiguousMemoryXxx 例程分配的一系列物理连续内存。
MmFreeContiguousMemory

了解 MmFreeContiguousMemory 例程如何释放由 MmAllocateContiguousMemoryXxx 例程分配的一系列物理连续内存。
MmFreeContiguousMemorySpecifyCache

MmFreeContiguousMemorySpecifyCache 例程释放由 MmAllocateContiguousMemorySpecifyCacheXxx 例程分配的缓冲区。
MmFreeContiguousMemorySpecifyCache

了解 MmFreeContiguousMemorySpecifyCache 例程如何释放由 MmAllocateContiguousMemorySpecifyCacheXxx 例程分配的缓冲区。
MmFreeMappingAddress

MmFreeMappingAddress 例程释放 MmAllocateMappingAddress 例程保留的一系列虚拟内存。
MmFreeNonCachedMemory

MmFreeNonCachedMemory 例程释放由 MmAllocateNonCachedMemory 例程分配的一系列非缓存内存。
MmFreePagesFromMdl

MmFreePagesFromMdl 例程释放由 MmAllocatePagesForMdl 例程创建的 MDL 描述的所有物理页面。
MmGetMdlByteCount

MmGetMdlByteCount 宏返回指定 MDL 描述的缓冲区的长度(以字节为单位)。
MmGetMdlPfnArray

MmGetMdlPfnArray 宏返回指向与内存描述符列表 (MDL) 关联的物理页面编号数组开头位置的指针。
MmGetPhysicalAddress

MmGetPhysicalAddress 例程返回与有效非分页虚拟地址对应的物理地址。
MmGetPhysicalMemoryRangesEx2

MmGetPhysicalMemoryRangesEx2 例程返回非分页池块的虚拟地址,其中包含系统中的物理内存范围。
MmGetSystemAddressForMdl

MmGetSystemAddressForMdl 例程已过时,适用于 Windows 2000 及更高版本的 Windows 以及 Windows Me。
MmGetSystemRoutineAddress

MmGetSystemRoutineAddress 例程返回指向 SystemRoutineName 指定的函数的指针。
MmGetSystemRoutineAddressEx

MmGetSystemRoutineAddressEx 函数返回指定系统模块中指定函数的地址。
MmIsAddressValid

MmIsAddressValid 例程检查在给定虚拟地址处的读取或写入操作是否会发生页面错误。警告我们不建议使用此函数。
MmIsDriverSuspectForVerifier

MmIsDriverSuspectForVerifier 例程指示由指定驱动程序对象表示的驱动程序是否位于驱动程序验证程序选择的驱动程序列表中。
MmIsDriverVerifying

MmIsDriverVerifying 例程指示是否正在验证由指定驱动程序对象标识的内核模式驱动程序,还是调用驱动程序验证程序正在验证的驱动程序。
MmIsDriverVerifyingByAddress

MmIsDriverVerifyingByAddress 例程检查是否正在验证由指定映像地址标识的内核模式驱动程序,或者调用驱动程序验证程序正在验证的驱动程序。
MmIsThisAnNtAsSystem

对于 Windows XP 和更高版本的 Windows,MmIsThisAnNtAsSystem 例程已过时。 请改用 RtlGetVersion 或 RtlVerifyVersionInfo。
MmLockPagableCodeSection

MmLockPagableCodeSection 例程将驱动程序代码的一部分锁在系统空间中,其中包含一组标记为特殊编译器指令的驱动程序例程。
MmLockPagableDataSection

MmLockPagableDataSection 例程将驱动程序数据的整个部分锁定到系统空间中。
MmLockPagableSectionByHandle

MmLockPagableSectionByHandle 例程通过将句柄上的引用计数递增至系统内存中可分页的代码或数据节。
MmMapIoSpace

MmMapIoSpace 例程将给定的物理地址范围映射到非分页系统空间。
MmMapIoSpaceEx

MmMapIoSpaceEx 例程使用指定的页面保护将给定的物理地址范围映射到非分页系统空间。
MmMapLockedPages

对于 Windows 2000 及更高版本的 Windows 以及 Windows Me,MmMapLockedPages 例程已过时。
MmMapLockedPagesSpecifyCache

MmMapLockedPagesSpecifyCache 例程将 MDL 描述的物理页映射到虚拟地址,并使调用方能够指定用于创建映射的缓存属性。
MmMapLockedPagesWithReservedMapping

MmMapLockedPagesWithReservedMapping 例程映射以前由 MmAllocateMappingAddress 例程保留的地址范围的所有或部分。
MmMapMdl

此函数将内存描述符列表描述符列表描述的物理页面映射到系统虚拟地址空间 (MDL) 。
MmMapMemoryDumpMdlEx

MmMapMemoryDumpMdlEx 函数将 MDL 映射到指定的虚拟地址。
MmMapViewInSystemSpace

MmMapViewInSystemSpace 函数将指定的部分映射到系统的地址空间。
MmPageEntireDriver

MmPageEntireDriver 例程会导致生成驱动程序的所有代码和数据可分页,从而覆盖构成驱动程序映像的各个部分的属性。
MmProbeAndLockPages

MmProbeAndLockPages 例程探测指定的虚拟内存页,使其驻留并在内存中锁定它们。
MmProbeAndLockSelectedPages

MmProbeAndLockSelectedPages 例程探测所选虚拟内存页,使其驻留并在内存中锁定它们。
MmProtectDriverSection

MmProtectDriverSection 只读通过使用虚拟安全模式 (VSM) 提供的服务来保护加载的驱动程序的一部分。
MmProtectMdlSystemAddress

MmProtectMdlSystemAddress 例程设置内存地址范围的保护类型。
MmQuerySystemsize

MmQuerySystemSize 例程返回系统中内存量的估计值。
MmResetDriverPaging

MmResetDriverPaging 例程将驱动程序部分的可寻页状态重置为编译驱动程序时指定的分区。
MmSecureVirtualMemory

MmSecureVirtualMemory 例程保护用户空间内存地址范围,以便无法释放它,并且无法使其保护类型更加严格。
MmSecureVirtualMemoryEx

此例程探测请求的地址范围,并保护指定的地址范围,使其保护更加严格,并被删除。
MmsizeOfMdl

MmSizeOfMdl 例程返回为描述给定地址范围的 MDL 分配的字节数。
MmUnlockPagableImageSection

MmUnlockPagableImageSection 例程发布驱动程序代码或驱动程序数据部分,以前使用 MmLockPagableCodeSection、MmLockPagableDataSection 或 mmLockPagableSectionByHandle 锁定系统空间,以便可以再次分页该节。
MmUnlockPages

MmUnlockPages 例程可解锁指定的内存描述符列表 (MDL) 描述符列表描述的物理页。
MmUnmapIoSpace

MmUnmapIoSpace 例程取消映射以前由 MmMapIoSpace 映射的指定物理地址范围。
MmUnmapLockedPages

MmUnmapLockedPages 例程发布由之前调用 MmMapLockedPages 或 MmMapLockedPagesSpecifyCache 例程设置的映射。
MmUnmapReservedMapping

MmUnmapReservedMapping 例程取消映射由 MmMapLockedPagesWithReservedMapping 例程映射的内存缓冲区。
MmUnmapViewInSystemSpace

了解以下内容的详细信息:MmUnmapViewInSystemSpace 函数
MmUnsecureVirtualMemory

MmUnsecureVirtualMemory 例程无法保护由 MmSecureVirtualMemory 例程保护的内存地址范围。
NtAllocateVirtualMemory

NtAllocateVirtualMemory 例程保留、提交或同时保留指定进程的用户模式虚拟地址空间中的页面区域。
NtClose

ntifs.h 中的 NtClose 例程关闭对象句柄。 NtClose 是一个对任何类型的对象进行操作的泛型例程。
NtCommitComplete

ZwCommitComplete 例程通知 KTM 调用资源管理器已完成提交事务的数据。
NtCommitEnlistment

ZwCommitEnlistment 例程为指定的登记事务启动提交操作。
NtCommitTransaction

ZwCommitTransaction 例程为指定的事务启动提交操作。
NtCreateEnlistment

ZwCreateEnlistment 例程为事务创建新的登记对象。
NtCreateFile

NtCreateFile 例程创建一个新文件或打开现有文件。
NtCreateResourceManager

ZwCreateResourceManager 例程创建资源管理器对象。
NtCreateSection

ntifs.h 中的 NtCreateSection 例程将创建一个 section 对象。 指向的句柄不再使用后,驱动程序必须关闭它。
NtCreateSectionEx

创建节对象。
NtCreateTransaction

ZwCreateTransaction 例程创建事务对象。
NtCreateTransactionManager

ZwCreateTransactionManager 例程创建一个新的事务管理器对象。
NtDeviceIoControlFile

了解此例程如何将控制代码直接发送到指定的设备驱动程序,从而导致相应的驱动程序执行指定的操作。
NtDuplicateToken

中的 NtDuplicateToken 函数创建一个用于复制现有令牌的新访问令牌的句柄。
NtEnumerateTransactionObject

ZwEnumerateTransactionObject 例程枚举计算机上的 KTM 对象。
NtFlushBuffersFileEx

NtFlushBuffersFileEx 例程将给定文件的刷新请求发送到文件系统。 可以设置可选的刷新操作标志,以控制如何将文件数据写入存储。
NtFreeVirtualMemory

NtFreeVirtualMemory 例程发布、取消提交或同时释放指定进程的虚拟地址空间中的页面区域。
NtFsControlFile

NtFsControlFile 例程将控制代码直接发送到指定的文件系统或文件系统筛选器驱动程序。
NtGetNotificationResourceManager

ZwGetNotificationResourceManager 例程从指定的资源管理器通知队列检索下一个事务通知。
NtLockFile

NtLockFile 例程请求指定文件的字节范围锁。
NtManagePartition

NtManagePartition 函数获取和设置分区的信息。
NtOpenEnlistment

ZwOpenEnlistment 例程获取现有登记对象的句柄。
NtOpenFile

ntifs.h 中的 NtOpenFile 例程打开现有文件、目录、设备或卷。 指向的句柄不再使用后,驱动程序必须关闭它。
NtOpenProcess

ZwOpenProcess 例程打开进程对象的句柄,并设置对此对象的访问权限。
NtOpenProcessToken

NtOpenProcessToken 例程打开与进程关联的访问令牌,并返回可用于访问该令牌的句柄。
NtOpenProcessTokenEx

NtOpenProcessTokenEx 例程打开与进程关联的访问令牌,并返回可用于访问该令牌的句柄。
NtOpenResourceManager

ZwOpenResourceManager 例程返回现有资源管理器对象的句柄。
NtOpenThreadToken

NtOpenThreadToken 例程打开与线程关联的访问令牌,并返回可用于访问该令牌的句柄。
NtOpenThreadTokenEx

NtOpenThreadTokenEx 例程打开与线程关联的访问令牌。
NtOpenTransaction

ZwOpenTransaction 例程获取现有事务对象的句柄。
NtOpenTransactionManager

ZwOpenTransactionManager 例程获取现有事务管理器对象的句柄。
NtPowerInformation

了解 ZwPowerInformation 例程如何设置或检索系统电源信息。
NtPowerInformation

了解 ZwPowerInformation 例程 (wdm.h) 如何设置或检索系统电源信息。
NtPrepareComplete

ZwPrepareComplete 例程通知 KTM 调用资源管理器已完成事务的数据准备。
NtPrepareEnlistment

ZwPrepareEnlistment 例程启动指定登记事务的准备操作。
NtPrepareComplete

ZwPrepareComplete 例程通知 KTM 调用资源管理器已完成事务数据的初步准备。
NtPrepareEnlistment

ZwPrepareEnlistment 例程启动指定登记事务的预准备操作。
NtPrivilegeCheck

NtPrivilegeCheck 例程确定是否在使用者的访问令牌中启用了一组指定的特权。
NtQueryDirectoryFile

NtQueryDirectoryFile 例程返回有关给定文件句柄指定的目录中文件的各种信息。
NtQueryDirectoryFileEx

详细了解 NtQueryDirectoryFileEx
NtQueryInformationEnlistment

ZwQueryInformationEnlistment 例程检索有关指定登记对象的信息。
NtQueryInformationFile

NtQueryInformationFile 例程返回有关文件对象的各种信息。
NtQueryInformationResourceManager

ZwQueryInformationResourceManager 例程检索有关指定资源管理器对象的信息。
NtQueryInformationToken

NtQueryInformationToken 例程检索有关访问令牌的指定类型信息。
NtQueryInformationTransaction

ZwQueryInformationTransaction 例程检索有关指定事务的信息。
NtQueryInformationTransactionManager

ZwQueryInformationTransactionManager 例程检索有关指定事务管理器对象的信息。
NtQueryObject

NtQueryObject 例程提供有关提供的对象的信息。 如果调用在用户模式下发生,请使用名称 NtQueryObject。
NtQueryQuotaInformationFile

NtQueryQuotaInformationFile 例程检索与 FileHandle 参数指定的卷关联的配额条目。
NtQuerySecurityObject

NtQuerySecurityObject 例程检索对象的安全描述符的副本。 安全描述符可以采用绝对或自相对形式。
NtQueryVirtualMemory

NtQueryVirtualMemory 例程确定主题进程的虚拟地址空间中页面区域的状态、保护和类型。
NtQueryVolumeInformationFile

此例程检索与给定文件、目录、存储设备或卷关联的卷的相关信息。
NtReadFile

ntifs.h 中的 NtReadFile 例程从打开的文件读取数据。 如果对此函数的调用处于用户模式,请使用名称 NtReadFile 而不是 ZwReadFile。
NtReadOnlyEnlistment

ZwReadOnlyEnlistment 例程将指定的登记设置为只读。
NtRecoverEnlistment

ZwRecoverEnlistment 例程为与指定登记关联的事务启动恢复操作。
NtRecoverResourceManager

ZwRecoverResourceManager 例程尝试恢复与指定资源管理器对象的每个登记关联的事务。
NtRecoverTransactionManager

ZwRecoverTransactionManager 例程从日志流中的恢复信息重新构造事务管理器对象的状态 (包括所有事务、登记和资源管理器) 。
NtRenameTransactionManager

NtRenameTransactionManager 例程更改存储在日志文件名称中包含的 CLFS 日志文件流中的事务管理器对象的标识。
NtRollbackComplete

ZwRollbackComplete 例程通知 KTM 调用资源管理器已完成回滚事务的数据。
NtRollbackEnlistment

ZwRollbackEnlistment 例程回滚与指定登记关联的事务。
NtRollbackTransaction

ZwRollbackTransaction 例程为指定的事务启动回滚操作。
NtRollforwardTransactionManager

ZwRollforwardTransactionManager 例程为分配给指定事务管理器的所有正在进行的事务启动恢复操作。
NtSetInformationEnlistment

ZwSetInformationEnlistment 例程设置指定登记对象的信息。
NtSetInformationFile

ntifs.h 中的 NtSetInformationFile 例程会更改有关文件对象的各种类型的信息。
NtSetInformationResourceManager

不使用 ZwSetInformationResourceManager 例程。
NtSetInformationThread

了解 ZwSetInformationThread 例程如何设置线程的优先级。
NtSetInformationToken

NtSetInformationToken 例程修改指定令牌中的信息。 调用过程必须具有设置信息的访问权限。
NtSetInformationTransaction

ZwSetInformationTransaction 例程设置指定事务的信息。
NtSetInformationTransactionManager

请勿从内核模式代码调用此例程。
NtSetQuotaInformationFile

NtSetQuotaInformationFile 例程更改与 FileHandle 参数关联的卷的配额条目。
NtSetSecurityObject

NtSetSecurityObject 例程设置对象的安全状态。 如果调用处于用户模式,请使用名称 NtSetSecurityObject。
NtSinglePhaseReject

ZwSinglePhaseReject 例程通知 KTM 调用资源管理器不支持指定登记的单阶段提交操作。
NtUnlockFile

NtUnlockFile 例程解锁文件中的字节范围锁。 如果调用处于用户模式,请使用名称 NtUnlockFile 而不是 ZwUnlockFile。
NtWriteFile

ntifs.h 中的 NtWriteFile 例程将数据写入打开的文件。 如果对此函数的调用处于用户模式,请使用名称 NtWriteFile 而不是 ZwWriteFile。
ObCloseHandle

ObCloseHandle 例程关闭对象句柄。
ObDereferenceObject

ObDereferenceObject 例程递减给定对象的引用计数并执行保留检查。
ObDereferenceObjectDeferDelete

ObDereferenceObjectDeferDelete 例程递减给定对象的引用计数,检查对象保留期,并避免死锁。
ObDereferenceObjectDeferDeleteWithTag

ObDereferenceObjectDeferDeleteWithTag 例程递减指定对象的引用计数,延迟删除对象以避免死锁,并将四字节标记值写入对象以支持对象引用跟踪。
ObDereferenceObjectWithTag

ObDereferenceObjectWithTag 例程递减指定对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。
ObfReferenceObject

ObfReferenceObject 例程将引用计数递增到给定对象。
ObGetObjectSecurity

ObGetObjectSecurity 例程获取给定对象的安全描述符。
ObReferenceObject

ObReferenceObject 例程将引用计数递增到给定对象。
ObReferenceObjectByHandle

ObReferenceObjectByHandle 例程在对象句柄上提供访问验证,如果可以授予访问权限,则返回指向对象的正文的相应指针。
ObReferenceObjectByHandleWithTag

ObReferenceObjectByHandleWithTag 例程递增由指定句柄标识的对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。
ObReferenceObjectByPointer

ObReferenceObjectByPointer 例程递增给定对象的指针引用计数。
ObReferenceObjectByPointerWithTag

ObReferenceObjectByPointerWithTag 例程递增指定对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。
ObReferenceObjectSafe

ObReferenceObjectSafe 函数递增对象的引用计数,并确定使用对象是否安全。 如果对象被删除或 TRUE,则返回 FALSE;如果对象可以安全地进一步使用该对象。
ObReferenceObjectWithTag

ObReferenceObjectWithTag 例程递增指定对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。
ObRegisterCallbacks

ObRegisterCallbacks 例程注册线程、进程和桌面句柄操作的回调例程列表。
ObReleaseObjectSecurity

ObReleaseObjectSecurity 例程是 ObGetObjectSecurity 的对等。
ObUnRegisterCallbacks

ObUnRegisterCallbacks 例程取消注册一组注册到 ObRegisterCallbacks 例程的回调例程。
PALLOCATE_ADAPTER_CHANNEL

AllocateAdapterChannel 例程代表目标设备对象为 DMA 操作准备系统,然后调用驱动程序提供的 AdapterControl 例程来执行 DMA 操作。
PALLOCATE_ADAPTER_CHANNEL_EX

AllocateAdapterChannelEx 例程分配执行 DMA 传输所需的资源,然后调用驱动程序提供的 AdapterControl 例程来启动 DMA 传输。
PALLOCATE_COMMON_BUFFER

AllocateCommonBuffer 例程分配内存并映射内存,以便可从处理器和设备同时访问内存以供 DMA 操作。
PALLOCATE_COMMON_BUFFER_EX

AllocateCommonBufferEx 例程为公共缓冲区分配内存并映射此内存,以便处理器和执行 DMA 操作的设备可以访问内存。
PALLOCATE_COMMON_BUFFER_VECTOR

详细了解:PALLOCATE_COMMON_BUFFER_VECTOR回调函数
PALLOCATE_COMMON_BUFFER_WITH_BOUNDS

详细了解:PALLOCATE_COMMON_BUFFER_WITH_BOUNDS回调函数
PALLOCATE_DOMAIN_COMMON_BUFFER

详细了解:PALLOCATE_DOMAIN_COMMON_BUFFER回调函数
PBUILD_MDL_FROM_SCATTER_GATHER_LIST

BuildMdlFromScatterGatherList 例程从系统分配的散点/收集列表生成 MDL。请注意,此例程保留供系统使用。
PBUILD_SCATTER_GATHER_LIST

BuildScatterGatherList 例程使用驱动程序提供的缓冲区为 DMA 操作准备系统,以生成散点/收集列表。
PBUILD_SCATTER_GATHER_LIST_EX

BuildScatterGatherListEx 例程分配 DMA 传输所需的资源、生成散点/收集列表,并调用驱动程序提供的 AdapterListControl 例程来启动 DMA 传输。
PCALCULATE_SCATTER_GATHER_LIST_SIZE

CalculateScatterGatherList 例程计算保存给定缓冲区所需的散点/收集列表的大小(以字节为单位)。
PCANCEL_ADAPTER_CHANNEL

CancelAdapterChannel 例程尝试取消挂起的请求以分配 DMA 通道。
PCANCEL_MAPPED_TRANSFER

CancelMappedTransfer 例程取消当前映射到适配器的系统 DMA 传输。
PCI_MSIX_MASKUNMASK_ENTRY

MaskTableEntry 例程屏蔽 MSI-X 硬件中断表中的中断。
PCI_MSIX_SET_ENTRY

SetTableEntry 例程为 MSI-X 硬件中断表中的表项设置消息 ID。
PCLFS_CLIENT_ADVANCE_TAIL_CALLBACK

ClfsAdvanceTailCallback 函数将基日志序列号 (LSN) 提升客户端日志。
PCLFS_CLIENT_LFF_HANDLER_COMPLETE_CALLBACK

ClfsLogGrowthCompleteCallback 函数实现在以前已满的日志中释放空间时客户端将执行的操作。
PCLFS_CLIENT_LOG_UNPINNED_CALLBACK

ClfsLogUnpinnedCallback 函数实现客户端在以前固定的日志变为未固定时将采取的任何操作。
PCONFIGURE_ADAPTER_CHANNEL

ConfigureAdapterChannel 例程调用由适配器对象表示的 DMA 控制器实现的自定义函数。
PCREATE_PROCESS_NOTIFY_ROUTINE

驱动程序实现的进程创建回调,用于跟踪针对驱动程序的内部状态创建和删除进程的系统范围。
PCREATE_PROCESS_NOTIFY_ROUTINE_EX

驱动程序实现的回调例程,用于在创建或退出进程时通知调用方。
PCREATE_THREAD_NOTIFY_ROUTINE

驱动程序实现的回调例程,用于在创建或删除线程时通知调用方。
PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE

了解PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE函数如何初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS 结构。
PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE

PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS 结构。
PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE

了解 PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS 结构。
PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE

PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS结构。
PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE

了解 PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE 结构。
PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE

PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE 结构。
PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE

了解 PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_GPIO_RESOURCE 结构。
PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE

PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE结构。
PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE

了解 PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_INTERRUPT_RESOURCE 结构。
PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE

PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_INTERRUPT_RESOURCE结构。
PEP_ACPI_INITIALIZE_IOPORT_RESOURCE

了解 PEP_ACPI_INITIALIZE_IOPORT_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE 结构。
PEP_ACPI_INITIALIZE_IOPORT_RESOURCE

PEP_ACPI_INITIALIZE_IOPORT_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE结构。
PEP_ACPI_INITIALIZE_MEMORY_RESOURCE

了解PEP_ACPI_INITIALIZE_MEMORY_RESOURCE函数如何初始化平台扩展插件 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE 结构。
PEP_ACPI_INITIALIZE_MEMORY_RESOURCE

PEP_ACPI_INITIALIZE_MEMORY_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE结构。
PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE

了解 PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_SPB_I2C_RESOURCE结构。
PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE

PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_I2C_RESOURCE结构。
PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE

了解 PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_SPB_SPI_RESOURCE 结构。
PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE

PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_SPI_RESOURCE 结构。
PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE

了解 PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_SPB_UART_RESOURCE 结构。
PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE

PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_UART_RESOURCE结构。
PEPCALLBACKNOTIFYACPI

了解 AcceptAcpiNotification 事件回调例程如何处理来自 Windows 电源管理框架的 ACPI 通知 (PoFx) 。
PEPCALLBACKNOTIFYACPI

AcceptAcpiNotification 事件回调例程处理来自 Windows 电源管理框架的 ACPI 通知, (PoFx) 。
PEPCALLBACKNOTIFYDPM

了解 AcceptDeviceNotification 事件回调例程如何处理来自 Windows 电源管理框架 (PoFx) 的设备电源管理 (DPM) 通知。
PEPCALLBACKNOTIFYDPM

AcceptDeviceNotification 事件回调例程处理来自 Windows 电源管理框架 (PoFx) 的设备电源管理 (DPM) 通知。
PEPCALLBACKNOTIFYPPM

了解 AcceptProcessorNotification 事件回调例程如何处理来自 Windows 电源管理框架的处理器电源管理 (PPM) 通知, (PoFx) 。
PEPCALLBACKNOTIFYPPM

AcceptProcessorNotification 事件回调例程处理来自 Windows 电源管理框架的处理器电源管理 (PPM) 通知, (PoFx) 。
PEPCALLBACKPOWERONCRASHDUMPDEVICE

了解 PowerOnDumpDeviceCallback 回调例程如何打开故障转储设备。
PEPCALLBACKPOWERONCRASHDUMPDEVICE

PowerOnDumpDeviceCallback 回调例程打开故障转储设备。
PFLUSH_ADAPTER_BUFFERS

FlushAdapterBuffers 例程刷新系统 DMA 控制器内部缓存或总线主适配器内部缓存中剩余的任何数据,并在 DMA 传输操作结束时刷新总线主适配器的内部缓存。
PFLUSH_ADAPTER_BUFFERS_EX

FlushAdapterBuffersEx 例程刷新在系统 DMA 控制器或总线主设备执行的 DMA 传输操作结束时保留在数据缓存中的任何数据。
PFLUSH_DMA_BUFFER

详细了解:PFLUSH_DMA_BUFFER回调函数
PFREE_ADAPTER_CHANNEL

当驱动程序完成满足当前 IRP 所需的所有 DMA 操作时,FreeAdapterChannel 例程会释放系统 DMA 控制器。
PFREE_ADAPTER_OBJECT

FreeAdapterObject 例程在驱动程序完成所有 DMA 操作后释放指定的适配器对象。
PFREE_COMMON_BUFFER

FreeCommonBuffer 例程释放由 AllocateCommonBuffer 分配的通用缓冲区,以及缓冲区使用的所有资源。
PFREE_COMMON_BUFFER_FROM_VECTOR

详细了解:PFREE_COMMON_BUFFER_FROM_VECTOR回调函数
PFREE_COMMON_BUFFER_VECTOR

详细了解:PFREE_COMMON_BUFFER_VECTOR回调函数
PFREE_MAP_REGISTERS

FreeMapRegisters 例程释放了一组从对 AllocateAdapterChannel 的调用中保存的映射寄存器。
PGET_COMMON_BUFFER_FROM_VECTOR_BY_INDEX

详细了解:PGET_COMMON_BUFFER_FROM_VECTOR_BY_INDEX回调函数
PGET_DMA_ADAPTER_INFO

GetDmaAdapterInfo 例程检索有关系统 DMA 通道的硬件功能的信息。
PGET_DMA_ALIGNMENT

GetDmaAlignment 例程返回 DMA 系统的对齐要求。
PGET_DMA_DOMAIN

详细了解:PGET_DMA_DOMAIN回调函数
PGET_DMA_TRANSFER_INFO

GetDmaTransferInfo 例程计算散点/收集 DMA 传输的分配要求。
PGET_LOCATION_STRING

PnpGetLocationString 例程提供设备的SPDRP_LOCATION_PATHS属性特定于设备的一部分。
PGET_SCATTER_GATHER_LIST

GetScatterGatherList 例程通过系统 DMA 控制器或总线主适配器,代表目标设备对象为 DMA 散点/收集操作准备系统。
PGET_SCATTER_GATHER_LIST_EX

GetScatterGatherListEx 例程分配 DMA 传输所需的资源、生成散点/收集列表,并调用驱动程序提供的 AdapterListControl 例程来启动 DMA 传输。
pHalExamineMBR

调用 pHalExamineMBR 回调函数以读取磁盘 (MBR) 的主启动记录,如果 MBR 为指定类型,则返回 MBR 数据。
pHalQuerySystemInformation

详细了解:pHalQuerySystemInformation 回调函数
pHalSetSystemInformation

使用 HAL 注册 MCA 驱动程序。
PINITIALIZE_DMA_TRANSFER_CONTEXT

InitializeDmaTransferContext 例程初始化一个不透明的 DMA 传输上下文,该上下文用于跟踪 DMA 资源的挂起分配。
PINTERFACE_DEREFERENCE

PINTERFACE_DEREFERENCE回调函数 (miniport.h) 递减驱动程序定义的接口上的引用计数。
PINTERFACE_DEREFERENCE

PINTERFACE_DEREFERENCE回调函数 (wdm.h) 递减驱动程序定义的接口上的引用计数。
PINTERFACE_REFERENCE

PINTERFACE_REFERENCE回调函数 (miniport.h) 递增驱动程序定义的接口上的引用计数。
PINTERFACE_REFERENCE

PINTERFACE_REFERENCE回调函数 (wdm.h) 递增驱动程序定义的接口上的引用计数。
PJOIN_DMA_DOMAIN

详细了解:PJOIN_DMA_DOMAIN回调函数
PLEAVE_DMA_DOMAIN

详细了解:PLEAVE_DMA_DOMAIN回调函数
PLOAD_IMAGE_NOTIFY_ROUTINE

操作系统调用,以便在驱动程序映像或用户映像 (时通知驱动程序,例如,DLL 或 EXE) 映射到虚拟内存中。
PMAP_TRANSFER

MapTransfer 例程为适配器对象设置映射寄存器,以映射从锁定缓冲区传输 DMA。
PMAP_TRANSFER_EX

MapTransferEx 例程设置映射寄存器,将散点/收集列表中的物理地址映射到执行 DMA 传输所需的逻辑地址。
PO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK

ComponentActiveConditionCallback 回调例程通知驱动程序指定组件已完成从空闲条件到活动条件的转换。
PO_FX_COMPONENT_CRITICAL_TRANSITION_CALLBACK

ComponentCriticalTransitionCallback 回调例程处理 F0 (完全处于) 和低功率 Fx 组件电源状态的指定组件之间的转换。
PO_FX_COMPONENT_IDLE_CONDITION_CALLBACK

ComponentIdleConditionCallback 回调例程通知驱动程序指定组件已完成从活动条件到空闲条件的转换。
PO_FX_COMPONENT_IDLE_STATE_CALLBACK

ComponentIdleStateCallback 回调例程通知驱动程序对指定组件的 Fx 电源状态的挂起更改。
PO_FX_COMPONENT_PERF_STATE_CALLBACK

ComponentPerfStateCallback 回调例程通知驱动程序更改组件的性能状态的请求已完成。
PO_FX_DEVICE_POWER_NOT_REQUIRED_CALLBACK

DevicePowerNotRequiredCallback 回调例程通知设备驱动程序,设备不需要保持 D0 电源状态。
PO_FX_DEVICE_POWER_REQUIRED_CALLBACK

DevicePowerRequiredCallback 回调例程通知设备驱动程序设备必须进入并保持 D0 电源状态。
PO_FX_DIRECTED_POWER_DOWN_CALLBACK

详细了解:PO_FX_DIRECTED_POWER_DOWN_CALLBACK回调函数
PO_FX_DIRECTED_POWER_UP_CALLBACK

详细了解:PO_FX_DIRECTED_POWER_UP_CALLBACK回调函数
PO_FX_POWER_CONTROL_CALLBACK

PowerControlCallback 回调例程执行电源管理框架 (PoFx) 请求的电源控制操作。
POB_POST_OPERATION_CALLBACK

发生进程或线程句柄操作后,操作系统调用 ObjectPostCallback 例程。
POB_PRE_OPERATION_CALLBACK

当进程或线程句柄操作发生时,操作系统会调用 ObjectPreCallback 例程。
PoCallDriver

ntifs.h 中的 PoCallDriver 例程将电源 IRP 传递给设备堆栈中的下一个较低驱动程序。 (Windows Server 2003、Windows XP 和 Windows 2000 only.) 。
PoCallDriver

wdm.h 中的 PoCallDriver 例程将电源 IRP 传递到设备堆栈中的下一个较低驱动程序。 (Windows Server 2003、Windows XP 和 Windows 2000 only.) 。
PoClearPowerRequest

ntifs.h 中的 PoClearPowerRequest 例程递减指定电源请求类型的计数。
PoClearPowerRequest

wdm.h 文件中的 PoClearPowerRequest 例程递减指定电源请求类型的计数。
PoCreatePowerRequest

ntifs.h 中的 PoCreatePowerRequest 例程创建电源请求对象。 若要启用电源请求,请创建一个电源请求对象并将其用于所有调用。
PoCreatePowerRequest

wdm.h 中的 PoCreatePowerRequest 例程创建一个电源请求对象。 若要启用电源请求,请创建一个电源请求对象并将其用于所有调用。
PoDeletePowerRequest

ntifs.h 中的 PoDeletePowerRequest 例程删除电源请求对象。 驱动程序必须先删除电源请求对象,然后才能删除设备对象。
PoDeletePowerRequest

wdm.h 中的 PoDeletePowerRequest 例程将删除电源请求对象。 驱动程序必须先删除电源请求对象,然后才能删除设备对象。
PoEndDeviceBusy

ntifs.h 中的 PoEndDeviceBusy 例程标记设备繁忙时间段的结束。
PoEndDeviceBusy

wdm.h 文件中的 PoEndDeviceBusy 例程标志着设备繁忙一段时间的结束。
PoFxActivateComponent

PoFxActivateComponent 例程递增指定组件的激活引用计数。
POFXCALLBACKCRITICALRESOURCE

了解 TransitionCriticalResource 例程如何更改核心系统组件的主动/非活动状态。
POFXCALLBACKCRITICALRESOURCE

TransitionCriticalResource 例程更改核心系统组件的主动/非活动状态。
POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS

了解 EnumerateUnmaskedInterrupts 例程如何枚举中断源,这些源的中断未屏蔽和启用。
POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS

EnumerateUnmaskedInterrupts 例程枚举中断源,其中断已取消掩码并启用。
POFXCALLBACKPLATFORMIDLEVETO

了解 PlatformIdleVeto 例程如何递增或递减平台空闲状态的否决码的否决计数。
POFXCALLBACKPLATFORMIDLEVETO

PlatformIdleVeto 例程递增或递减平台空闲状态的否决代码的否决计数。
POFXCALLBACKPROCESSORHALT

了解 ProcessorHalt 例程如何准备要停止的处理器。
POFXCALLBACKPROCESSORHALT

ProcessorHalt 例程准备要停止的处理器。
POFXCALLBACKPROCESSORIDLEVETO

了解 ProcessorIdleVeto 例程如何递增或递减处理器空闲状态的否决码的否决计数。
POFXCALLBACKPROCESSORIDLEVETO

ProcessorIdleVeto 例程递增或递减处理器空闲状态的否决码的否决计数。
POFXCALLBACKREQUESTCOMMON

了解 RequestCommon 例程是泛型请求处理程序。
POFXCALLBACKREQUESTCOMMON

RequestCommon 例程是一个泛型请求处理程序。
POFXCALLBACKREQUESTINTERRUPT

了解 RequestInterrupt 例程如何请求操作系统重播在硬件平台处于低功率状态时可能丢失的边缘触发中断。
POFXCALLBACKREQUESTINTERRUPT

RequestInterrupt 例程请求操作系统重播在硬件平台处于低功率状态时可能丢失的边缘触发中断。
POFXCALLBACKREQUESTWORKER

了解 Platform extension 插件 (PEP) 如何调用 RequestWorker 例程,以通知 Windows 电源管理框架 (PoFx) 平台扩展插件 (PEP) 具有代表指定设备提交的工作请求。
POFXCALLBACKREQUESTWORKER

RequestWorker 例程由平台扩展插件 (PEP) 调用,通知 Windows 电源管理框架 (PoFx) 平台扩展插件 (PEP) 具有代表指定设备提交的工作请求。
POFXCALLBACKUPDATEPLATFORMIDLESTATE

了解 UpdatePlatformIdleState 例程如何由平台扩展插件 (PEP) 调用,以更新指定平台空闲状态的属性。
POFXCALLBACKUPDATEPLATFORMIDLESTATE

UpdatePlatformIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定平台空闲状态的属性。
POFXCALLBACKUPDATEPROCESSORIDLESTATE

了解 UpdateProcessorIdleState 例程如何由平台扩展插件 (PEP) 调用,以更新指定处理器空闲状态的属性。
POFXCALLBACKUPDATEPROCESSORIDLESTATE

UpdateProcessorIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定处理器空闲状态的属性。
PoFxCompleteDevicePowerNotRequired

PoFxCompleteDevicePowerNotRequired 例程通知电源管理框架 (PoFx) 调用驱动程序已完成对驱动程序 DevicePowerNotRequiredCallback 回调例程的响应。
PoFxCompleteDirectedPowerDown

定向 Power Framework (DFx) 客户端驱动程序调用此函数,以完成定向关闭电源转换。
PoFxCompleteIdleCondition

PoFxCompleteIdleCondition 例程通知电源管理框架 (PoFx) 指定组件已完成对空闲条件的挂起更改。
PoFxCompleteIdleState

PoFxCompleteIdleState 例程通知电源管理框架 (PoFx) 指定组件已完成对 Fx 状态的挂起更改。
PoFxIdleComponent

PoFxIdleComponent 例程递减指定组件上的激活引用计数。
PoFxIssueComponentPerfStateChange

PoFxIssueComponentPerfStateChange 例程提交请求以将设备组件置于特定性能状态。
PoFxIssueComponentPerfStateChangeMultiple

PoFxIssueComponentPerfStateChangeMultiple 例程提交请求,以同时更改设备组件在多个性能状态集中的性能状态。
PoFxNotifySurprisePowerOn

PoFxNotifySurprisePowerOn 例程通知电源管理框架 (PoFx) 设备已打开,作为向其他设备供电的副作用。
PoFxPowerControl

PoFxPowerControl 例程向电源管理框架发送电源控制请求, (PoFx) 。
PoFxPowerOnCrashdumpDevice

PoFxPowerOnCrashdumpDevice 例程请求启用故障转储设备。
PoFxQueryCurrentComponentPerfState

PoFxQueryCurrentComponentPerfState 例程检索组件性能状态集中的活动性能状态。
PoFxRegisterComponentPerfStates

PoFxRegisterComponentPerfStates 例程注册设备组件,以便由电源管理框架 (PoFx) 进行性能状态管理。
PoFxRegisterCoreDevice

了解 PoFxRegisterCoreDevice 例程如何将新的核心系统资源注册到 Windows 电源管理框架 (PoFx) 。
PoFxRegisterCoreDevice

PoFxRegisterCoreDevice 例程将新的核心系统资源注册到 Windows 电源管理框架 (PoFx) 。
PoFxRegisterCrashdumpDevice

PoFxRegisterCrashdumpDevice 例程注册故障转储设备。
PoFxRegisterDevice

PoFxRegisterDevice 例程将设备注册到电源管理框架 (PoFx) 。
PoFxRegisterPlugin

了解 PoFxRegisterPlugin 例程如何使用 Windows 电源管理框架 (PoFx) 注册平台扩展插件 (PEP) 。
PoFxRegisterPlugin

PoFxRegisterPlugin 例程使用 Windows 电源管理框架 (PoFx) 注册平台扩展插件 (PEP) 。
PoFxRegisterPluginEx

了解 PoFxRegisterPluginEx 例程如何使用 Windows 电源管理框架 (PoFx) 注册平台扩展插件 (PEP) 。
PoFxRegisterPluginEx

PoFxRegisterPluginEx 例程使用 Windows 电源管理框架 (PoFx) 注册平台扩展插件 (PEP) 。
PoFxReportDevicePoweredOn

PoFxReportDevicePoweredOn 例程通知电源管理框架, (PoFx) 设备在) 电源状态上完全完成到 D0 (的请求转换。
PoFxSetComponentLatency

PoFxSetComponentLatency 例程指定在从空闲条件转换到指定组件中的活动条件时可以容忍的最大延迟。
PoFxSetComponentResidency

PoFxSetComponentResidency 例程设置组件进入空闲条件后可能保持空闲状态的估计时间。
PoFxSetComponentWake

PoFxSetComponentWake 例程指示每当组件进入空闲条件时,驱动程序是否为指定的组件提供支持以唤醒。
PoFxSetDeviceIdleTimeout

PoFxSetDeviceIdleTimeout 例程指定从设备最后一个组件进入空闲条件到电源管理框架 (PoFx) 调用驱动程序的 DevicePowerNotRequiredCallback 例程时的最低时间间隔。
PoFxSetTargetDripsDevicePowerState

调用此例程以通知电源管理器针对 DRIPS 的设备的目标设备电源状态。 驱动程序可以替代 PEP 提供的 DRIPS 约束。
PoFxStartDevicePowerManagement

PoFxStartDevicePowerManagement 例程使用电源管理框架完成设备注册, (PoFx) 并启动设备电源管理。
PoFxUnregisterDevice

PoFxUnregisterDevice 例程从电源管理框架中删除设备注册, (PoFx) 。
PoGetSystemWake

PoGetSystemWake 例程确定指定的 IRP 是否已标记为从睡眠状态唤醒系统。
PopEntryList

PopEntryList 例程从SINGLE_LIST_ENTRY结构的单唱链接列表中删除第一个条目。
PoQueryWatchdogTime

ntifs.h 中的 PoQueryWatchdogTime 例程指示电源管理器是否为分配给设备堆栈的任何电源 IRP 启用了超时计数器。
PoQueryWatchdogTime

wdm.h 中的 PoQueryWatchdogTime 例程指示电源管理器是否为分配给设备堆栈的任何电源 IRP 启用了超时计数器。
PoRegisterDeviceForIdleDetection

ntifs.h 中的 PoRegisterDeviceForIdleDetection 例程启用或取消空闲检测,并设置设备的空闲超时值。
PoRegisterDeviceForIdleDetection

wdm.h 中的 PoRegisterDeviceForIdleDetection 例程启用或取消空闲检测,并设置设备的空闲超时值。
PoRegisterPowerSettingCallback

ntifs.h 中的 PoRegisterPowerSettingCallback 例程注册电源设置回调例程,以接收电源设置中更改的通知。
PoRegisterPowerSettingCallback

wdm.h 中的 PoRegisterPowerSettingCallback 例程注册电源设置回调例程,以接收指定电源设置中更改的通知。
PoRegisterSystemState

ntifs.h 中的 PoRegisterSystemState 例程将系统注册为忙碌,因为某些活动由标志指示。
PoRegisterSystemState

wdm.h 中的 PoRegisterSystemState 例程将系统注册为忙碌,因为某些活动由标志指示。
PoRequestPowerIrp

PoRequestPowerIrp 例程分配电源 IRP,并将其发送到指定设备的设备堆栈中的顶部驱动程序。
PoSetDeviceBusyEx

ntifs.h 中的 PoSetDeviceBusyEx 例程通知电源管理器与指定的空闲计数器关联的设备正忙。
PoSetDeviceBusyEx

wdm.h 中的 PoSetDeviceBusyEx 例程通知电源管理器与指定的空闲计数器关联的设备正忙。
PoSetPowerRequest

ntifs.h 中的 PoSetPowerRequest 例程递增电源请求类型的计数。 Power Manager 对每个电源请求类型的请求进行计数。
PoSetPowerRequest

wdm.h 中的 PoSetPowerRequest 例程递增指定电源请求类型的计数。 Power Manager 对每个电源请求类型的请求进行计数。
PoSetPowerState

ntifs.h 中的 PoSetPowerState 例程通知设备电源状态更改的系统。
PoSetPowerState

wdm.h 中的 PoSetPowerState 例程通知设备设备电源状态更改的系统。
PoSetSystemState

驱动程序调用 PoSetSystemState 例程以指示系统处于活动状态。
PoSetSystemWake

PoSetSystemWake 例程将指定的 IRP 标记为导致系统处于睡眠状态的 IRP。
PoSetSystemWakeDevice

PoSetSystemWakeDevice 函数尝试从提供的设备对象中提取 PDO。
PoStartDeviceBusy

ntifs.h 中的 PoStartDeviceBusy 例程标记设备正忙的时间段的开始。
PoStartDeviceBusy

wdm.h 中的 PoStartDeviceBusy 例程标志着设备正忙的时间段的开始。
PoStartNextPowerIrp

ntifs.h 中的 PoStartNextPowerIrp 例程向电源管理器发出信号,即驱动程序已准备好处理下一个电源 IRP。
PoStartNextPowerIrp

wdm.h 中的 PoStartNextPowerIrp 例程指示驱动程序已准备好处理下一个电源 IRP。
PoUnregisterPowerSettingCallback

ntifs.h 中的 PoUnregisterPowerSettingCallback 例程取消注册驱动程序以前注册的电源设置回调例程。
PoUnregisterPowerSettingCallback

wdm.h 中的 PoUnregisterPowerSettingCallback 例程取消注册驱动程序以前注册的电源设置回调例程。
PoUnregisterSystemState

ntifs.h 中的 PoUnregisterSystemState 例程取消由 PoRegisterSystemState 创建的系统状态注册。
PoUnregisterSystemState

wdm.h 中的 PoUnregisterSystemState 例程取消 PoRegisterSystemState 创建的系统状态注册。
PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER

详细了解:PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER回调函数
PPHYSICAL_COUNTER_OVERFLOW_HANDLER

PPHYSICAL_COUNTER_OVERFLOW_HANDLER由客户端驱动程序实现,用于处理通过 HalAllocateHardwareCounters 例程获取的计数器资源的溢出。
PPO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK

了解 EnumerateInterruptSource 回调例程如何提供平台扩展插件 (PEP) 以及有关中断源的信息。
PPO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK

EnumerateInterruptSource 回调例程提供平台扩展插件 (PEP) ,其中包含有关中断源的信息。
PPUT_DMA_ADAPTER

PutDmaAdapter 例程释放以前由 IoGetDmaAdapter 分配的DMA_ADAPTER结构。
PPUT_SCATTER_GATHER_LIST

PutScatterGatherList 例程释放以前分配的映射寄存器和散点/收集列表,用于散点/收集 DMA。
PREAD_DMA_COUNTER

ReadDmaCounter 例程返回在当前从属 DMA 操作期间要传输的剩余字节数。
PREENUMERATE_SELF

ReenumerateSelf 例程请求总线驱动程序重新生成子设备。
ProbeForRead

ProbeForRead 例程检查用户模式缓冲区是否实际驻留在地址空间的用户部分中,并且正确对齐。
ProbeForWrite

ProbeForWrite 例程检查用户模式缓冲区是否实际驻留在地址空间的用户模式部分,是可写的,并且正确对齐。
PROCESSOR_HALT_ROUTINE

停止回调例程将处理器转换为空闲状态。
PsAllocateAffinityToken

PsAllocateAffinityToken 函数分配线程关联令牌。
PsAllocSiloContextSlot

此例程分配可用于在所有接收器中插入、检索和删除对象的槽。 .
PsAttachSiloToCurrentThread

此例程暂时将线程置于指定的接收器中。
PsCreateSiloContext

此例程创建一个对象,该对象将插入到接收器中。
PsCreateSystemThread

PsCreateSystemThread 例程创建在内核模式下执行的系统线程,并返回线程的句柄。
PsDereferenceSiloContext

此例程递减对象上的引用计数。
PsDetachSiloFromCurrentThread

此例程从附加添加的接收器中删除线程。 有关附加的详细信息,请参阅 PsAttachSiloToCurrentThread 例程。
PsFreeAffinityToken

PsFreeAffinityToken 函数释放由 PsAllocateAffinityToken 分配的关联令牌。
PsFreeSiloContextSlot

此例程释放指定的槽,并使它在系统中可用。 它会撤消 PsAllocSiloContextSlot 例程的效果。
PsGetCurrentProcessId

PsGetCurrentProcessId 例程标识当前线程的进程。
PsGetCurrentServerSilo

此例程返回线程的有效服务器接收器。
PsGetCurrentSilo

此例程返回调用线程的当前孤岛。 首先检查线程是否已附加到孤岛。 如果没有,则检查线程是否位于孤岛中。
PsGetCurrentThread

PsGetCurrentThread 例程标识当前线程。
PsGetCurrentThread

了解 PsGetCurrentThread 例程如何标识当前线程。
PsGetCurrentThread

了解 PsGetCurrentThread 例程如何 (wdm.h) 标识当前线程。
PsGetCurrentThreadId

PsGetCurrentThreadId 例程标识当前线程。
PsGetCurrentThreadTeb

PsGetCurrentThreadTeb 例程返回当前线程的线程环境块 (TEB) 。 必须在内核模式下调用。
PsGetEffectiveServerSilo

此例程遍历接收器的父链,直到找到有效的服务器接收器或主机接收器。
PsGetHostSilo

此例程返回主机接收器。
PsGetJobServerSilo

此例程返回作业的有效 ServerSilo。 只要提供的 Job 对象保持引用,返回的指针就有效。
PsGetJobSilo

此例程返回层次结构中作为孤岛的第一个作业。 只要提供的 Job 对象保持引用,返回的指针就有效。
PsGetParentSilo

检索给定作业对象的层次结构中最直接的父接收器。
PsGetPermanentSiloContext

此例程检索在接收器中插入的对象,而不递增引用计数。
PsGetProcessCreateTimeQuadPart

PsGetProcessCreateTimeQuadPart 例程返回一个 LONGLONG 值,该值代表创建进程的时间。
PsGetProcessId

PsGetProcessId 例程返回与指定进程关联的进程标识符 (进程 ID) 。
PsGetServerSiloActiveConsoleId

获取所提供线程的当前服务器接收器上下文的活动控制台。
PsGetSiloContainerId

获取给定接收器的 ContainerId。
PsGetSiloContext

此例程从指定的接收器和槽中检索接收器上下文。
PsGetSiloMonitorContextSlot

此例程返回注册期间监视器分配的接收器上下文槽。
PsGetThreadProcessId

PsGetThreadProcessId 例程返回与指定线程的进程关联的进程标识符。
PsGetThreadServerSilo

确定给定线程是否为孤岛。
PsGetVersion

此函数在 Windows XP 及更高版本的 Windows 操作系统中已过时。 请改用 RtlGetVersion。PsGetVersion 返回有关基于 NT 的操作系统的当前版本的调用方选择的信息。
PsInsertPermanentSiloContext

此例程在接收器的空槽中插入对象。
PsInsertSiloContext

了解此例程如何在接收器的空槽中插入对象。
PsIsHostSilo

此例程将检查提供的接收器是否为主机接收器。
PsIsSystemThread

PsIsSystemThread 例程检查给定线程是否为系统线程。
PsMakeSiloContextPermanent

此例程使接收器实例中的槽为只读,从而允许检索槽中的对象,而不会影响该对象的引用计数。
PsQueryTotalCycleTimeProcess

PsQueryTotalCycleTimeProcess 例程返回指定进程的累积周期时间。
PsReferenceSiloContext

此例程递增对象上的引用计数。
PsRegisterSiloMonitor

此例程注册服务器接收器监视器,该监视器可以接收有关服务器接收器事件的通知。
PsRemoveCreateThreadNotifyRoutine

PsRemoveCreateThreadNotifyRoutine 例程删除由 PsSetCreateThreadNotifyRoutine 例程注册的回调例程。
PsRemoveLoadImageNotifyRoutine

PsRemoveLoadImageNotifyRoutine 例程删除由 PsSetLoadImageNotifyRoutine 例程注册的回调例程。
PsRemoveSiloContext

此例程删除在接收器中插入的对象。
PsReplaceSiloContext

此例程在接收器中插入对象。
PsRevertToUserMultipleGroupAffinityThread

PsRevertToUserMultipleGroupAffinityThread 函数将当前线程还原为其以前的相关性,如给定的关联令牌指示。
PsSetCreateProcessNotifyRoutine

PsSetCreateProcessNotifyRoutine 例程将驱动程序提供的回调例程添加到或从中删除该例程列表,每当创建或删除进程时调用该例程。
PsSetCreateProcessNotifyRoutineEx

PsSetCreateProcessNotifyRoutineEx 例程注册或删除回调例程,在创建或退出进程时通知调用方。
PsSetCreateProcessNotifyRoutineEx2

PsSetCreateProcessNotifyRoutineEx2 例程注册或删除回调例程,在创建或删除进程时通知调用方。
PsSetCreateThreadNotifyRoutine

PsSetCreateThreadNotifyRoutine 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。
PsSetCreateThreadNotifyRoutineEx

PsSetCreateThreadNotifyRoutineEx 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。
PsSetLoadImageNotifyRoutine

PsSetLoadImageNotifyRoutine 例程会注册驱动程序提供的回调,每当映像加载到 (或映射到内存) 时,该回调随后会收到通知。
PsSetLoadImageNotifyRoutineEx

PsSetLoadImageNotifyRoutineEx 例程会注册驱动程序提供的回调,每当映像加载到 (或映射到内存) 时,该回调随后会收到通知。
PsSetSystemMultipleGroupAffinityThread

PsSetSystemMultipleGroupAffinityThread 函数设置当前线程的多组系统相关性。
PsStartSiloMonitor

此例程尝试启动服务器接收器监视器。
PsTerminateServerSilo

此例程终止指定的接收器。
PsTerminateSystemThread

PsTerminateSystemThread 例程终止当前系统线程。
PsUnregisterSiloMonitor

此例程取消注册服务器接收器监视器。
PTM_RM_NOTIFICATION

资源管理器的 ResourceManagerNotification 回调例程接收并处理事务通知。
PushEntryList

PushEntryList 例程在SINGLE_LIST_ENTRY结构的单声链接列表的开头插入一个条目。
READ_PORT_BUFFER_UCHAR

READ_PORT_BUFFER_UCHAR函数 (miniport.h) 将指定端口地址中的字节数读取到缓冲区中。
READ_PORT_BUFFER_UCHAR

READ_PORT_BUFFER_UCHAR函数 (wdm.h) 将指定端口地址中的字节数读取到缓冲区中。
READ_PORT_BUFFER_ULONG

READ_PORT_BUFFER_ULONG函数 (miniport.h) 将指定端口地址中的多个 ULONG 值读取到缓冲区中。
READ_PORT_BUFFER_ULONG

READ_PORT_BUFFER_ULONG函数 (wdm.h) 将指定端口地址中的多个 ULONG 值读取到缓冲区中。
READ_PORT_BUFFER_USHORT

READ_PORT_BUFFER_USHORT函数 (miniport.h) 将指定端口地址中的许多 USHORT 值读取到缓冲区中。
READ_PORT_BUFFER_USHORT

READ_PORT_BUFFER_USHORT函数 (wdm.h) 将指定端口地址中的许多 USHORT 值读取到缓冲区中。
READ_PORT_UCHAR

READ_PORT_UCHAR函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。
READ_PORT_UCHAR

READ_PORT_UCHAR函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。
READ_PORT_UCHAR

READ_PORT_UCHAR函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。
READ_PORT_ULONG

READ_PORT_ULONG函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。
READ_PORT_ULONG

READ_PORT_ULONG函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。
READ_PORT_ULONG

READ_PORT_ULONG函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。
READ_PORT_USHORT

READ_PORT_USHORT函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。
READ_PORT_USHORT

READ_PORT_USHORT函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。
READ_PORT_USHORT

READ_PORT_USHORT函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。
READ_REGISTER_BUFFER_UCHAR

READ_REGISTER_BUFFER_UCHAR函数 (miniport.h) 将指定寄存器地址中的字节数读取到缓冲区中。
READ_REGISTER_BUFFER_UCHAR

READ_REGISTER_BUFFER_UCHAR函数 (wdm.h) 将指定寄存器地址中的多个字节读入缓冲区。
READ_REGISTER_BUFFER_ULONG

READ_REGISTER_BUFFER_ULONG函数 (miniport.h) 将指定寄存器地址中的多个 ULONG 值读取到缓冲区中。
READ_REGISTER_BUFFER_ULONG

READ_REGISTER_BUFFER_ULONG函数 (wdm.h) 将指定寄存器地址中的多个 ULONG 值读取到缓冲区中。
READ_REGISTER_BUFFER_ULONG64

READ_REGISTER_BUFFER_ULONG64函数 (wdm.h) 将指定寄存器地址中的多个 ULONG64 值读取到缓冲区中。
READ_REGISTER_BUFFER_USHORT

READ_REGISTER_BUFFER_USHORT函数 (miniport.h) 将指定寄存器地址中的许多 USHORT 值读取到缓冲区中。
READ_REGISTER_BUFFER_USHORT

READ_REGISTER_BUFFER_USHORT函数 (wdm.h) 将指定寄存器地址中的许多 USHORT 值读取到缓冲区中。
READ_REGISTER_UCHAR

READ_REGISTER_UCHAR函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的字节。
READ_REGISTER_UCHAR

READ_REGISTER_UCHAR函数 (miniport.h) 返回从驻留的映射设备内存中指定寄存器地址读取的字节。
READ_REGISTER_UCHAR

READ_REGISTER_UCHAR函数 (wdm.h) 返回从驻留的映射设备内存中指定寄存器地址读取的字节。
READ_REGISTER_ULONG

READ_REGISTER_ULONG函数 (ioaccess.h) 返回从驻留的映射设备内存中指定寄存器地址读取的 ULONG 值。
READ_REGISTER_ULONG

READ_REGISTER_ULONG函数 (miniport.h) 返回从驻留的映射设备内存中指定寄存器地址读取的 ULONG 值。
READ_REGISTER_ULONG

READ_REGISTER_ULONG函数 (wdm.h) 返回从驻留的映射设备内存中指定寄存器地址读取的 ULONG 值。
READ_REGISTER_ULONG64

READ_REGISTER_ULONG64函数 (wdm.h) 从指定的寄存器地址读取 ULONG64 值。
READ_REGISTER_USHORT

READ_REGISTER_USHORT函数 (miniport.h) 返回从驻留的映射设备内存中指定寄存器地址读取的 USHORT 值。
READ_REGISTER_USHORT

READ_REGISTER_USHORT函数 (wdm.h) 返回从驻留的映射设备内存中指定寄存器地址读取的 USHORT 值。
ReadBooleanRaw

描述 ReadBooleanRaw 函数。
ReadBooleanRaw

本主题介绍 ReadBooleanRaw 函数。
ReadInt32Acquire

本主题介绍 ReadInt32Acquire 函数。
ReadInt32Acquire

ReadInt32Acquire 函数...
ReadInt32NoFence

本主题介绍 ReadInt32NoFence 函数。
ReadInt32NoFence

ReadInt32NoFence 函数...
ReadInt32Raw

本主题介绍 ReadInt32Raw 函数。
ReadInt32Raw

ReadInt32Raw 函数...
ReadUInt32Acquire

本主题介绍 ReadUInt32Acquire 函数。
ReadUInt32Acquire

ReadUInt32Acquire 函数...
ReadUInt32NoFence

本主题介绍 ReadUInt32NoFence 函数。
ReadUInt32NoFence

ReadUInt32NoFence 函数...
ReadUInt32Raw

本主题介绍 ReadUInt32Raw 函数。
ReadUInt32Raw

ReadUInt32Raw 函数...
RemoveEntryList

RemoveEntryList 例程从LIST_ENTRY结构的翻倍链接列表中删除一个条目。
RemoveHeadList

RemoveHeadList 例程从LIST_ENTRY结构二次链接列表的开头删除一个条目。
RemoveTailList

RemoveTailList 例程从LIST_ENTRY结构的双链接列表末尾删除一个条目。
REQUEST_POWER_COMPLETE

PowerCompletion 回调例程完成对电源 IRP 的处理。
RTL_QUERY_REGISTRY_ROUTINE

QueryRoutine 例程提供有关在对 RtlQueryRegistryValues 例程的前面调用中请求的注册表值的信息。
RTL_RUN_ONCE_INIT_FN

RunOnceInitialization 例程执行一次性初始化操作。
RtlAnsiStringToUnicodeSize

RtlAnsiStringToUnicodeSize 例程返回保存转换为 Unicode 字符串的 ANSI 字符串所需的字节数。
RtlAnsiStringToUnicodeString

RtlAnsiStringToUnicodeString 将给定的 ANSI 源字符串转换为 Unicode 字符串。
RtlAppendUnicodeStringToString

RtlAppendUnicodeStringToString 例程连接两个 Unicode 字符串。
RtlAppendUnicodeToString

RtlAppendUnicodeToString 例程将提供的 Unicode 字符串连接到缓冲的 Unicode 字符串。
RtlAreBitsClear

RtlAreBitsClear 例程确定位图变量中的给定位范围是否清晰。
RtlAreBitsSet

RtlAreBitsSet 例程确定是否设置了位图变量中的给定位范围。
RtlByteToChar

将 BYTE 类型的值转换为 CHAR 类型的值。
RtlByteToInt8

将 BYTE 类型的值转换为 INT8 类型的值。
RtlCharToInteger

RtlCharToInteger 例程将单字节字符串转换为指定基中的整数值。
RtlCheckBit

RtlCheckBit 例程确定给定位图变量中的特定位是清除还是设置。
RtlCheckRegistryKey

RtlCheckRegistryKey 例程检查注册表中是否存在给定的命名密钥。
RtlClearAllBits

RtlClearAllBits 例程将给定位图变量中的所有位设置为零。
RtlClearBit

RtlClearBit 例程将位图中的指定位设置为零。
RtlClearBits

RtlClearBits 例程将位图中指定位范围中的所有位设置为零。
RtlCmDecodeMemIoResource

RtlCmDecodeMemIoResource 例程提供描述一系列内存或 I/O 端口地址的CM_PARTIAL_RESOURCE_DESCRIPTOR结构的起始地址和长度。
RtlCmEncodeMemIoResource

RtlCmEncodeMemIoResource 例程更新CM_PARTIAL_RESOURCE_DESCRIPTOR结构,以描述一系列内存或 I/O 端口地址。
RtlCompareMemory

RtlCompareMemory 例程比较两个内存块,并返回匹配的字节数,直到第一个差异为止。
RtlCompareString

RtlCompareString 例程比较两个计数字符串。
RtlCompareUnicodeString

RtlCompareUnicodeString 例程比较两个 Unicode 字符串。
RtlConstantTimeEqualMemory

本主题介绍 RtlConstantTimeEqualMemory 函数。
RtlConvertLongToLargeInteger

RtlConvertLongToLargeInteger 例程将输入有符号整数转换为有符号大整数。
RtlConvertLongToLuid

RtlConvertLongToLuid 例程将长整数转换为本地唯一标识符, (LUID) ,系统使用该标识符来表示安全特权。
RtlConvertUlongToLargeInteger

RtlConvertUlongToLargeInteger 例程将输入无符号整数转换为有符号大整数。 对于 Windows XP 和更高版本的 Windows,请勿使用此例程;使用本机支持__int64。
RtlConvertUlongToLuid

RtlConvertUlongToLuid 例程将无符号长整数转换为本地唯一标识符 (LUID) ,系统使用该标识符来表示安全特权。
RtlCopyMemory

了解 RtlCopyMemory 例程如何将源内存块的内容复制到目标内存块。
RtlCopyMemoryNonTemporal

此函数使用不污染缓存的非时态移动从一个缓冲区复制到另一个缓冲区。 缓冲区不应重叠。
RtlCopyString

RtlCopyString 例程将源字符串复制到目标字符串。
RtlCopyUnicodeString

RtlCopyUnicodeString 例程将源字符串复制到目标字符串。
RtlCreateRegistryKey

RtlCreateRegistryKey 例程沿给定相对路径在注册表中添加键对象。
RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptor 例程初始化新的绝对格式安全描述符。 返回时,安全描述符初始化时没有系统 ACL、无任意 ACL、无所有者、无主组和所有控制标志设置为零。
RtlDeleteRegistryValue

RtlDeleteRegistryValue 例程从给定相对路径的注册表中删除指定的条目名称和关联的值。
RtlDowncaseUnicodeChar

RtlDowncaseUnicodeChar 例程将指定的 Unicode 字符转换为小写。
RtlDWordPtrAdd

添加DWORD_PTR类型的两个值。
RtlDWordPtrMult

将类型DWORD_PTR的一个值乘以另一个值。
RtlDWordPtrSub

从另一个值减去DWORD_PTR类型的一个值。
RtlEqualMemory

RtlEqualMemory 例程比较两个内存块,以确定指定的字节数是否相同。
RtlEqualString

RtlEqualString 例程比较两个计数字符串以确定它们是否相等。
RtlEqualUnicodeString

RtlEqualUnicodeString 例程比较两个 Unicode 字符串,以确定它们是否相等。
RtlExtendCorrelationVector

此例程扩展提供的关联向量。 对于 X.i 形式的关联向量,扩展值为 X.i.0。
RtlFillMemory

RtlFillMemory 例程使用指定的填充值填充内存块。
RtlFillMemoryNonTemporal

此函数使用不污染缓存的非临时移动,使用指定的填充值填充内存块。
RtlFindClearBits

RtlFindClearBits 例程搜索位图中请求大小的一系列清除位。
RtlFindClearBitsAndSet

RtlFindClearBitsAndSet 例程搜索位图中请求大小的一系列清晰位,并在找到位图时设置区域中的所有位。
RtlFindClearRuns

RtlFindClearRuns 例程在给定位图中查找指定数量的清除位数。
RtlFindFirstRunClear

RtlFindFirstRunClear 例程搜索给定位图中初始连续的明位范围。
RtlFindLastBackwardRunClear

RtlFindLastBackwardRunClear 例程在给定位图中搜索前面的明确位数,从指定的索引位置开始。
RtlFindLeastSignificantBit

RtlFindLeastSignificantBit 例程在其参数中返回最小有效非零位的从零开始的位置。
RtlFindLongestRunClear

RtlFindLongestRunClear 例程搜索给定位图中最大连续的明位范围。
RtlFindMostSignificantBit

RtlFindMostSignificantBit 例程返回其参数中最重要的非零位的从零开始的位置。
RtlFindNextForwardRunClear

RtlFindNextForwardRunClear 例程在给定位图变量中搜索下一个明确的位数运行,从指定的索引位置开始。
RtlFindSetBits

RtlFindSetBits 例程搜索位图中请求大小的一系列集位。
RtlFindSetBitsAndClear

RtlFindSetBitsAndClear 例程搜索位图中请求大小的一系列集位,并在找到该位时清除区域中的所有位。
RtlFreeAnsiString

RtlFreeAnsiString 例程释放由 RtlUnicodeStringToAnsiString 分配的存储。
RtlFreeUnicodeString

RtlFreeUnicodeString 例程释放由 RtlAnsiStringToUnicodeString 或 RtlUpcaseUnicodeString 分配的存储。
RtlFreeUTF8String

RtlFreeUTF8String 函数释放由 RtlUnicodeStringToUTF8String 分配的存储。
RtlGetEnabledExtendedFeatures

RtlGetEnabledExtendedFeatures 例程返回系统启用的扩展处理器功能的掩码。
RtlGetPersistedStateLocation

从重定向映射中检索指定 SourceID 的重定向位置。
RtlGetVersion

RtlGetVersion 例程返回有关当前正在运行的操作系统的版本信息。
RtlGUIDFromString

RtlGUIDFromString 例程以二进制格式将给定的 Unicode 字符串转换为 GUID。
RtlHashUnicodeString

RtlHashUnicodeString 例程从给定的 Unicode 字符串和哈希算法创建哈希值。
RtlIncrementCorrelationVector

递增指定的关联向量。 对于表单 X.i 的关联向量,递增值为 X. (i+1) 。
RtlInitAnsiString

RtlInitAnsiString 例程初始化 ANSI 字符的计数字符串。
RtlInitializeBitMap

RtlInitializeBitMap 例程初始化位图变量的标头。
RtlInitializeCorrelationVector

使用提供的 GUID 初始化指定的关联向量。
RtlInitString

RtlInitString 例程初始化 8 位字符的计数字符串。
RtlInitStringEx

ntifs.h 中的 RtlInitStringEx 例程初始化 8 位字符的计数字符串。 RtlInitStringEx 不会更改源字符串。
RtlInitStringEx

wdm.h 中的 RtlInitStringEx 例程初始化 8 位字符的计数字符串。 RtlInitStringEx 不会更改源字符串。
RtlInitUnicodeString

有关详细信息,请参阅 WdmlibRtlInitUnicodeStringEx 函数。
RtlInitUTF8String

RtlInitUTF8String 函数初始化 UTF-8 字符的计数字符串。
RtlInitUTF8StringEx

RtlInitUTF8StringEx 例程初始化 UTF-8 字符的计数字符串。
RtlInt64ToUnicodeString

RtlInt64ToUnicodeString 例程将指定的无符号 64 位整数值转换为表示指定基数中的值的 Unicode 字符串。
RtlInt8Add

添加 INT8 类型的两个值。
RtlInt8Mult

将 INT8 类型的一个值乘以另一个值。
RtlInt8Sub

从另一个值中减去 INT8 类型的一个值。
RtlInt8ToUChar

将 INT8 类型的值转换为 UCHAR 类型的值。
RtlInt8ToUInt

将 INT8 类型的值转换为 UINT 类型的值。
RtlInt8ToUInt8

将 INT8 类型的值转换为 UINT8 类型的值。
RtlInt8ToUIntPtr

将 INT8 类型的值转换为UINT_PTR类型的值。
RtlInt8ToULong

将 INT8 类型的值转换为 ULONG 类型的值。
RtlInt8ToULongLong

将 INT8 类型的值转换为 ULONGLONG 类型的值。
RtlInt8ToULongPtr

将 INT8 类型的值转换为ULONG_PTR类型的值。
RtlInt8ToUShort

将 INT8 类型的值转换为 USHORT 类型的值。
RtlIntAdd

添加 INT 类型的两个值。
RtlIntegerToUnicodeString

RtlIntegerToUnicodeString 例程将无符号整数值转换为指定基中的一个或多个 Unicode 字符的 null 终止字符串。
RtlIntMult

将 INT 类型的一个值乘以另一个值。
RtlIntPtrAdd

添加两个INT_PTR类型的值。
RtlIntPtrMult

将INT_PTR类型的一个值乘以另一个值。
RtlIntPtrSub

从另一个值减去类型INT_PTR的一个值。
RtlIntPtrToChar

将类型INT_PTR的值转换为 CHAR 类型的值。
RtlIntPtrToInt

将类型INT_PTR的值转换为 INT 类型的值。
RtlIntPtrToInt8

将类型INT_PTR的值转换为 INT8 类型的值。
RtlIntPtrToLong

将类型为 INT_PTR 的值转换为 LONG 类型的值。
RtlIntPtrToLongPtr

将类型INT_PTR的值转换为类型LONG_PTR的值。
RtlIntPtrToShort

将类型INT_PTR的值转换为 SHORT 类型的值。
RtlIntPtrToUChar

将类型为 INT_PTR 的值转换为 UCHAR 类型的值。
RtlIntPtrToUInt

将类型INT_PTR的值转换为 UINT 类型的值。
RtlIntPtrToUInt8

将类型INT_PTR的值转换为 UINT8 类型的值。
RtlIntPtrToUIntPtr

将类型INT_PTR的值转换为类型UINT_PTR的值。
RtlIntPtrToULong

将类型INT_PTR的值转换为 ULONG 类型的值。
RtlIntPtrToULongLong

将类型INT_PTR的值转换为 ULONGLONG 类型的值。
RtlIntPtrToULongPtr

将类型INT_PTR的值转换为类型ULONG_PTR的值。
RtlIntPtrToUnicodeString

RtlIntPtrToUnicodeString 例程将指定的ULONG_PTR值转换为表示指定基值的 Unicode 字符串。
RtlIntPtrToUShort

将类型INT_PTR的值转换为 USHORT 类型的值。
RtlIntSub

从另一个值中减去 INT 类型的一个值。
RtlIntToChar

将 INT 类型的值转换为 CHAR 类型的值。
RtlIntToInt8

将 INT 类型的值转换为 INT8 类型的值。
RtlIntToShort

将 INT 类型的值转换为 SHORT 类型的值。
RtlIntToUChar

将 INT 类型的值转换为 UCHAR 类型的值。
RtlIntToUInt

将 INT 类型的值转换为 UINT 类型的值。
RtlIntToUInt8

将 INT 类型的值转换为 UINT8 类型的值。
RtlIntToULong

将 INT 类型的值转换为 ULONG 类型的值。
RtlIntToULongLong

将 INT 类型的值转换为 ULONGLONG 类型的值。
RtlIntToUShort

将 INT 类型的值转换为 USHORT 类型的值。
RtlIoDecodeMemIoResource

RtlIoDecodeMemIoResource 例程提供描述内存或 I/O 端口地址范围的IO_RESOURCE_DESCRIPTOR结构中包含的地址信息。
RtlIoEncodeMemIoResource

RtlIoEncodeMemIoResource 例程更新IO_RESOURCE_DESCRIPTOR结构来描述内存或 I/O 端口地址的范围。
RtlIsNtDdiVersionAvailable

RtlIsNtDdiVersionAvailable 例程确定指定版本的 Microsoft Windows 设备驱动程序接口 (DDI) 是否可用。
RtlIsServicePackVersionInstalled

RtlIsServicePackVersionInstalled 例程确定是否安装了 Microsoft Windows 设备驱动程序接口的指定 Service Pack 版本 (DDI) 。
RtlIsStateSeparationEnabled

检查当前上下文的 SKU 是否支持多个会话。
RtlIsZeroMemory

此例程检查未对齐内存块是否全部为零。
RtlLengthSecurityDescriptor

RtlLengthSecurityDescriptor 例程返回给定安全描述符的大小。
RtlLongAdd

添加 LONG 类型的两个值。
RtlLongAdd

添加 LONGLONG 类型的两个值。
RtlLongLongMult

将 LONGLONG 类型的一个值乘以另一个值。
RtlLongLongSub

从另一个减去 LONGLONG 类型的一个值。
RtlLongLongToChar

将 LONGLONG 类型的值转换为 CHAR 类型的值。
RtlLongLongToInt

将 LONGLONG 类型的值转换为 INT 类型的值。
RtlLongLongToInt8

将 LONGLONG 类型的值转换为 INT8 类型的值。
RtlLongLongToIntPtr

将 LONGLONG 类型的值转换为INT_PTR类型的值。
RtlLongLongToLong

将 LONGLONG 类型的值转换为 LONG 类型的值。
RtlLongLongToLongPtr

将 LONGLONG 类型的值转换为LONG_PTR类型的值。
RtlLongLongToShort

将 LONGLONG 类型的值转换为 SHORT 类型的值。
RtlLongLongToUChar

将 LONGLONG 类型的值转换为 UCHAR 类型的值。
RtlLongLongToUInt

将 LONGLONG 类型的值转换为 UINT 类型的值。
RtlLongLongToUInt8

将 LONGLONG 类型的值转换为 UNIT8 类型的值。
RtlLongLongToULong

将 LONGLONG 类型的值转换为 ULONG 类型的值。
RtlLongLongToULongLong

将 LONGLONG 类型的值转换为 LONGLONG 类型的值。
RtlLongLongToUShort

将 LONGLONG 类型的值转换为 USHORT 类型的值。
RtlLongMult

将 LONG 类型的一个值乘以另一个值。
RtlLongPtrAdd

添加两个LONG_PTR类型的值。
RtlLongPtrMult

将LONG_PTR类型的一个值乘以另一个值。
RtlLongPtrSub

从另一个值减去类型LONG_PTR的一个值。
RtlLongPtrToChar

将类型LONG_PTR的值转换为 CHAR 类型的值。
RtlLongPtrToInt

将类型LONG_PTR的值转换为 INT 类型的值。
RtlLongPtrToInt8

将类型为 LONG_PTR 的值转换为 INT8 类型的值。
RtlLongPtrToIntPtr

将类型LONG_PTR的值转换为类型为INT_PTR的值。
RtlLongPtrToLong

将类型LONG_PTR的值转换为 LONG 类型的值。
RtlLongPtrToShort

将类型为 LONG_PTR 的值转换为 SHORT 类型的值。
RtlLongPtrToUChar

将类型LONG_PTR的值转换为 UCHAR 类型的值。
RtlLongPtrToUInt

将类型为 LONG_PTR 的值转换为 UINT 类型的值。
RtlLongPtrToUInt8

将类型为 LONG_PTR 的值转换为 UINT8 类型的值。
RtlLongPtrToUIntPtr

将类型LONG_PTR的值转换为类型UINT_PTR的值。
RtlLongPtrToULong

将类型LONG_PTR的值转换为 ULONG 类型的值。
RtlLongPtrToULongLong

将类型为 LONG_PTR的值转换为 ULONGLONG 类型的值。
RtlLongPtrToULongPtr

将类型LONG_PTR的值转换为类型ULONG_PTR的值。
RtlLongPtrToUShort

将类型为 LONG_PTR 的值转换为 USHORT 类型的值。
RtlLongSub

从另一个值中减去 LONG 类型的一个值。
RtlLongToChar

将 LONG 类型的值转换为 CHAR 类型的值。
RtlLongToInt

将 LONG 类型的值转换为 INT 类型的值。
RtlLongToInt8

将 LONG 类型的值转换为 INT8 类型的值。
RtlLongToIntPtr

将 LONG 类型的值转换为INT_PTR类型的值。
RtlLongToShort

将 LONG 类型的值转换为 SHORT 类型的值。
RtlLongToUChar

将 LONG 类型的值转换为 UCHAR 类型的值。
RtlLongToUInt

将 LONG 类型的值转换为 UINT 类型的值。
RtlLongToUInt8

将 LONG 类型的值转换为 UINT8 类型的值。
RtlLongToUIntPtr

将 LONG 类型的值转换为UINT_PTR类型的值。
RtlLongToULong

将 LONG 类型的值转换为 ULONG 类型的值。
RtlLongToULongLong

将 LONG 类型的值转换为 ULONGLONG 类型的值。
RtlLongToULongPtr

将 LONG 类型的值转换为ULONG_PTR类型的值。
RtlLongToUShort

将 LONG 类型的值转换为 USHORT 类型的值。
RtlMapGenericMask

RtlMapGenericMask 例程确定由ACCESS_MASK指定的非泛型访问权限。
RtlMoveMemory

RtlMoveMemory 例程将源内存块的内容复制到目标内存块,并支持重叠的源内存块和目标内存块。
RtlNormalizeSecurityDescriptor

检查安全描述符以了解如何修改其布局。
RtlNumberOfClearBits

RtlNumberOfClearBits 例程返回给定位图变量中的清除位计数。
RtlNumberOfSetBits

RtlNumberOfSetBits 例程返回给定位变量中设置位的计数。
RtlNumberOfSetBitsUlongPtr

RtlNumberOfSetBitsUlongPtr 例程返回设置为 1 的指定ULONG_PTR整数值中的位数。
RtlPrefetchMemoryNonTemporal

RtlPrefetchMemoryNonTemporal 例程向处理器提供提示,提示缓冲区应暂时移动到处理器缓存中。
RtlPrefixUnicodeString

RtlPrefixUnicodeString 例程比较两个 Unicode 字符串,以确定一个字符串是否是另一个字符串的前缀。
RtlPtrdiffTAdd

添加PTRDIFF_T类型的两个值。
RtlPtrdiffTMult

将类型PTRDIFF_T的一个值乘以另一个值。
RtlPtrdiffTSub

从另一个值中减去类型PTRDIFF_T的一个值。
RtlQueryRegistryValues

RtlQueryRegistryValues 例程允许调用方通过单个调用查询注册表子树中的多个值。
RtlQueryRegistryValueWithFallback

使用主句柄检索注册表项的值项;如果未找到,请使用回退句柄。
RtlRaiseCustomSystemEventTrigger

允许 NT 服务和内核模式和用户模式驱动程序为设备引发自定义触发器。
RtlRunOnceBeginInitialize

RtlRunOnceBeginInitialize 例程开始一次性初始化。
RtlRunOnceComplete

RtlRunOnceComplete 例程完成 RtlRunOnceBeginInitialize 开始的一次性初始化。
RtlRunOnceExecuteOnce

RtlRunOnceExecuteOnce 执行一次性初始化。
RtlRunOnceInitialize

RtlRunOnceInitialize 例程初始化RTL_RUN_ONCE结构。
RtlSanitizeUnicodeStringPadding

清理 Unicode 字符串的填充。
RtlSecureZeroMemory

RtlSecureZeroMemory 例程以保证安全的方式用零填充内存块。
RtlSetAllBits

RtlSetAllBits 例程设置给定位图变量中的所有位。
RtlSetBit

RtlSetBit 例程将位图中的指定位设置为一个。
RtlSetBits

RtlSetBits 例程设置给定位图变量给定范围内的所有位。
RtlSetDaclSecurityDescriptor

RtlSetDaclSecurityDescriptor 例程设置绝对格式安全描述符的 DACL 信息,或者如果安全描述符中已有 DACL,则会取代它。
RtlShortAdd

添加两个短类型的值。
RtlShortMult

将 SHORT 类型的一个值乘以另一个值。
RtlShortSub

从另一个值中减去一个类型 SHORT 的值。
RtlShortToChar

将 SHORT 类型的值转换为 CHAR 类型的值。
RtlShortToDWordPtr

将 SHORT 类型的值转换为DWORD_PTR类型的值。
RtlShortToInt8

将 SHORT 类型的值转换为 INT8 类型的值。
RtlShortToUChar

将 SHORT 类型的值转换为 UCHAR 类型的值。
RtlShortToUInt

将 SHORT 类型的值转换为 UINT 类型的值。
RtlShortToUInt8

将 SHORT 类型的值转换为 UINT8 类型的值。
RtlShortToUIntPtr

将 SHORT 类型的值转换为UINT_PTR类型的值。
RtlShortToULong

将 SHORT 类型的值转换为 ULONG 类型的值。
RtlShortToULongLong

将 SHORT 类型的值转换为 ULONGLONG 类型的值。
RtlShortToULongPtr

将 SHORT 类型的值转换为ULONG_PTR类型的值。
RtlShortToUShort

将 SHORT 类型的值转换为 USHORT 类型的值。
RtlSizeTAdd

添加SIZE_T类型的两个值。
RtlSizeTMult

将SIZE_T类型的一个值乘以另一个值。
RtlSizeTSub

从另一个值中减去类型SIZE_T的一个值。
RtlSSIZETAdd

添加SSIZE_T类型的两个值。
RtlSSIZETMult

将SSIZE_T类型的一个值乘以另一个值。
RtlSSIZETSub

从另一个值减去类型SSIZE_T的一个值。
RtlStringCbCatA

RtlStringCbCatW 和 RtlStringCbCatA 函数连接两个字节计数的字符串。
RtlStringCbCatExA

RtlStringCbCatExW 和 RtlStringCbCatExA 函数连接两个字节计数字符串。
RtlStringCbCatExW

了解 RtlStringCbCatExW 和 RtlStringCbCatExA 函数如何连接两个字节计数字符串。
RtlStringCbCatNA

RtlStringCbCatNW 和 RtlStringCbCatNA 函数连接两个字节计数字符串,同时限制追加字符串的大小。
RtlStringCbCatNExA

RtlStringCbCatNExW 和 RtlStringCbCatNExA 函数连接两个字节计数字符串,同时限制追加字符串的大小。
RtlStringCbCatNExW

了解 RtlStringCbCatNExW 和 RtlStringCbCatNExA 函数如何连接两个字节计数字符串,同时限制追加字符串的大小。
RtlStringCbCatNW

了解 RtlStringCbCatNW 和 RtlStringCbCatNA 函数如何连接两个字节计数字符串,同时限制追加字符串的大小。
RtlStringCbCatW

了解 RtlStringCbCatW 和 RtlStringCbCatA 函数如何连接两个字节计数字符串。
RtlStringCbCopyA

RtlStringCbCopyW 和 RtlStringCbCopyA 函数将字节计数的字符串复制到缓冲区中。
RtlStringCbCopyExA

RtlStringCbCopyExW 和 RtlStringCbCopyExA 函数将字节计数的字符串复制到缓冲区中。
RtlStringCbCopyExW

了解 RtlStringCbCopyExW 和 RtlStringCbCopyExA 函数如何将字节计数的字符串复制到缓冲区中。
RtlStringCbCopyNA

RtlStringCbCopyNW 和 RtlStringCbCopyNA 函数将字节计数的字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCbCopyNExA

RtlStringCbCopyNExW 和 RtlStringCbCopyNExA 函数将字节计数的字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCbCopyNExW

了解 RtlStringCbCopyNExW 和 RtlStringCbCopyNExA 函数如何将字节计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCbCopyNW

了解 RtlStringCbCopyNW 和 RtlStringCbCopyNA 函数如何将字节计数字符串复制到缓冲区,同时限制复制字符串的大小。
RtlStringCbCopyUnicodeString

RtlStringCbCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。
RtlStringCbCopyUnicodeStringEx

RtlStringCbCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定的目标。
RtlStringCbCopyW

了解 RtlStringCbCopyW 和 RtlStringCbCopyA 函数如何将字节计数的字符串复制到缓冲区中。
RtlStringCbLengthA

RtlStringCbLengthW 和 RtlStringCbLengthA 函数确定提供的字符串的长度(以字节为单位)。
RtlStringCbLengthW

了解 RtlStringCbLengthW 和 RtlStringCbLengthA 函数如何确定提供的字符串的长度(以字节为单位)。
RtlStringCbPrintfA

RtlStringCbPrintfW 和 RtlStringCbPrintfA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbPrintfExA

RtlStringCbPrintfExW 和 RtlStringCbPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbPrintfExW

了解 RtlStringCbPrintfExW 和 RtlStringCbPrintfExA 函数如何创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbPrintfW

了解 RtlStringCbPrintfW 和 RtlStringCbPrintfA 函数如何创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbVPrintfA

RtlStringCbVPrintfW 和 RtlStringCbVPrintfA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbVPrintfExA

RtlStringCbVPrintfExW 和 RtlStringCbVPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbVPrintfExW

了解 RtlStringCbVPrintfExW 和 RtlStringCbVPrintfExA 函数如何创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCbVPrintfW

了解 RtlStringCbVPrintfW 和 RtlStringCbVPrintfA 函数如何创建字节计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchCatA

RtlStringCchCatW 和 RtlStringCchCatA 函数连接两个字符计数的字符串。
RtlStringCchCatExA

RtlStringCchCatExW 和 RtlStringCchCatExA 函数连接两个字符计数的字符串。
RtlStringCchCatExW

了解 RtlStringCchCatExW 和 RtlStringCchCatExA 函数如何连接两个字符计数的字符串。
RtlStringCchCatNA

RtlStringCchCatNW 和 RtlStringCchCatNA 函数连接两个字符计数字符串,同时限制追加字符串的大小。
RtlStringCchCatNExA

RtlStringCchCatNExW 和 RtlStringCchCatNExA 函数连接两个字符计数字符串,同时限制追加字符串的大小。
RtlStringCchCatNExW

了解 RtlStringCchCatNExW 和 RtlStringCchCatNExA 函数如何连接两个字符计数字符串,同时限制追加字符串的大小。
RtlStringCchCatNW

了解 RtlStringCchCatNW 和 RtlStringCchCatNA 函数如何连接两个字符计数字符串,同时限制追加字符串的大小。
RtlStringCchCatW

了解 RtlStringCchCatW 和 RtlStringCchCatA 函数如何连接两个字符计数字符串。
RtlStringCchCopyA

RtlStringCchCopyW 和 RtlStringCchCopyA 函数将以 null 结尾的源字符串复制到指定长度的目标缓冲区中。
RtlStringCchCopyExA

RtlStringCchCopyExW 和 RtlStringCchCopyExA 函数将字符计数的字符串复制到缓冲区中。
RtlStringCchCopyExW

了解 RtlStringCchCopyExW 和 RtlStringCchCopyExA 函数如何将字符计数的字符串复制到缓冲区中。
RtlStringCchCopyNA

RtlStringCchCopyNW 和 RtlStringCchCopyNA 函数将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCchCopyNExA

RtlStringCchCopyNExW 和 RtlStringCchCopyNExA 函数将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCchCopyNExW

了解 RtlStringCchCopyNExW 和 RtlStringCchCopyNExA 函数如何将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCchCopyNW

了解 RtlStringCchCopyNW 和 RtlStringCchCopyNA 函数如何将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。
RtlStringCchCopyUnicodeString

RtlStringCchCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。
RtlStringCchCopyUnicodeStringEx

RtlStringCchCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定目标。
RtlStringCchCopyW

了解 RtlStringCchCopyW 和 RtlStringCchCopyA 函数如何将以 null 结尾的源字符串复制到指定长度的目标缓冲区中。
RtlStringCchLengthA

RtlStringCchLengthW 和 RtlStringCchLengthA 函数确定提供的字符串的长度(以字符为单位)。
RtlStringCchLengthW

了解 RtlStringCchLengthW 和 RtlStringCchLengthA 函数如何确定提供的字符串的长度(以字符为单位)。
RtlStringCchPrintfA

RtlStringCchPrintfW 和 RtlStringCchPrintfA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchPrintfExA

RtlStringCchPrintfExW 和 RtlStringCchPrintfExA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchPrintfExW

了解 RtlStringCchPrintfExW 和 RtlStringCchPrintfExA 函数如何创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchPrintfW

了解 RtlStringCchPrintfW 和 RtlStringCchPrintfA 函数如何创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchVPrintfA

RtlStringCchVPrintfW 和 RtlStringCchVPrintfA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchVPrintfExA

RtlStringCchVPrintfExW 和 RtlStringCchVPrintfExA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringCchVPrintfExW

了解 RtlStringCchVPrintfExW 和 RtlStringCchVPrintfExA 函数如何创建字符计数的文本字符串,其格式基于所提供的格式设置信息。
RtlStringCchVPrintfW

了解 RtlStringCchVPrintfW 和 RtlStringCchVPrintfA 函数如何创建字符计数的文本字符串,其格式基于提供的格式信息。
RtlStringFromGUID

RtlStringFromGUID 例程将给定 GUID 从二进制格式转换为 Unicode 字符串。
RtlTestBit

RtlTestBit 例程返回位图中的位值。
RtlTimeFieldsToTime

RtlTimeFieldsToTime 例程将TIME_FIELDS信息转换为系统时间值。
RtlTimeToTimeFields

RtlTimeToTimeFields 例程将系统时间转换为TIME_FIELDS结构。
RtlUInt8Add

添加 UINT8 类型的两个值。
RtlUInt8Mult

将 UINT8 类型的一个值乘以另一个值。
RtlUInt8Sub

RtlUInt8Sub 例程从另一个值中减去 UINT8 类型的一个值。
RtlUInt8ToChar

将 UINT8 类型的值转换为 CHAR 类型的值。
RtlUInt8ToInt8

将 UINT8 类型的值转换为 INT8 类型的值。
RtlUIntAdd

添加 UINT 类型的两个值。
RtlUIntMult

将 UINT 类型的一个值乘以另一个值。
RtlUIntPtrAdd

添加两个UINT_PTR类型的值。
RtlUIntPtrMult

将UINT_PTR类型的一个值乘以另一个值。
RtlUIntPtrSub

从另一个值减去UINT_PTR类型的一个值。
RtlUIntPtrToChar

将类型UINT_PTR的值转换为 CHAR 类型的值。
RtlUIntPtrToInt

将类型UINT_PTR的值转换为 INT 类型的值。
RtlUIntPtrToInt16

将类型UINT_PTR的值转换为 INT16 类型的值。
RtlUIntPtrToInt8

将类型UINT_PTR的值转换为 INT8 类型的值。
RtlUIntPtrToIntPtr

将类型UINT_PTR的值转换为类型INT_PTR的值。
RtlUIntPtrToLong

将类型为 UINT_PTR 的值转换为 LONG 类型的值。
RtlUIntPtrToLongLong

将类型为 UINT_PTR 的值转换为 LONGLONG 类型的值。
RtlUIntPtrToLongPtr

将类型UINT_PTR的值转换为类型LONG_PTR的值。
RtlUIntPtrToShort

将类型UINT_PTR的值转换为 SHORT 类型的值。
RtlUIntPtrToUChar

将类型UINT_PTR的值转换为 UCHAR 类型的值。
RtlUIntPtrToUInt

将类型UINT_PTR的值转换为 UINT 类型的值。
RtlUIntPtrToUInt16

将类型为 UINT_PTR 的值转换为 UINT16 类型的值。
RtlUIntPtrToUInt8

将类型UINT_PTR的值转换为 UINT8 类型的值。
RtlUIntPtrToULong

了解此函数如何将类型UINT_PTR的值转换为 LONG 类型的值。
RtlUIntPtrToUShort

将类型为 UINT_PTR 的值转换为 USHORT 类型的值。
RtlUIntSub

从另一个值中减去 UINT 类型的一个值。
RtlUIntToChar

将 UINT 类型的值转换为 CHAR 类型的值。
RtlUIntToInt

将 UINT 类型的值转换为 INT 类型的值。
RtlUIntToInt8

将 UINT 类型的值转换为 INT8 类型的值。
RtlUIntToIntPtr

将 UINT 类型的值转换为INT_PTR类型的值。
RtlUIntToLong

将 UINT 类型的值转换为 LONG 类型的值。
RtlUIntToLongPtr

将 UINT 类型的值转换为LONG_PTR类型的值。
RtlUIntToShort

将 UINT 类型的值转换为 SHORT 类型的值。
RtlUIntToUChar

将 UINT 类型的值转换为 UCHAR 类型的值。
RtlUIntToUInt8

将 UINT 类型的值转换为 UINT8 类型的值。
RtlUIntToUShort

将 UINT 类型的值转换为 USHORT 类型的值。
RtlULongAdd

添加 ULONG 类型的两个值。
RtlUlongByteSwap

RtlUlongByteSwap 例程反转 32 位无符号整数值中的四个字节的顺序。
RtlULongLongAdd

添加 ULONGLONG 类型的两个值。
RtlUlonglongByteSwap

RtlUlonglongByteSwap 例程以 64 位无符号整数值反转 8 个字节的顺序。
RtlULongLongMult

将 ULONGLONG 类型的一个值乘以另一个值。
RtlULongLongSub

从另一个值中减去 ULONGLONG 类型的一个值。
RtlULongLongToChar

将 ULONGLONG 类型的值转换为 CHAR 类型的值。
RtlULongLongToInt

将 ULONGLONG 类型的值转换为 INT 类型的值。
RtlULongLongToInt8

将 ULONGLONG 类型的值转换为 INT8 类型的值。
RtlULongLongToLong

将 ULONGLONG 类型的值转换为 LONG 类型的值。
RtlULongLongToLongLong

将 ULONGLONG 类型的值转换为 LONGLONG 类型的值。
RtlULongLongToLongPtr

将 ULONGLONG 类型的值转换为LONG_PTR类型的值。
RtlULongLongToShort

将 ULONGLONG 类型的值转换为 SHORT 类型的值。
RtlULongLongToUChar

将 ULONGLONG 类型的值转换为 UCHAR 类型的值。
RtlULongLongToUInt

将 ULONGLONG 类型的值转换为 UINT 类型的值。
RtlULongLongToUInt8

将 ULONGLONG 类型的值转换为 UINT8 类型的值。
RtlULongLongToUIntPtr

将 ULONGLONG 类型的值转换为UINT_PTR类型的值。
RtlULongLongToULong

将 ULONGLONG 类型的值转换为 ULONG 类型的值。
RtlULongLongToULongPtr

将 ULONGLONG 类型的值转换为ULONG_PTR类型的值。
RtlULongLongToUShort

将 ULONGLONG 类型的值转换为 USHORT 类型的值。
RtlULongMult

将 ULONG 类型的一个值乘以另一个值。
RtlULongPtrAdd

添加两个ULONG_PTR类型的值。
RtlULongPtrMult

将ULONG_PTR类型的一个值乘以另一个值。
RtlULongPtrSub

从另一个值减去类型ULONG_PTR的一个值。
RtlULongPtrToChar

将类型ULONG_PTR的值转换为 CHAR 类型的值。
RtlULongPtrToInt

将类型ULONG_PTR的值转换为 INT 类型的值。
RtlULongPtrToInt8

将类型ULONG_PTR的值转换为 INT8 类型的值。
RtlULongPtrToIntPtr

将类型ULONG_PTR的值转换为类型INT_PTR的值。
RtlULongPtrToLong

将类型为 ULONG_PTR 的值转换为 LONG 类型的值。
RtlULongPtrToLongLong

将类型ULONG_PTR的值转换为 LONGLONG 类型的值。
RtlULongPtrToLongPtr

将ULONG_PTR类型的值转换为LONG_PTR类型的值。
RtlULongPtrToShort

将类型为 ULONG_PTR 的值转换为 SHORT 类型的值。
RtlULongPtrToUChar

将类型ULONG_PTR的值转换为 UCHAR 类型的值。
RtlULongPtrToUInt

将类型为 ULONG_PTR 的值转换为 UINT 类型的值。
RtlULongPtrToUInt8

将类型为 ULONG_PTR 的值转换为 UINT8 类型的值。
RtlULongPtrToUIntPtr

将类型ULONG_PTR的值转换为类型UINT_PTR的值。
RtlULongPtrToULong

将类型为 ULONG_PTR 的值转换为 ULONG 类型的值。
RtlULongPtrToUShort

将类型为 ULONG_PTR 的值转换为 USHORT 类型的值。
RtlULongSub

从另一个值中减去 ULONG 类型的一个值。
RtlULongToChar

将 ULONG 类型的值转换为 CHAR 类型的值。
RtlULongToInt

将 ULONG 类型的值转换为 INT 类型的值。
RtlULongToInt8

将 ULONG 类型的值转换为 INT8 类型的值。
RtlULongToIntPtr

将 ULONG 类型的值转换为INT_PTR类型的值。
RtlULongToLong

将 ULONG 类型的值转换为 LONG 类型的值。
RtlULongToLongPtr

将 ULONG 类型的值转换为LONG_PTR类型的值。
RtlULongToShort

将 ULONG 类型的值转换为 SHORT 类型的值。
RtlULongToUChar

将 ULONG 类型的值转换为 UCHAR 类型的值。
RtlULongToUInt

将 ULONG 类型的值转换为 UINT 类型的值。
RtlULongToUInt8

了解此函数如何将类型ULONG_PTR的值转换为 UINT8 类型的值。
RtlULongToUIntPtr

了解此方法如何将类型ULONG_PTR的值转换为类型UINT_PTR的值。
RtlULongToUShort

将 ULONG 类型的值转换为 USHORT 类型的值。
RtlUnalignedStringCbLengthW

RtlUnalignedStringCbLengthW 函数是 RtlStringCbLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。
RtlUnalignedStringCchLengthW

RtlUnalignedStringCchLengthW 函数是 RtlStringCchLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。
RtlUnicodeStringCat

RtlUnicodeStringCat 函数连接UNICODE_STRING结构中包含的两个字符串。
RtlUnicodeStringCatEx

RtlUnicodeStringCatEx 函数连接UNICODE_STRING结构中包含的两个字符串。
RtlUnicodeStringCatString

当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeString 函数连接两个字符串。
RtlUnicodeStringCatStringEx

当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCatStringEx 函数连接两个字符串。
RtlUnicodeStringCbCatN

RtlUnicodeStringCbCatN 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCbCatNEx

RtlUnicodeStringCbCatNEx 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCbCatStringN

当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringN 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCbCatStringNEx

当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringNEx 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCbCopyN

RtlUnicodeStringCbCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCbCopyNEx

RtlUnicodeStringCbCopyNEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCbCopyStringN

RtlUnicodeStringCbCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCbCopyStringNEx

RtlUnicodeStringCbCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCatN

RtlUnicodeStringCchCatN 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCatNEx

RtlUnicodeStringCchCatNEx 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCatStringN

当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringN 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCchCatStringNEx

当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringNEx 函数连接两个字符串,同时限制追加字符串的大小。
RtlUnicodeStringCchCopyN

RtlUnicodeStringCchCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCchCopyNEx

RtlUnicodeStringCchCopyNEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。
RtlUnicodeStringCchCopyStringN

RtlUnicodeStringCchCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCchCopyStringNEx

RtlUnicodeStringCchCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。
RtlUnicodeStringCopy

RtlUnicodeStringCopy 函数将字符串从一个UNICODE_STRING结构复制到另一个结构。
RtlUnicodeStringCopyEx

RtlUnicodeStringCopyEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构。
RtlUnicodeStringCopyString

RtlUnicodeStringCopyString 函数将字符串复制到UNICODE_STRING结构中。
RtlUnicodeStringCopyStringEx

RtlUnicodeStringCopyStringEx 函数将字符串复制到UNICODE_STRING结构中。
RtlUnicodeStringInit

RtlUnicodeStringInit 函数初始化UNICODE_STRING结构。
RtlUnicodeStringInitEx

RtlUnicodeStringInitEx 函数初始化UNICODE_STRING结构。
RtlUnicodeStringPrintf

RtlUnicodeStringPrintf 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。
RtlUnicodeStringPrintfEx

RtlUnicodeStringPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。
RtlUnicodeStringToAnsiSize

RtlUnicodeStringToAnsiSize 例程返回与指定 Unicode 字符串等效的 null 终止 ANSI 字符串所需的字节数。
RtlUnicodeStringToAnsiString

RtlUnicodeStringToAnsiString 例程将给定的 Unicode 字符串转换为 ANSI 字符串。
RtlUnicodeStringToInteger

RtlUnicodeStringToInteger 例程将数字的 Unicode 字符串表示形式转换为等效的整数值。
RtlUnicodeStringToUTF8String

RtlUnicodeStringToUTF8String 函数将指定的 Unicode 源字符串转换为 UTF8 字符串。
RtlUnicodeStringValidate

RtlUnicodeStringValidate 函数验证UNICODE_STRING结构的内容。
RtlUnicodeStringValidateEx

RtlUnicodeStringValidateEx 函数验证UNICODE_STRING结构的内容。
RtlUnicodeStringVPrintf

RtlUnicodeStringVPrintf 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。
RtlUnicodeStringVPrintfEx

RtlUnicodeStringVPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。
RtlUnicodeToUTF8N

ntifs.h 中的 RtlUnicodeToUTF8N 例程将 Unicode 字符串转换为 UTF-8 字符串。 仅当 Unicode 输入字符串为 null 时,UTF-8 输出才会终止。
RtlUnicodeToUTF8N

wdm.h 中的 RtlUnicodeToUTF8N 例程将 Unicode 字符串转换为 UTF-8 字符串。 仅当 Unicode 输入字符串为 null 时,UTF-8 输出才会终止。
RtlUpcaseUnicodeChar

RtlUpcaseUnicodeChar 例程将指定的 Unicode 字符转换为大写。
RtlUpcaseUnicodeString

RtlUpcaseUnicodeString 例程将源字符串的副本转换为大写,并在目标缓冲区中写入转换后的字符串。
RtlUpperChar

RtlUpperChar 例程将指定的字符转换为大写。
RtlUpperString

RtlUpperString 例程将给定的 SourceString 复制到 DestinationString 缓冲区,并将其转换为大写。
RtlUShortAdd

添加 USHORT 类型的两个值。
RtlUshortByteSwap

RtlUshortByteSwap 例程反转 16 位无符号整数值中的两个字节的顺序。
RtlUShortMult

将 USHORT 类型的一个值乘以另一个值。
RtlUShortSub

从另一个值中减去 USHORT 类型的一个值。
RtlUShortToChar

将 USHORT 类型的值转换为 CHAR 类型的值。
RtlUShortToInt8

将 USHORT 类型的值转换为 INT8 类型的值。
RtlUShortToShort

将 USHORT 类型的值转换为 SHORT 类型的值。
RtlUShortToUChar

将 USHORT 类型的值转换为 UCHAR 类型的值。
RtlUShortToUInt8

将 USHORT 类型的值转换为 UINT8 类型的值。
RtlUTF8StringToUnicodeString

RtlUTF8StringToUnicodeString 函数根据当前系统区域设置信息将指定的 UTF8 源字符串转换为 Unicode 字符串。
RtlUTF8ToUnicodeN

ntifs.h 中的 RtlUTF8ToUnicodeN 例程将 UTF-8 字符串转换为 Unicode 字符串。 仅当 UTF-8 输入字符串为时,Unicode 输出才以 null 结尾。
RtlUTF8ToUnicodeN

wdm.h 中的 RtlUTF8ToUnicodeN 例程将 UTF-8 字符串转换为 Unicode 字符串。 仅当 UTF-8 输入字符串为时,Unicode 输出才以 null 结尾。
RtlValidateCorrelationVector

验证指定的关联向量,以检查它是否符合相关向量规范 (v2) 。
RtlValidRelativeSecurityDescriptor

RtlValidRelativeSecurityDescriptor 例程检查自相对安全描述符的有效性。
RtlValidSecurityDescriptor

RtlValidSecurityDescriptor 例程检查给定的安全描述符的有效性。
RtlVerifyVersionInfo

RtlVerifyVersionInfo 例程将指定的操作系统版本要求与当前正在运行的操作系统版本的相应属性进行比较。
RtlVolumeDeviceToDosName

RtlVolumeDeviceToDosName 例程对于 Windows XP 和更高版本的 Windows 已过时。 请改用 IoVolumeDeviceToDosName。RtlVolumeDeviceToDosName 返回表示文件系统卷的指定设备对象的 MS-DOS 路径。
RtlWriteRegistryValue

RtlWriteRegistryValue 例程在给定值名称的指定相对路径的注册表中写入调用方提供的数据。
RtlxAnsiStringToUnicodeSize

RtlxAnsiStringToUnicodeSize 例程返回与指定 ANSI 字符串等效的 null 终止 Unicode 字符串所需的字节数。
RtlxUnicodeStringToAnsiSize

RtlxUnicodeStringToAnsiSize 例程返回与指定 Unicode 字符串等效的 null 终止 ANSI 字符串所需的字节数。
RtlZeroMemory

RtlZeroMemory 宏 (wdm.h) 用零填充内存块,给定指向块的指针以及要填充的长度(以字节为单位)。
SeAccessCheck

SeAccessCheck 例程确定是否可以向受安全描述符和对象所有者保护的对象授予请求的访问权限。
SeAssignSecurity

SeAssignSecurity 例程为新对象生成自相对安全描述符,给定其父目录的安全描述符和最初请求的对象安全性。
SeAssignSecurityEx

SeAssignSecurityEx 例程为新对象生成自相对安全描述符,给定以下可选参数:_a对象的父目录的安全描述符、对象的显式安全描述符和对象类型。
SeDeassignSecurity

SeDeassignSecurity 例程解除分配与使用 SeAssignSecurity 分配的安全描述符关联的内存。
SeFreePrivileges

SeFreePrivileges 例程释放 SeAccessCheck 返回的特权集。
SeSinglePrivilegeCheck

SeSinglePrivilegeCheck 例程检查当前线程上下文中传递的特权值。
SET_D3COLD_SUPPORT

SetD3ColdSupport 例程启用或禁用到 D3cold 设备电源状态的转换。
SeValidSecurityDescriptor

SeValidSecurityDescriptor 例程返回给定的安全描述符是否在结构上有效。
SILO_CONTEXT_CLEANUP_CALLBACK

当上下文对象达到引用计数为零时,将调用此回调。
SILO_MONITOR_CREATE_CALLBACK

创建新接收器时会调用此回调。
SILO_MONITOR_TERMINATE_CALLBACK

终止接收器时会调用此回调。
TmCommitComplete

TmCommitComplete 例程通知 KTM 调用资源管理器已完成提交事务。
TmCommitEnlistment

TmCommitEnlistment 例程为指定的登记事务启动提交操作。
TmCommitTransaction

TmCommitTransaction 例程为指定的事务启动提交操作。
TmCreateEnlistment

TmCreateEnlistment 例程为事务创建新的登记对象。
TmDereferenceEnlistmentKey

TmDereferenceEnlistmentKey 例程递减指定登记对象的键的引用计数。
TmEnableCallbacks

TmEnableCallbacks 例程支持接收事务通知的回调例程。
TmGetTransactionId

TmGetTransactionId 例程检索事务对象的工作单元, (UOW) 标识符。
TmInitializeTransactionManager

TmInitializeTransactionManager 例程初始化事务管理器对象。
TmIsTransactionActive

TmIsTransactionActive 例程指示指定的事务是否处于活动状态。
TmPrepareComplete

TmPrepareComplete 例程通知 KTM 调用资源管理器已完成事务数据准备。
TmPrepareEnlistment

TmPrepareEnlistment 例程为指定的登记事务启动准备操作。
TmPrepareComplete

TmPrePrepareComplete 例程通知 KTM 调用资源管理器已完成事务数据的初步准备。
TmPrepareEnlistment

TmPrePrepareEnlistment 例程为指定的登记事务启动预准备操作。
TmReadOnlyEnlistment

TmReadOnlyEnlistment 例程将指定的登记设置为只读。
TmRecoverEnlistment

TmRecoverEnlistment 例程为与指定登记关联的事务启动恢复操作。
TmRecoverResourceManager

TmRecoverResourceManager 例程尝试恢复与指定资源管理器对象的每个登记关联的事务。
TmRecoverTransactionManager

TmRecoverTransactionManager 例程重新构造事务管理器对象的状态, (包括所有事务、登记和资源管理器) 日志流中的恢复信息。
TmReferenceEnlistmentKey

TmReferenceEnlistmentKey 例程递增指定登记对象的键的引用计数,并检索密钥。
TmRenameTransactionManager

TmRenameTransactionManager 例程更改存储在日志文件名称中包含的 CLFS 日志文件流中的事务管理器对象的标识。
TmRequestOutcomeEnlistment

TmRequestOutcomeEnlistment 例程要求 KTM 尝试为与指定登记关联的事务提供即时结果 (提交或回滚) 。
TmRollbackComplete

TmRollbackComplete 例程通知 KTM 调用资源管理器已完成回滚事务的数据。
TmRollbackEnlistment

TmRollbackEnlistment 例程回滚指定的登记。
TmRollbackTransaction

TmRollbackTransaction 例程为指定的事务启动回滚操作。
TmSinglePhaseReject

TmSinglePhaseReject 例程通知 KTM 调用资源管理器不支持指定登记的单阶段提交操作。
TRANSLATE_BUS_ADDRESS

TranslateBusAddress 例程将父总线上的地址转换为逻辑地址。
VslCreateSecureSection

此 VslCreateSecureSection 材料尚不可用。 此占位符主题作为可能包含在更高版本中的文档示例提供。
VslDeleteSecureSection

此 VslDeleteSecureSection 材料尚不可用。 此占位符主题作为可能包含在更高版本中的文档示例提供。
WdmlibIoConnectInterruptEx

WdmlibIoConnectInterruptEx 函数注册设备的中断处理例程。
WdmlibIoCreateDeviceSecure

WdmlibIoCreateDeviceSecure 函数 (或 IoCreateDeviceSecure) 创建命名设备对象并应用指定的安全设置。
WdmlibIoDisconnectInterruptEx

WdmlibIoDisconnectInterruptEx 函数取消注册 ISR (ISR) 中断服务例程,该例程由以前调用 WdmlibIoConnectInterruptEx 函数注册。
WdmlibIoGetAffinityInterrupt

WdmlibIoGetAffinityInterrupt 函数获取中断对象的组相关性。
WdmlibIoValidateDeviceIoControlAccess

WdmlibIoValidateDeviceIoControlAccess 函数验证IRP_MJ_DEVICE_CONTROL或IRP_MJ_FILE_SYSTEM_CONTROL IRP 的发送方是否具有对设备对象的指定访问权限。
WdmlibProcgrpInitialize

WdmlibProcgrpInitialize 函数初始化处理器组 (ProcGrp) 兼容性库。
WdmlibRtlInitUnicodeStringEx

WdmlibRtlInitUnicodeStringEx 函数初始化 Unicode 字符的计数字符串。
WheaAdd2Ptr

本主题介绍 WheaAdd2Ptr 宏。
WheaErrorRecordBuilderAddPacket

此例程将数据包添加到错误记录中。
WheaErrorRecordBuilderAddSection

WheaErrorRecordBuilderAddSection 函数查找下一节,初始化其描述符,并返回一个指针,供调用方填充数据。
WheaErrorRecordBuilderInit

WheaErrorRecordBuilderInit 函数初始化记录生成器帮助程序函数的错误记录。
WheaRegisterErrorSourceOverride

本主题介绍 WheaRegisterErrorSourceOverride 函数。
WheaSignalHandlerOverride

本主题介绍 WheaSignalHandlerOverride 函数。
WheaUnregisterErrorSourceOverride

本主题介绍 WheaUnregisterErrorSourceOverride 函数。
WMI_EXECUTE_METHOD_CALLBACK

DpWmiExecuteMethod 例程执行与数据块关联的方法。 此例程是可选的。
WMI_FUNCTION_CONTROL_CALLBACK

DpWmiFunctionControl 例程启用或禁用事件通知,并为驱动程序注册为成本高昂的数据块启用或禁用数据收集。 此例程是可选的。
WMI_QUERY_DATABLOCK_CALLBACK

DpWmiQueryDataBlock 例程返回单个实例或数据块的所有实例。 此例程是必需的。
WMI_QUERY_REGINFO_CALLBACK

DpWmiQueryReginfo 例程提供有关驱动程序要注册的数据块和事件块的信息。 此例程是必需的。
WMI_SET_DATABLOCK_CALLBACK

DpWmiSetDataBlock 例程更改单个数据块实例中的所有数据项。 此例程是可选的。
WMI_SET_DATAITEM_CALLBACK

DpWmiSetDataItem 例程更改数据块实例中的单个数据项。 此例程是可选的。
WmiCompleteRequest

WmiCompleteRequest 例程指示驱动程序已完成在 DpWmiXxx 例程中处理 WMI 请求。
WmiFireEvent

WmiFireEvent 例程将事件发送到 WMI,以便传递给请求事件通知的数据使用者。
WmiQueryTraceInformation

WmiQueryTraceInformation 例程返回有关 WMI 事件跟踪的信息。
WmiSystemControl

WmiSystemControl 例程是使用 WMI 库支持例程来处理 WMI IRP 的驱动程序的调度例程。
WmiTraceMessage

WmiTraceMessage 例程向 WPP 软件跟踪会话的输出日志添加消息。
WmiTraceMessageVa

WmiTraceMessageVa 例程向 WPP 软件跟踪会话的输出日志添加消息。
WRITE_PORT_BUFFER_UCHAR

WRITE_PORT_BUFFER_UCHAR函数 (miniport.h) 将缓冲区中的字节数写入指定端口。
WRITE_PORT_BUFFER_UCHAR

WRITE_PORT_BUFFER_UCHAR函数 (wdm.h) 将缓冲区中的字节数写入指定端口。
WRITE_PORT_BUFFER_ULONG

WRITE_PORT_BUFFER_ULONG函数 (miniport.h) 将缓冲区中的多个 ULONG 值写入指定的端口地址。
WRITE_PORT_BUFFER_ULONG

WRITE_PORT_BUFFER_ULONG函数 (wdm.h) 将多个 ULONG 值从缓冲区写入指定的端口地址。
WRITE_PORT_BUFFER_USHORT

WRITE_PORT_BUFFER_USHORT函数 (miniport.h) 将多个 USHORT 值从缓冲区写入指定的端口地址。
WRITE_PORT_BUFFER_USHORT

WRITE_PORT_BUFFER_USHORT函数 (wdm.h) 将多个 USHORT 值从缓冲区写入指定的端口地址。
WRITE_PORT_UCHAR

WRITE_PORT_UCHAR函数 (ioaccess.h) 将字节写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_UCHAR

WRITE_PORT_UCHAR函数 (miniport.h) 将字节写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_UCHAR

WRITE_PORT_UCHAR函数 (wdm.h) 将字节写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_ULONG

WRITE_PORT_ULONG函数 (ioaccess.h) 将 ULONG 值写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_ULONG

WRITE_PORT_ULONG函数 (miniport.h) 将 ULONG 值写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_ULONG

WRITE_PORT_ULONG函数 (wdm.h) 将 ULONG 值写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_USHORT

WRITE_PORT_USHORT函数 (ioaccess.h) 将 USHORT 值写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_USHORT

WRITE_PORT_USHORT函数 (miniport.h) 将 USHORT 值写入驻留的映射设备内存中的指定端口地址。
WRITE_PORT_USHORT

WRITE_PORT_USHORT函数 (wdm.h) 将 USHORT 值写入驻留的映射设备内存中的指定端口地址。
WRITE_REGISTER_BUFFER_UCHAR

WRITE_REGISTER_BUFFER_UCHAR函数 (miniport.h) 将缓冲区中的字节数写入指定的寄存器。
WRITE_REGISTER_BUFFER_UCHAR

WRITE_REGISTER_BUFFER_UCHAR函数 (wdm.h) 将缓冲区中的字节数写入指定的寄存器。
WRITE_REGISTER_BUFFER_ULONG

WRITE_REGISTER_BUFFER_ULONG函数 (miniport.h) 将缓冲区中的多个 ULONG 值写入指定寄存器。
WRITE_REGISTER_BUFFER_ULONG

WRITE_REGISTER_BUFFER_ULONG函数 (wdm.h) 将缓冲区中的多个 ULONG 值写入指定寄存器。
WRITE_REGISTER_BUFFER_ULONG64

WRITE_REGISTER_BUFFER_ULONG64函数 (wdm.h) 将多个 ULONG64 值从缓冲区写入指定寄存器。
WRITE_REGISTER_BUFFER_USHORT

WRITE_REGISTER_BUFFER_USHORT函数 (miniport.h) 将多个 USHORT 值从缓冲区写入指定寄存器。
WRITE_REGISTER_BUFFER_USHORT

WRITE_REGISTER_BUFFER_USHORT函数 (wdm.h) 将多个 USHORT 值从缓冲区写入指定寄存器。
WRITE_REGISTER_UCHAR

WRITE_REGISTER_UCHAR函数 (ioaccess.h) 将字节写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_UCHAR

WRITE_REGISTER_UCHAR函数 (miniport.h) 将字节写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_UCHAR

WRITE_REGISTER_UCHAR函数 (wdm.h) 将字节写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_ULONG

WRITE_REGISTER_ULONG函数 (ioaccess.h) 将 ULONG 值写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_ULONG

WRITE_REGISTER_ULONG函数 (miniport.h) 将 ULONG 值写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_ULONG

WRITE_REGISTER_ULONG函数 (wdm.h) 将 ULONG 值写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_ULONG64

WRITE_REGISTER_ULONG64函数 (wdm.h) 将 ULONG64 值写入指定的寄存器地址。
WRITE_REGISTER_USHORT

WRITE_REGISTER_USHORT函数 (ioaccess.h) 将 USHORT 值写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_USHORT

WRITE_REGISTER_USHORT函数 (miniport.h) 将 USHORT 值写入驻留的映射设备内存中的指定寄存器地址。
WRITE_REGISTER_USHORT

WRITE_REGISTER_USHORT函数 (wdm.h) 将 USHORT 值写入驻留的映射设备内存中的指定寄存器地址。
WriteInt32NoFence

本主题介绍 WriteInt32NoFence 函数。
WriteInt32NoFence

WriteInt32NoFence 函数...
WriteInt32Raw

本主题介绍 WriteInt32Raw 函数。
WriteInt32Raw

WriteInt32Raw 函数...
WriteInt32Release

本主题介绍 WriteInt32Release 函数。
WriteInt32Release

WriteInt32Release 函数...
WriteUInt32NoFence

本主题介绍 WriteUInt32NoFence 函数。
WriteUInt32NoFence

WriteUInt32NoFence 函数...
WriteUInt32Raw

本主题介绍 WriteUInt32Raw 函数。
WriteUInt32Raw

WriteUInt32Raw 函数...
WriteUInt32Release

本主题介绍 WriteUInt32Release 函数。
WriteUInt32Release

WriteUInt32Release 函数...
ZwAllocateLocallyUniqueId

ZwAllocateLocallyUniqueId 例程分配本地唯一标识符 (LUID) 。
ZwAllocateVirtualMemory

ZwAllocateVirtualMemory 例程保留、提交或同时保留指定进程的用户模式虚拟地址空间中的页面区域。
ZwClose

wdm.h 中的 ZwClose 例程关闭对象句柄。 ZwClose 是对任何类型的对象进行操作的泛型例程。
ZwCommitComplete

了解 ZwCommitComplete 例程如何通知 KTM 调用资源管理器已完成提交事务的数据。
ZwCommitEnlistment

了解 ZwCommitEnlistment 例程如何为指定的登记事务启动提交操作。
ZwCommitTransaction

了解 ZwCommitTransaction 例程如何为指定的事务启动提交操作。
ZwCreateDirectoryObject

ZwCreateDirectoryObject 例程创建或打开对象目录对象。
ZwCreateEnlistment

了解 ZwCreateEnlistment 例程如何为事务创建新的登记对象。
ZwCreateEvent

ZwCreateEvent 例程创建事件对象,将事件的初始状态设置为指定值,并打开具有指定访问权限的对象句柄。
ZwCreateFile

ZwCreateFile 例程创建一个新文件或打开现有文件。
ZwCreateKey

ZwCreateKey 例程创建新的注册表项或打开现有注册表项。
ZwCreateKeyTransacted

ZwCreateKeyTransacted 例程创建新的注册表项或打开现有注册表项,并将密钥与事务相关联。
ZwCreateResourceManager

了解 ZwCreateResourceManager 例程如何创建资源管理器对象。
ZwCreateSection

wdm.h 中的 ZwCreateSection 例程创建节对象。 指向的句柄不再使用后,驱动程序必须关闭它。
ZwCreateTransaction

了解 ZwCreateTransaction 例程如何创建事务对象。
ZwCreateTransactionManager

了解 ZwCreateTransactionManager 例程如何创建新的事务管理器对象。
ZwDeleteFile

ZwDeleteFile 例程将删除指定的文件。
ZwDeleteKey

ZwDeleteKey 例程从注册表中删除打开的键。
ZwDeleteValueKey

ZwDeleteValueKey 例程从注册表中的打开键中删除与名称匹配的值项。 如果不存在此类条目,则返回错误。
ZwDeviceIoControlFile

此例程将控制代码直接发送到指定的设备驱动程序,导致相应的驱动程序执行指定的操作。
ZwDeviceIoControlFile

了解 ZwDeviceIoControlFile 例程如何将控制代码直接发送到指定的设备驱动程序,从而导致相应的驱动程序执行指定的操作。
ZwDuplicateObject

ZwDuplicateObject 例程创建一个句柄,该句柄是指定源句柄的副本。
ZwDuplicateToken

ZwDuplicateToken 函数为复制现有令牌的新访问令牌创建句柄。
ZwEnumerateKey

ZwEnumerateKey 例程返回有关打开的注册表项的子项的信息。
ZwEnumerateTransactionObject

了解 ZwEnumerateTransactionObject 例程如何枚举计算机上的 KTM 对象。
ZwEnumerateValueKey

ZwEnumerateValueKey 例程获取有关打开键的值条目的信息。
ZwFlushBuffersFile

ZwFlushBuffersFile 例程由文件系统筛选器驱动程序调用,以便向文件系统发送指定文件的刷新请求。
ZwFlushBuffersFileEx

ZwFlushBuffersFileEx 例程由文件系统筛选器驱动程序调用,以便向文件系统发送给定文件的刷新请求。 可以设置可选的刷新操作标志,以控制如何将文件数据写入存储。
ZwFlushKey

ZwFlushKey 例程强制将注册表项提交到磁盘。
ZwFlushVirtualMemory

ZwFlushVirtualMemory 例程在指定进程的虚拟地址空间中刷新一系列虚拟地址,如果数据文件已被修改,则映射到数据文件。
ZwFreeVirtualMemory

ZwFreeVirtualMemory 例程发布、取消提交或两者,是指定进程的虚拟地址空间中的页面区域。
ZwFsControlFile

ZwFsControlFile 例程将控制代码直接发送到指定的文件系统或文件系统筛选器驱动程序,导致相应的驱动程序执行指定的操作。
ZwGetNotificationResourceManager

了解 ZwGetNotificationResourceManager 例程如何从指定的资源管理器通知队列中检索下一个事务通知。
ZwLoadDriver

ZwLoadDriver 例程将驱动程序加载到系统中。
ZwLockFile

ZwLockFile 例程请求指定文件的字节范围锁。
ZwMakeTemporaryObject

ZwMakeTemporaryObject 例程更改对象的属性,使其临时。
ZwMapViewOfSection

ZwMapViewOfSection 例程将分区的视图映射到主题进程的虚拟地址空间。
ZwNotifyChangeKey

ZwNotifyChangeKey 例程允许驱动程序在注册表项更改时请求通知。
ZwOpenDirectoryObject

ZwOpenDirectoryObject 例程将打开现有目录对象。
ZwOpenEnlistment

了解 ZwOpenEnlistment 例程如何获取现有登记对象的句柄。
ZwOpenEvent

ZwOpenEvent 例程打开具有指定访问权限的现有命名事件对象的句柄。
ZwOpenFile

wdm.h 中的 ZwOpenFile 例程将打开现有文件、目录、设备或卷。 指向的句柄不再使用后,驱动程序必须关闭它。
ZwOpenKey

ZwOpenKey 例程将打开现有的注册表项。
ZwOpenKeyEx

ZwOpenKeyEx 例程将打开现有的注册表项。
ZwOpenKeyTransacted

ZwOpenKeyTransacted 例程将打开现有的注册表项,并将密钥与事务相关联。
ZwOpenKeyTransactedEx

ZwOpenKeyTransactedEx 例程将打开现有注册表项,并将密钥与事务相关联。
ZwOpenProcess

了解 ZwOpenProcess 例程如何打开进程对象的句柄,并设置此对象的访问权限。
ZwOpenProcessTokenEx

ZwOpenProcessTokenEx 例程将打开与进程关联的访问令牌。
ZwOpenResourceManager

了解 ZwOpenResourceManager 例程如何向现有资源管理器对象返回句柄。
ZwOpenSection

ZwOpenSection 例程打开现有节对象的句柄。
ZwOpenSymbolicLinkObject

ZwOpenSymbolicLinkObject 例程将打开现有的符号链接。
ZwOpenThreadTokenEx

ZwOpenThreadTokenEx 例程将打开与线程关联的访问令牌。
ZwOpenTransaction

了解 ZwOpenTransaction 例程如何获取现有事务对象的句柄。
ZwOpenTransactionManager

了解 ZwOpenTransactionManager 例程如何获取现有事务管理器对象的句柄。
ZwPowerInformation

ZwPowerInformation 例程设置或检索系统电源信息。
ZwPrepareComplete

了解 ZwPrepareComplete 例程如何通知 KTM 调用资源管理器已完成事务数据准备。
ZwPrepareEnlistment

了解 ZwPrepareEnlistment 例程如何为指定的登记事务启动准备操作。
ZwPrepareComplete

了解 ZwPreprepareComplete 例程如何通知 KTM 调用资源管理器已完成事务数据的初步准备。
ZwPrepareEnlistment

了解 ZwPrepareEnlistment 例程如何为指定的登记事务启动预准备操作。
ZwQueryDirectoryFile

ZwQueryDirectoryFile 例程返回有关给定文件句柄所指定的目录中文件的各种信息。
ZwQueryDirectoryFileEx

详细了解 ZwQueryDirectoryFileEx 函数。
ZwQueryEaFile

ZwQueryEaFile 例程返回有关文件的扩展属性 (EA) 值的信息。
ZwQueryFullAttributesFile

ZwQueryFullAttributesFile 例程为指定文件提供网络开放信息。
ZwQueryInformationByName

ZwQueryInformationByName 返回有关文件名指定的文件的请求信息。
ZwQueryInformationEnlistment

了解 ZwQueryInformationEnlistment 例程如何检索有关指定登记对象的信息。
ZwQueryInformationFile

ZwQueryInformationFile 例程返回有关文件对象的各种信息。
ZwQueryInformationResourceManager

了解 ZwQueryInformationResourceManager 例程如何检索有关指定资源管理器对象的信息。
ZwQueryInformationToken

ZwQueryInformationToken 例程检索有关访问令牌的指定类型信息。
ZwQueryInformationTransaction

了解 ZwQueryInformationTransaction 例程如何检索有关指定事务的信息。
ZwQueryInformationTransactionManager

了解 ZwQueryInformationTransactionManager 例程如何检索有关指定事务管理器对象的信息。
ZwQueryKey

ZwQueryKey 例程提供有关注册表项类及其子项的数量和大小的信息。
ZwQueryObject

ZwQueryObject 例程提供有关提供的对象的信息。 如果对 NtQueryObject 的调用处于用户模式,请使用名称 NtQueryObject。
ZwQueryQuotaInformationFile

ZwQueryQuotaInformationFile 例程检索与 FileHandle 参数指定的卷关联的配额条目。
ZwQuerySecurityObject

ZwQuerySecurityObject 例程检索对象的安全描述符的副本。 安全描述符可以采用绝对形式或自相对形式。
ZwQuerySymbolicLinkObject

ZwQuerySymbolicLinkObject 例程返回一个 Unicode 字符串,其中包含符号链接的目标。
ZwQueryValueKey

ZwQueryValueKey 例程返回注册表项的值项。
ZwQueryVirtualMemory

ZwQueryVirtualMemory 例程确定主题进程的虚拟地址空间中页面区域的状态、保护和类型。
ZwQueryVolumeInformationFile

了解此例程如何检索与给定文件、目录、存储设备或卷关联的卷的相关信息。
ZwQueryVolumeInformationFile

了解 ZwQueryVolumeInformationFile 例程如何检索与给定文件、目录、存储设备或卷关联的卷的相关信息。
ZwReadFile

wdm.h 中的 ZwReadFile 例程从打开的文件读取数据。 ZwReadFile 的调用方必须已调用 ZwCreateFile。
ZwReadOnlyEnlistment

了解 ZwReadOnlyEnlistment 例程如何将指定的登记设置为只读。
ZwRecoverEnlistment

了解 ZwRecoverEnlistment 例程如何为与指定登记关联的事务启动恢复操作。
ZwRecoverResourceManager

了解 ZwRecoverResourceManager 例程如何尝试恢复与指定资源管理器对象的每个登记关联的事务。
ZwRecoverTransactionManager

了解 ZwRecoverTransactionManager 例程如何从日志流中的恢复信息重新构造事务管理器对象的状态。
ZwRollbackComplete

了解 ZwRollbackComplete 例程如何通知 KTM 调用资源管理器已完成回滚事务的数据。
ZwRollbackEnlistment

了解 ZwRollbackEnlistment 例程如何回滚与指定登记关联的事务。
ZwRollbackTransaction

了解 ZwRollbackTransaction 例程如何为指定的事务启动回滚操作。
ZwRollforwardTransactionManager

了解 ZwRollforwardTransactionManager 例程如何为分配给指定事务管理器的所有正在进行的事务启动恢复操作。
ZwSetEaFile

ZwSetEaFile 例程设置文件的扩展属性 (EA) 值。
ZwSetEvent

ZwSetEvent 例程将事件对象设置为信号状态,并尝试满足尽可能多的等待。
ZwSetInformationEnlistment

了解 ZwSetInformationEnlistment 例程如何设置指定登记对象的信息。
ZwSetInformationFile

wdm.h 中的 ZwSetInformationFile 例程会更改有关文件对象的各种信息。 它忽略不受支持的FILE_XXX_INFORMATION成员。
ZwSetInformationResourceManager

了解如何使用 ZwSetInformationResourceManager 例程。
ZwSetInformationThread

ZwSetInformationThread 例程设置线程的优先级。
ZwSetInformationToken

ZwSetInformationToken 例程修改指定令牌中的信息。 调用过程必须具有适当的访问权限才能设置信息。
ZwSetInformationTransaction

了解 ZwSetInformationTransaction 例程如何设置指定事务的信息。
ZwSetInformationVirtualMemory

ZwSetInformationVirtualMemory 例程对进程的用户地址空间中的指定地址范围列表执行操作。
ZwSetQuotaInformationFile

ZwSetQuotaInformationFile 例程更改与 FileHandle 参数关联的卷的配额条目。 指定缓冲区中的所有配额条目都应用于卷。
ZwSetSecurityObject

ZwSetSecurityObject 例程设置对象的安全状态。
ZwSetValueKey

ZwSetValueKey 例程创建或替换注册表项的值条目。
ZwSetVolumeInformationFile

ZwSetVolumeInformationFile 例程修改与给定文件、目录、存储设备或卷关联的卷的相关信息。
ZwSinglePhaseReject

了解 ZwSinglePhaseReject 例程如何通知 KTM 调用资源管理器不支持指定登记的单阶段提交操作。
ZwTerminateProcess

ZwTerminateProcess 例程终止进程及其所有线程。
ZwUnloadDriver

ZwUnloadDriver 例程从系统卸载驱动程序。
ZwUnlockFile

ZwUnlockFile 例程解锁文件中的字节范围锁。
ZwUnmapViewOfSection

ZwUnmapViewOfSection 例程从主题进程的虚拟地址空间取消映射节的视图。
ZwWaitForSingleObject

ZwWaitForSingleObject 例程等待,直到指定对象达到 Signaled 状态。 还可以指定可选的超时。
ZwWriteFile

ZwWriteFile 例程将数据写入打开的文件。

结构

 
DMA_ADAPTER

DMA_ADAPTER结构描述给定设备的 DMA 控制器的系统定义接口。 驱动程序调用 IoGetDmaAdapter 以获取此结构。
DMA_OPERATIONS

DMA_OPERATIONS结构提供指向控制 DMA 控制器操作的函数的指针表。
ACPI_INTERFACE_STANDARD2

本主题介绍ACPI_INTERFACE_STANDARD2结构。
AUX_MODULE_BASIC_INFO

AUX_MODULE_BASIC_INFO结构包含有关加载的图像模块的基本信息。
AUX_MODULE_EXTENDED_INFO

AUX_MODULE_EXTENDED_INFO结构包含有关已加载映像模块的扩展信息。
BDCB_IMAGE_INFORMATION

BDCB_IMAGE_INFORMATION结构描述了即将初始化的启动启动驱动程序的信息,该驱动程序由 Windows 提供给启动启动驱动程序的BOOT_DRIVER_CALLBACK_FUNCTION例程。
BDCB_STATUS_UPDATE_CONTEXT

BDCB_STATUS_UPDATE_CONTEXT结构描述 Windows 提供给启动驱动程序BOOT_DRIVER_CALLBACK_FUNCTION例程的状态更新。
BOOTDISK_INFORMATION

BOOTDISK_INFORMATION结构包含描述启动和系统磁盘的基本信息。
BOOTDISK_INFORMATION_EX

BOOTDISK_INFORMATION_EX结构包含描述启动和系统磁盘的扩展信息。
BUS_INTERFACE_STANDARD

BUS_INTERFACE_STANDARD接口结构使设备驱动程序能够直接调用父总线驱动程序例程。 此结构定义GUID_BUS_INTERFACE_STANDARD接口。
BUS_RESOURCE_UPDATE_INTERFACE

使设备驱动程序能够直接调用父总线驱动程序例程。 此结构定义GUID_BUS_RESOURCE_UPDATE_INTERFACE接口。
BUS_SPECIFIC_RESET_FLAGS

本主题介绍BUS_SPECIFIC_RESET_FLAGS联合。
CLFS_LOG_NAME_INFORMATION

CLFS_LOG_NAME_INFORMATION结构包含通用日志文件系统的名称 (CLFS) 流或日志。
CLFS_MGMT_CLIENT_REGISTRATION

CLFS_MGMT_CLIENT_REGISTRATION结构由管理自己的日志的客户端授予 CLFS 管理。
CLFS_MGMT_POLICY

CLFS_MGMT_POLICY结构包含管理 CLFS 日志的策略的说明。
CLFS_STREAM_ID_INFORMATION

CLFS_STREAM_ID_INFORMATION结构包含一个值,该值标识通用日志文件系统 (CLFS) 日志中的流。
CLS_CONTAINER_INFORMATION

CLFS_CONTAINER_INFORMATION结构在通用日志文件系统 (CLFS) 日志中保存单个容器的描述性信息。
CLS_INFORMATION

CLFS_INFORMATION结构保存通用日志文件系统 (CLFS) 流及其基础物理日志的元数据和状态信息。
CLS_IO_STATISTICS

CLFS_IO_STATISTICS结构保存通用日志文件系统 (CLFS) 日志的 I/O 统计信息数据。
CLS_IO_STATISTICS_HEADER

CLFS_IO_STATISTICS_HEADER结构包含CLFS_IO_STATISTICS结构的标头部分。
CLS_LSN

CLFS_LSN结构标识通用日志文件系统 (CLFS) 流中的单个记录。
CLS_SCAN_CONTEXT

CLFS_SCAN_CONTEXT结构包含上下文信息,以支持在通用日志文件系统 (CLFS) 日志中扫描容器。
CLS_WRITE_ENTRY

CLFS_WRITE_ENTRY结构包含要写入到通用日志文件系统 (CLFS) 流的一个单元数据的缓冲区的地址和大小。
CM_EISA_FUNCTION_INFORMATION

_CM_EISA_FUNCTION_INFORMATION结构 (miniport.h) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。
CM_EISA_FUNCTION_INFORMATION

_CM_EISA_FUNCTION_INFORMATION结构 (wdm.h) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。
CM_EISA_SLOT_INFORMATION

_CM_EISA_SLOT_INFORMATION结构 (miniport.h) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的 EISA 配置标头信息。
CM_EISA_SLOT_INFORMATION

_CM_EISA_SLOT_INFORMATION结构 (wdm.h) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的 EISA 配置标头信息。
CM_FLOPPY_DEVICE_DATA

CM_FLOPPY_DEVICE_DATA结构定义设备类型特定的数据记录,如果系统可以在启动过程中收集此信息,该记录存储在软盘控制器的 \Registry\Machine\Hardware\Description 树中。
CM_FULL_RESOURCE_DESCRIPTOR

CM_FULL_RESOURCE_DESCRIPTOR结构指定一组不同类型的系统硬件资源,这些资源分配给连接到特定总线的设备。 此结构包含在CM_RESOURCE_LIST结构中。
CM_INT13_DRIVE_PARAMETER

CM_INT13_DRIVE_PARAMETER结构定义存储在磁盘控制器 \Registry\Machine\Hardware\Description 树中的设备类型特定的数据记录(如果系统可以在启动过程中收集此信息)。
CM_KEYBOARD_DEVICE_DATA

CM_KEYBOARD_DEVICE_DATA结构定义设备类型特定的数据记录,如果系统可以在启动过程中收集此信息,则存储在键盘外围设备的 \Registry\Machine\Hardware\Description 树中。
CM_MCA_POS_DATA

miniport.h () 的_CM_MCA_POS_DATA结构已过时。 它定义槽的 IBM 兼容的 MCA POS 配置信息。
CM_MCA_POS_DATA

wdm.h) (_CM_MCA_POS_DATA结构已过时。 它定义槽的 IBM 兼容的 MCA POS 配置信息。
CM_PARTIAL_RESOURCE_DESCRIPTOR

CM_PARTIAL_RESOURCE_DESCRIPTOR结构指定分配给设备的单个类型的一个或多个系统硬件资源。
CM_PARTIAL_RESOURCE_LIST

CM_PARTIAL_RESOURCE_LIST结构指定分配给设备的各种系统硬件资源集。 此结构包含在CM_FULL_RESOURCE_DESCRIPTOR结构中。
CM_POWER_DATA

CM_POWER_DATA结构包含设备电源管理状态和功能的相关信息。
CM_POWER_DATA

了解CM_POWER_DATA结构如何包含设备电源管理状态和功能的相关信息。
CM_RESOURCE_LIST

CM_RESOURCE_LIST结构指定分配给设备的所有系统硬件资源。
CM_SCSI_DEVICE_DATA

CM_SCSI_DEVICE_DATA结构定义存储在 SCSI HBA 的 \Registry\Machine\Hardware\Description 树中(如果系统可以在启动过程中收集此信息)的设备类型特定的数据记录。
CM_SERIAL_DEVICE_DATA

CM_SERIAL_DEVICE_DATA结构定义设备类型特定的数据记录,如果系统可以在启动过程中收集此信息,则存储在串行控制器的 \Registry\Machine\Hardware\Description 树中。
上下文

了解以下内容的详细信息:CONTEXT 结构
CONTROLLER_OBJECT

控制器对象表示具有同质设备的硬件适配器或控制器,这些设备是 I/O 请求的实际目标。
COPY_INFORMATION

详细了解COPY_INFORMATION结构。
CORRELATION_VECTOR

存储用于引用事件和生成的日志以用于诊断目的的相关矢量。
COUNTED_REASON_CONTEXT

COUNTED_REASON_CONTEXT结构包含一个或多个字符串,这些字符串提供电源请求的原因。
COUNTED_REASON_CONTEXT

了解COUNTED_REASON_CONTEXT结构如何包含一个或多个字符串,这些字符串提供电源请求的原因。
CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG

包含有关自定义系统事件触发器的信息。
D3COLD_AUX_POWER_AND_TIMING_INTERFACE

允许设备驱动程序在 D3Cold 状态下为其 PCI 设备协商更高的辅助电源。
D3COLD_SUPPORT_INTERFACE

D3COLD_SUPPORT_INTERFACE接口结构包含指向GUID_D3COLD_SUPPORT_INTERFACE驱动程序接口中的例程的指针。
DEBUG_DEVICE_ADDRESS

本主题介绍DEBUG_DEVICE_ADDRESS结构。
DEBUG_MEMORY_REQUIREMENTS

本主题介绍DEBUG_MEMORY_REQUIREMENTS结构。
DEVICE_BUS_SPECIFIC_RESET_INFO

定义DEVICE_BUS_SPECIFIC_RESET_INFO结构。
DEVICE_BUS_SPECIFIC_RESET_TYPE

定义DEVICE_BUS_SPECIFIC_RESET_TYPE结构。
DEVICE_CAPABILITIES

DEVICE_CAPABILITIES结构描述设备的 PnP 和电源功能。 此结构在响应 IRP_MN_QUERY_CAPABILITIES IRP 时返回。
DEVICE_DESCRIPTION

DEVICE_DESCRIPTION结构描述驱动程序请求 DMA 适配器的物理设备的属性。
DEVICE_FAULT_CONFIGURATION

此结构用于设置设备故障报告状态
DEVICE_INTERFACE_CHANGE_NOTIFICATION

DEVICE_INTERFACE_CHANGE_NOTIFICATION结构描述 (到达) 或禁用 (删除) 的设备接口。
DEVICE_OBJECT

设备对象表示驱动程序处理 I/O 请求的逻辑、虚拟或物理设备。
DEVICE_RESET_INTERFACE_STANDARD

DEVICE_RESET_INTERFACE_STANDARD结构使函数驱动程序能够重置和恢复故障设备。 此结构描述GUID_DEVICE_RESET_INTERFACE_STANDARD接口。
DEVICE_RESET_STATUS_FLAGS

本主题介绍DEVICE_RESET_STATUS_FLAGS联合。
DMA_ADAPTER_INFO

DMA_ADAPTER_INFO结构是描述系统 DMA 控制器功能的DMA_ADAPTER_INFO_XXX结构的容器。
DMA_ADAPTER_INFO_CRASHDUMP

本主题介绍DMA_ADAPTER_INFO_CRASHDUMP结构。
DMA_ADAPTER_INFO_V1

DMA_ADAPTER_INFO_V1结构描述由适配器对象表示的系统 DMA 控制器的功能。
DMA_IOMMU_INTERFACE

接口结构的扩展版本,允许设备驱动程序调用执行设备域操作的回调函数。
DMA_IOMMU_INTERFACE_EX

允许设备驱动程序与执行设备域操作的 IOMMU 函数进行交互的接口结构。
DMA_IOMMU_INTERFACE_V1

详细了解:DMA_IOMMU_INTERFACE_V1
DMA_IOMMU_INTERFACE_V2

包含 IOMMU 版本 2 (V2) 函数集的结构。
DMA_TRANSFER_INFO

DMA_TRANSFER_INFO结构是DMA_TRANSFER_INFO_XXX结构的容器,用于描述散点/收集列表的分配要求。
DMA_TRANSFER_INFO_V1

DMA_TRANSFER_INFO_V1结构包含散点/收集列表的分配要求,用于描述 DMA 传输的 I/O 数据缓冲区。
DMA_TRANSFER_INFO_V2

包含散点/收集列表的分配要求,该列表描述 DMA 传输的 I/O 数据缓冲区。
DOMAIN_CONFIGURATION

包含配置域所需的信息。
DOMAIN_CONFIGURATION_ARM64

包含为 ARM64 系统配置域所需的信息。
DOMAIN_CONFIGURATION_X64

DOMAIN_CONFIGURATION_X64结构仅用于系统使用。
DRIVER_OBJECT

每个驱动程序对象表示已加载内核模式驱动程序的图像。
EFI_ACPI_RAS_SIGNAL_TABLE

本主题介绍EFI_ACPI_RAS_SIGNAL_TABLE结构。
EMULATOR_ACCESS_ENTRY

_EMULATOR_ACCESS_ENTRY结构 (miniport.h) 定义了一系列 I/O 端口,以及如何在基于 x86 的平台上通过 V86 模拟器访问它们。
ENLISTMENT_BASIC_INFORMATION

ENLISTMENT_BASIC_INFORMATION结构包含有关登记对象的信息。
EXT_DELETE_PARAMETERS

EXT_DELETE_PARAMETERS结构包含 ExDeleteTimer 例程的扩展参数集。
EXT_SET_PARAMETERS

EXT_SET_PARAMETERS结构包含 ExSetTimer 例程的扩展参数集。
EXTENDED_CREATE_INFORMATION

描述EXTENDED_CREATE_INFORMATION结构。
EXTENDED_CREATE_INFORMATION_32

描述EXTENDED_CREATE_INFORMATION结构的 32 位版本。
FILE_ACCESS_INFORMATION

FILE_ACCESS_INFORMATION结构用于查询或设置文件的访问权限。
FILE_ALIGNMENT_INFORMATION

FILE_ALIGNMENT_INFORMATION结构用作 ZwQueryInformationFile 例程的参数。
FILE_ALL_INFORMATION

FILE_ALL_INFORMATION结构是多个FILE_XXX_INFORMATION结构的容器。
FILE_ATTRIBUTE_TAG_INFORMATION

FILE_ATTRIBUTE_TAG_INFORMATION结构用作 ZwQueryInformationFile 的参数。
FILE_BASIC_INFORMATION

FILE_BASIC_INFORMATION结构包含文件的时间戳和基本属性。 它用作查询或设置文件信息的例程的参数。
FILE_DISPOSITION_INFORMATION

FILE_DISPOSITION_INFORMATION结构用作 ZwSetInformationFile 例程的参数。
FILE_EA_INFORMATION

FILE_EA_INFORMATION结构用于查询文件 (EA) 扩展属性的大小。
FILE_END_OF_FILE_INFORMATION

FILE_END_OF_FILE_INFORMATION结构用作 ZwSetInformationFile 例程的参数。
FILE_FS_DEVICE_INFORMATION

FILE_FS_DEVICE_INFORMATION结构提供有关与文件对象关联的设备对象的类型的文件系统设备信息。
FILE_FULL_EA_INFORMATION

FILE_FULL_EA_INFORMATION结构 (EA) 信息提供扩展属性。
FILE_IO_PRIORITY_HINT_INFORMATION

ZwQueryInformationFile 和 ZwSetInformationFile 例程使用FILE_IO_PRIORITY_HINT_INFORMATION结构来查询和设置指定文件句柄上请求的默认 IRP 优先级提示。
FILE_IS_REMOTE_DEVICE_INFORMATION

FILE_IS_REMOTE_DEVICE_INFORMATION结构用作 ZwQueryInformationFile 例程的参数。
FILE_MODE_INFORMATION

FILE_MODE_INFORMATION结构用于查询或设置文件的访问模式。
FILE_NAME_INFORMATION

FILE_NAME_INFORMATION结构用作 ZwQueryInformationFile 和 ZwSetInformationFile 例程的参数。
FILE_NETWORK_OPEN_INFORMATION

FILE_NETWORK_OPEN_INFORMATION结构用作 ZwQueryInformationFile 的参数。
FILE_OBJECT

系统使用FILE_OBJECT结构来表示文件对象。
FILE_POSITION_INFORMATION

FILE_POSITION_INFORMATION结构用作查询或设置文件信息的例程的参数。
FILE_STANDARD_INFORMATION

FILE_STANDARD_INFORMATION结构用作查询或设置文件信息的例程的参数。
FILE_STANDARD_INFORMATION_EX

FILE_STANDARD_INFORMATION_EX结构用作查询或设置文件信息的例程的参数。
FILE_VALID_DATA_LENGTH_INFORMATION

FILE_VALID_DATA_LENGTH_INFORMATION结构用作 ZwSetInformationFile 的参数。
FPGA_CONTROL_INTERFACE

保留以供将来使用FPGA_CONTROL_INTERFACE。
FUNCTION_LEVEL_DEVICE_RESET_PARAMETERS

FUNCTION_LEVEL_DEVICE_RESET_PARAMETER结构用作 GUID_DEVICE_RESET_INTERFACE_STANDARD 接口的 DeviceReset 例程的参数。
GENERIC_MAPPING

GENERIC_MAPPING结构描述了与每种泛型访问权限类型关联的特定访问权限的ACCESS_MASK值。
GROUP_AFFINITY

_GROUP_AFFINITY结构 (miniport.h) 指定该组中的组号和处理器相关性。
HAL_DISPATCH

本主题介绍HAL_DISPATCH结构。
HARDWARE_COUNTER

HARDWARE_COUNTER结构包含有关硬件计数器的信息。
HWPROFILE_CHANGE_NOTIFICATION

HWPROFILE_CHANGE_NOTIFICATION结构描述与硬件配置文件配置更改相关的事件。
IMAGE_INFO

驱动程序的加载映像例程 (PLOAD_IMAGE_NOTIFY_ROUTINE) 用于指定图像信息。
IMAGE_INFO_EX

IMAGE_INFO_EX是IMAGE_INFO加载映像信息结构的扩展版本。
IMAGE_POLICY_ENTRY

不支持_IMAGE_POLICY_ENTRY结构。
IMAGE_POLICY_METADATA

不支持_IMAGE_POLICY_METADATA结构。
INPUT_MAPPING_ELEMENT

包含设备的输入映射 ID。
接口

_INTERFACE结构 (miniport.h) 描述驱动程序导出以供其他驱动程序使用的接口。
接口

_INTERFACE结构 (wdm.h) 描述驱动程序导出以供其他驱动程序使用的接口。
IO_CONNECT_INTERRUPT_PARAMETERS

IO_CONNECT_INTERRUPT_PARAMETERS结构包含驱动程序向 IoConnectInterruptEx 例程提供的参数,以 (ISR) 注册中断服务例程。
IO_DISCONNECT_INTERRUPT_PARAMETERS

使用 IoDisconnectInterruptEx 取消注册中断处理例程时,IO_DISCONNECT_INTERRUPT_PARAMETERS结构描述了参数。
IO_ERROR_LOG_PACKET

IO_ERROR_LOG_PACKET结构充当错误日志条目的标头。
IO_FOEXT_SHADOW_FILE

本主题介绍IO_FOEXT_SHADOW_FILE结构。
IO_INTERRUPT_MESSAGE_INFO

IO_INTERRUPT_MESSAGE_INFO结构描述驱动程序的消息信号中断。
IO_INTERRUPT_MESSAGE_INFO_ENTRY

IO_INTERRUPT_MESSAGE_INFO_ENTRY结构描述单个消息信号中断的属性。
IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS

IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS结构包含注册的中断服务例程的连接上下文, (ISR) ,该例程通过之前调用 IoConnectInterruptEx 例程连接到中断或中断。
IO_RESOURCE_DESCRIPTOR

_IO_RESOURCE_DESCRIPTOR结构 (miniport.h) 描述了一系列原始硬件资源(一种类型)可供设备使用。
IO_RESOURCE_DESCRIPTOR

_IO_RESOURCE_DESCRIPTOR结构 (wdm.h) 描述了一系列原始硬件资源(一种类型)可供设备使用。
IO_RESOURCE_LIST

_IO_RESOURCE_LIST结构 (miniport.h) 描述了设备可以使用的各种原始硬件资源。
IO_RESOURCE_LIST

_IO_RESOURCE_LIST结构 (wdm.h) 描述了设备可以使用的各种原始硬件资源。
IO_RESOURCE_REQUIREMENTS_LIST

_IO_RESOURCE_REQUIREMENTS_LIST结构 (miniport.h) 描述表示设备使用的原始资源类型的资源配置集。
IO_RESOURCE_REQUIREMENTS_LIST

_IO_RESOURCE_REQUIREMENTS_LIST结构 (wdm.h) 描述表示设备使用的原始资源类型的资源配置集。
IO_SECURITY_CONTEXT

IO_SECURITY_CONTEXT结构表示IRP_MJ_CREATE请求的安全上下文。
IO_SESSION_CONNECT_INFO

IO_SESSION_CONNECT_INFO结构提供有关用户会话的信息。
IO_SESSION_STATE_INFORMATION

IO_SESSION_STATE_INFORMATION结构包含有关用户会话状态的信息。
IO_SESSION_STATE_NOTIFICATION

IO_SESSION_STATE_NOTIFICATION结构包含内核模式驱动程序在驱动程序注册以接收会话事件的通知时提供给 IoRegisterContainerNotification 例程的信息。
IO_STACK_LOCATION

IO_STACK_LOCATION结构定义 I/O 堆栈位置,该位置是与每个 IRP 关联的 I/O 堆栈中的条目。
IO_STATUS_BLOCK

驱动程序设置 IRP 的 I/O 状态块,以指示 I/O 请求的最终状态,然后再调用 IRP 的 IoCompleteRequest。
IO_STATUS_BLOCK64

IO_STATUS_BLOCK64结构...
IOMMU_DEVICE_CREATION_CONFIGURATION

IOMMU_DEVICE_CREATION_CONFIGURATION描述要用作创建和初始化IOMMU_DMA_DEVICE的一部分的配置或配置列表。
IOMMU_DEVICE_CREATION_CONFIGURATION_ACPI

IOMMU_DEVICE_CREATION_CONFIGURATION_ACPI提供IOMMU_DEVICE_CREATION_CONFIGURATION结构的 ACPI 特定配置参数,该参数用于创建 ACPI 类型IOMMU_DMA_DEVICE。
IOMMU_DMA_DOMAIN_CREATION_FLAGS

了解以下内容的详细信息:IOMMU_DMA_DOMAIN_CREATION_FLAGS
IOMMU_DMA_LOGICAL_ADDRESS_TOKEN

IOMMU_DMA_LOGICAL_ADDRESS_TOKEN表示由IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE创建的保留连续逻辑地址范围。
IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT

了解以下内容的详细信息:IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT
IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG

IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG结构包含配置逻辑分配器所需的信息。
IOMMU_DMA_RESERVED_REGION

IOMMU_DMA_RESERVED_REGION结构描述需要在创建域期间标记为保留的内存区域。
IOMMU_INTERFACE_STATE_CHANGE

详细了解:IOMMU_INTERFACE_STATE_CHANGE
IOMMU_INTERFACE_STATE_CHANGE_FIELDS

详细了解IOMMU_INTERFACE_STATE_CHANGE_FIELDS
IOMMU_MAP_PHYSICAL_ADDRESS

IOMMU_MAP_PHYSICAL_ADDRESS表示要映射到逻辑地址的物理地址。
IRP

IRP 结构是表示 I/O 请求数据包的部分不透明结构。 驱动程序可以使用 IRP 结构的以下成员。
KBUGCHECK_ADD_PAGES

KBUGCHECK_ADD_PAGES结构描述了由 KbCallbackAddPages 回调例程写入到故障转储文件的一个或多个驱动程序提供的数据页。
KBUGCHECK_DATA

KBUGCHECK_DATA结构包含 bug 检查参数。
KBUGCHECK_DUMP_IO

KBUGCHECK_DUMP_IO结构描述故障转储文件中的 I/O 操作。
KBUGCHECK_SECONDARY_DUMP_DATA

KBUGCHECK_SECONDARY_DUMP_DATA结构描述了由 KbCallbackSecondaryDumpData 例程写入到故障转储文件的驱动程序提供的数据部分。
KDPC_WATCHDOG_INFORMATION

KDPC_WATCHDOG_INFORMATION结构包含有关当前延迟过程调用的超时信息, (DPC) 。
KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT

KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT结构描述将新处理器动态添加到硬件分区时传递给已注册回调函数的通知上下文。
KERNEL_CET_CONTEXT

仅用于系统使用。 请勿使用。
KERNEL_SOFT_RESTART_NOTIFICATION

详细了解:KERNEL_SOFT_RESTART_NOTIFICATION结构
KEY_BASIC_INFORMATION

KEY_BASIC_INFORMATION结构定义可用于注册表项的完整信息的子集。
KEY_CACHED_INFORMATION

KEY_CACHED_INFORMATION结构包含可用于注册表项或子项的缓存信息。
KEY_FULL_INFORMATION

KEY_FULL_INFORMATION结构定义注册表项可用的信息,包括其子项的相关信息及其名称和值项的最大长度。
KEY_NAME_INFORMATION

KEY_NAME_INFORMATION结构包含密钥的名称和名称长度。
KEY_NODE_INFORMATION

KEY_NODE_INFORMATION结构定义可用于注册表 (子) 键的基本信息。
KEY_VALUE_BASIC_INFORMATION

KEY_VALUE_BASIC_INFORMATION结构定义可用于注册表项值项的完整信息的子集。
KEY_VALUE_ENTRY

REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION结构使用KEY_VALUE_ENTRY结构来描述注册表项的单个值项。
KEY_VALUE_FULL_INFORMATION

KEY_VALUE_FULL_INFORMATION结构定义可用于注册表项的值项的信息。
KEY_VALUE_PARTIAL_INFORMATION

KEY_VALUE_PARTIAL_INFORMATION结构定义可用于注册表项值项的值信息的子集。
KEY_VIRTUALIZATION_INFORMATION

KEY_VIRTUALIZATION_INFORMATION结构定义可用于注册表项或子项的基本信息。
KEY_WRITE_TIME_INFORMATION

系统使用KEY_WRITE_TIME_INFORMATION结构为注册表项设置上次写入时间。
KMUTANT

详细了解:KMUTANT 结构
KTMOBJECT_CURSOR

当组件调用 ZwEnumerateTransactionObject 时,KTMOBJECT_CURSOR结构接收有关 KTM 对象的枚举信息。
KUSER_SHARED_DATA

本主题介绍KUSER_SHARED_DATA结构。
LINK_SHARE_ACCESS

文件系统仅用于链接文件的共享访问结构。
MAILSLOT_CREATE_PARAMETERS

Windows 子系统使用MAILSLOT_CREATE_PARAMETERS创建 mailslot。
MDL

MDL 结构是一个部分不透明结构,表示内存描述符列表 (MDL) 。
MEM_EXTENDED_PARAMETER

详细了解:MEM_EXTENDED_PARAMETER结构
MEMORY_BASIC_INFORMATION

包含有关进程虚拟地址空间中一系列页面的信息。
MEMORY_PARTITION_DEDICATED_MEMORY_OPEN_INFORMATION

定义MEMORY_PARTITION_DEDICATED_MEMORY_OPEN_INFORMATION结构。
MM_COPY_ADDRESS

MM_COPY_ADDRESS结构包含虚拟内存地址或物理内存地址。
MM_PHYSICAL_ADDRESS_LIST

MM_PHYSICAL_ADDRESS_LIST结构指定一系列物理地址。
NAMED_PIPE_CREATE_PARAMETERS

Windows 子系统使用NAMED_PIPE_CREATE_PARAMETERS结构来创建命名管道。
NOTIFY_USER_POWER_SETTING

本主题介绍NOTIFY_USER_POWER_SETTING结构。
OB_CALLBACK_REGISTRATION

当 ObRegisterCallbacks 例程注册 ObjectPreCallback 和 ObjectPostCallback 回调例程时,OB_CALLBACK_REGISTRATION结构指定参数。
OB_OPERATION_REGISTRATION

OB_OPERATION_REGISTRATION结构指定 ObjectPreCallback 和 ObjectPostCallback 回调例程以及调用例程的操作类型。
OB_POST_CREATE_HANDLE_INFORMATION

OB_POST_CREATE_HANDLE_INFORMATION结构提供有关已打开的线程或进程句柄的 ObjectPostCallback 例程的信息。
OB_POST_DUPLICATE_HANDLE_INFORMATION

OB_POST_DUPLICATE_HANDLE_INFORMATION结构提供有关已复制的线程或进程句柄的 ObjectPostCallback 例程的信息。
OB_POST_OPERATION_INFORMATION

OB_POST_OPERATION_INFORMATION结构提供有关 ObjectPostCallback 例程的进程或线程句柄操作的信息。
OB_POST_OPERATION_PARAMETERS

OB_POST_OPERATION_PARAMETERS联合描述 ObjectPostCallback 例程的操作特定参数。
OB_PRE_CREATE_HANDLE_INFORMATION

OB_PRE_CREATE_HANDLE_INFORMATION结构提供有关正在打开的线程或进程句柄的 ObjectPreCallback 例程的信息。
OB_PRE_DUPLICATE_HANDLE_INFORMATION

OB_PRE_DUPLICATE_HANDLE_INFORMATION结构提供有关正在复制的线程或进程句柄的 ObjectPreCallback 例程的信息。
OB_PRE_OPERATION_INFORMATION

OB_PRE_OPERATION_INFORMATION结构提供有关 ObjectPreCallback 例程的进程或线程句柄操作的信息。
OB_PRE_OPERATION_PARAMETERS

OB_PRE_OPERATION_PARAMETERS联合描述 ObjectPreCallback 例程的操作特定参数。
OSVERSIONINFOEXW

RTL_OSVERSIONINFOEXW结构包含操作系统版本信息。
OSVERSIONINFOW

RTL_OSVERSIONINFOW结构包含操作系统版本信息。
PCI_ATS_INTERFACE

定义PCI_ATS_INTERFACE结构。
PCI_COMMON_CONFIG

_PCI_COMMON_CONFIG结构 (miniport.h) 已过时。 它定义标准 PCI 配置信息。
PCI_COMMON_CONFIG

wdm.h) (_PCI_COMMON_CONFIG结构定义标准 PCI 配置信息。
PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER

描述PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER联合。
PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER

本主题介绍PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER联合。
PCI_EXPRESS_LINK_CONTROL_2_REGISTER

描述PCI_EXPRESS_LINK_CONTROL_2_REGISTER联合。
PCI_EXPRESS_LINK_CONTROL_2_REGISTER

本主题介绍PCI_EXPRESS_LINK_CONTROL_2_REGISTER联合。
PCI_EXPRESS_LINK_STATUS_2_REGISTER

描述PCI_EXPRESS_LINK_STATUS_2_REGISTER联合。
PCI_EXPRESS_LINK_STATUS_2_REGISTER

本主题介绍PCI_EXPRESS_LINK_STATUS_2_REGISTER联合。
PCI_MSIX_TABLE_CONFIG_INTERFACE

PCI_MSIX_TABLE_CONFIG_INTERFACE结构使设备驱动程序能够修改其 MSI-X 中断设置。 此结构描述GUID_MSIX_TABLE_CONFIG_INTERFACE接口。
PCI_SECURITY_INTERFACE2

定义PCI_SECURITY_INTERFACE2结构。
PCI_SEGMENT_BUS_NUMBER

Microsoft 保留PCI_SEGMENT_BUS_NUMBER结构以供内部使用。 请勿在代码中使用此结构。
PCI_SLOT_NUMBER

_PCI_SLOT_NUMBER结构 (miniport.h) 已过时。 它将 Slot 参数的格式定义为过时的 HalXxxBusData 例程。
PCI_SLOT_NUMBER

wdm.h) (_PCI_SLOT_NUMBER 结构已过时。 它将 Slot 参数的格式定义为过时的 HalXxxBusData 例程。
PCI_VENDOR_SPECIFIC_CAPABILITY

本主题介绍PCI_VENDOR_SPECIFIC_CAPABILITY结构。
PEP_ABANDON_DEVICE

了解PEP_ABANDON_DEVICE结构如何标识已放弃且不再由操作系统使用的设备。
PEP_ABANDON_DEVICE

PEP_ABANDON_DEVICE结构标识已放弃且不再由操作系统使用的设备。
PEP_ACPI_ABANDON_DEVICE

了解PEP_ACPI_ABANDON_DEVICE结构如何指示平台扩展插件 (PEP) 是否接受已放弃设备的所有权。
PEP_ACPI_ABANDON_DEVICE

PEP_ACPI_ABANDON_DEVICE结构指示平台扩展插件是否 (PEP) 接受已放弃设备的所有权。
PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE

了解PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE结构如何包含设备命名空间中对象的枚举。
PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE

PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE结构包含设备命名空间中对象的枚举。
PEP_ACPI_EVALUATE_CONTROL_METHOD

了解PEP_ACPI_EVALUATE_CONTROL_METHOD结构如何指定要评估的 ACPI 控制方法、要提供给此方法的输入参数,以及计算结果的输出缓冲区。
PEP_ACPI_EVALUATE_CONTROL_METHOD

PEP_ACPI_EVALUATE_CONTROL_METHOD结构指定要计算的 ACPI 控制方法、要提供给此方法的输入参数,以及计算结果的输出缓冲区。
PEP_ACPI_EXTENDED_ADDRESS

了解PEP_ACPI_EXTENDED_ADDRESS结构如何用于报告地址空间(例如内存和 IO)中的资源使用情况。
PEP_ACPI_EXTENDED_ADDRESS

PEP_ACPI_EXTENDED_ADDRESS结构用于报告地址空间(例如内存和 IO)中的资源使用情况。
PEP_ACPI_GPIO_RESOURCE

了解PEP_ACPI_GPIO_RESOURCE结构如何描述常规用途输入/输出 (GPIO) 资源的 ACPI 配置。
PEP_ACPI_GPIO_RESOURCE

PEP_ACPI_GPIO_RESOURCE结构描述了常规用途输入/输出 (GPIO) 资源的 ACPI 配置。
PEP_ACPI_INTERRUPT_RESOURCE

了解PEP_ACPI_INTERRUPT_RESOURCE结构如何描述 ACPI 中断资源。
PEP_ACPI_INTERRUPT_RESOURCE

PEP_ACPI_INTERRUPT_RESOURCE结构描述 ACPI 中断资源。
PEP_ACPI_IO_MEMORY_RESOURCE

了解PEP_ACPI_IO_MEMORY_RESOURCE结构如何描述 ACPI IO 端口描述符资源。
PEP_ACPI_IO_MEMORY_RESOURCE

PEP_ACPI_IO_MEMORY_RESOURCE结构描述 ACPI IO 端口描述符资源。
PEP_ACPI_OBJECT_NAME

了解PEP_ACPI_OBJECT_NAME联合如何包含 ACPI 对象的四个字符名称。
PEP_ACPI_OBJECT_NAME

PEP_ACPI_OBJECT_NAME联合包含 ACPI 对象的四个字符名称。
PEP_ACPI_OBJECT_NAME_WITH_TYPE

了解PEP_ACPI_OBJECT_NAME_WITH_TYPE结构如何指定 ACPI 对象的相对路径名称和此对象的类型。
PEP_ACPI_OBJECT_NAME_WITH_TYPE

PEP_ACPI_OBJECT_NAME_WITH_TYPE结构,用于指定 ACPI 对象的相对路径名称和此对象的类型。
PEP_ACPI_PREPARE_DEVICE

了解PEP_ACPI_PREPARE_DEVICE结构如何指示平台扩展插件 (PEP) 是否准备好为指定设备提供 ACPI 服务。
PEP_ACPI_PREPARE_DEVICE

PEP_ACPI_PREPARE_DEVICE结构指示平台扩展插件 (PEP) 是否已准备好为指定设备提供 ACPI 服务。
PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES

了解PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES结构如何包含控制设备电源所需的原始资源列表。
PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES

PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES结构包含控制设备电源所需的原始资源列表。
PEP_ACPI_QUERY_OBJECT_INFORMATION

了解PEP_ACPI_QUERY_OBJECT_INFORMATION结构如何包含有关 ACPI 对象的信息。
PEP_ACPI_QUERY_OBJECT_INFORMATION

PEP_ACPI_QUERY_OBJECT_INFORMATION结构包含有关 ACPI 对象的信息。
PEP_ACPI_REGISTER_DEVICE

了解PEP_ACPI_REGISTER_DEVICE结构如何包含有关平台扩展插件 (PEP) 提供 ACPI 服务的设备的注册信息。
PEP_ACPI_REGISTER_DEVICE

PEP_ACPI_REGISTER_DEVICE结构包含有关平台扩展插件 (PEP) 提供 ACPI 服务的设备的注册信息。
PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES

了解通过 PEP 初始化函数之一将 ACPI 资源转换为 BIOS 资源的过程中如何使用PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES结构。
PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES

PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES结构用于通过 PEP 初始化函数之一将 ACPI 资源转换为 BIOS 资源。
PEP_ACPI_RESOURCE

了解PEP_ACPI_RESOURCE结构如何包含特定 ACPI 资源的硬件详细信息。
PEP_ACPI_RESOURCE

PEP_ACPI_RESOURCE结构包含特定 ACPI 资源的硬件详细信息。
PEP_ACPI_RESOURCE_FLAGS

了解PEP_ACPI_RESOURCE_FLAGS结构如何包含描述 ACPI 资源的标志。
PEP_ACPI_RESOURCE_FLAGS

PEP_ACPI_RESOURCE_FLAGS结构包含描述 ACPI 资源的标志。
PEP_ACPI_SPB_I2C_RESOURCE

了解PEP_ACPI_SPB_I2C_RESOURCE结构如何描述 ACPI I2C 串行总线资源。
PEP_ACPI_SPB_I2C_RESOURCE

PEP_ACPI_SPB_I2C_RESOURCE结构描述 ACPI I2C 串行总线资源。
PEP_ACPI_SPB_RESOURCE

了解PEP_ACPI_SPB_RESOURCE结构如何描述 ACPI 串行总线连接资源。
PEP_ACPI_SPB_RESOURCE

PEP_ACPI_SPB_RESOURCE结构描述 ACPI 串行总线连接资源。
PEP_ACPI_SPB_SPI_RESOURCE

了解PEP_ACPI_SPB_SPI_RESOURCE结构如何描述 ACPI SPI 串行总线资源。
PEP_ACPI_SPB_SPI_RESOURCE

PEP_ACPI_SPB_SPI_RESOURCE结构描述 ACPI SPI 串行总线资源。
PEP_ACPI_SPB_UART_RESOURCE

了解PEP_ACPI_SPB_UART_RESOURCE结构如何描述 ACPI UART 串行总线资源。
PEP_ACPI_SPB_UART_RESOURCE

PEP_ACPI_SPB_UART_RESOURCE结构描述 ACPI UART 串行总线资源。
PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES

了解PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES结构如何包含平台扩展插件 (PEP) 要使用的已转换电源控制资源列表。
PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES

PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES结构包含平台扩展插件 (PEP) 要使用的已转换电源控制资源列表。
PEP_ACPI_UNREGISTER_DEVICE

了解PEP_ACPI_UNREGISTER_DEVICE结构如何包含有关已从 ACPI 服务注销的设备的信息。
PEP_ACPI_UNREGISTER_DEVICE

PEP_ACPI_UNREGISTER_DEVICE结构包含有关已从 ACPI 服务注销的设备的信息。
PEP_COMPONENT_ACTIVE

PEP_COMPONENT_ACTIVE结构标识在空闲条件与活动条件之间进行转换的组件。
PEP_COMPONENT_PERF_INFO

了解PEP_COMPONENT_PERF_INFO结构如何描述组件 (P 状态) 的性能状态。
PEP_COMPONENT_PERF_INFO

PEP_COMPONENT_PERF_INFO结构描述组件的 P 状态) 的性能状态 (。
PEP_COMPONENT_PERF_SET

了解PEP_COMPONENT_PERF_SET结构如何描述 P 状态集中 (P 状态) 的性能状态。
PEP_COMPONENT_PERF_SET

PEP_COMPONENT_PERF_SET结构描述 P 状态集中 (P 状态) 的性能状态。
PEP_COMPONENT_PERF_STATE_REQUEST

了解PEP_COMPONENT_PERF_STATE_REQUEST结构如何指定性能状态 (P 状态) 集,以及要分配给此集的新性能级别。
PEP_COMPONENT_PERF_STATE_REQUEST

PEP_COMPONENT_PERF_STATE_REQUEST结构指定 (P 状态) 集的性能状态,以及要分配给此集的新性能级别。
PEP_COMPONENT_PLATFORM_CONSTRAINTS

了解PEP_COMPONENT_PLATFORM_CONSTRAINTS结构如何描述当平台处于特定空闲状态时组件可以处于的最低功率 Fx 状态。
PEP_COMPONENT_PLATFORM_CONSTRAINTS

PEP_COMPONENT_PLATFORM_CONSTRAINTS结构描述了当平台处于特定空闲状态时组件可以处于的最低功率 Fx 状态。
PEP_COMPONENT_V2

了解PEP_COMPONENT_V2结构如何指定设备中组件的电源状态属性。
PEP_COMPONENT_V2

PEP_COMPONENT_V2结构指定设备中组件的电源状态属性。
PEP_COORDINATED_DEPENDENCY_OPTION

了解PEP_COORIDNATED_DEPENDENCY_OPTION结构如何描述对 OS 的协调空闲状态依赖项。
PEP_COORDINATED_DEPENDENCY_OPTION

PEP_COORIDNATED_DEPENDENCY_OPTION结构描述对 OS 的协调空闲状态依赖项。
PEP_COORDINATED_IDLE_STATE

了解PEP_COORIDNATED_IDLE_STATE结构如何描述 OS 的协调空闲状态。
PEP_COORDINATED_IDLE_STATE

PEP_COORIDNATED_IDLE_STATE结构描述 OS 的协调空闲状态。
PEP_CRASHDUMP_INFORMATION

了解PEP_CRASHDUMP_INFORMATION结构如何包含有关故障转储设备的信息。
PEP_CRASHDUMP_INFORMATION

PEP_CRASHDUMP_INFORMATION结构包含有关故障转储设备的信息。
PEP_DEBUGGER_TRANSITION_REQUIREMENTS

了解PEP_DEBUGGER_TRANSITION_REQUIREMENTS结构如何指示必须打开调试器设备的平台空闲状态。
PEP_DEBUGGER_TRANSITION_REQUIREMENTS

PEP_DEBUGGER_TRANSITION_REQUIREMENTS结构指示必须打开调试器设备的平台空闲状态。
PEP_DEVICE_PLATFORM_CONSTRAINTS

了解PEP_DEVICE_PLATFORM_CONSTRAINTS结构如何指定用于进入设备支持的各种 Dx 电源状态的约束。
PEP_DEVICE_PLATFORM_CONSTRAINTS

PEP_DEVICE_PLATFORM_CONSTRAINTS结构指定用于进入设备支持的各种 Dx 电源状态的约束。
PEP_DEVICE_POWER_STATE

了解PEP_DEVICE_POWER_STATE结构如何指示转换到新的 Dx (设备电源) 状态的状态。
PEP_DEVICE_POWER_STATE

PEP_DEVICE_POWER_STATE结构指示转换到新的 Dx (设备电源状态的状态) 状态。
PEP_DEVICE_REGISTER_V2

了解PEP_DEVICE_REGISTER结构如何描述特定设备中的所有组件。
PEP_DEVICE_REGISTER_V2

PEP_DEVICE_REGISTER结构描述特定设备中的所有组件。
PEP_DEVICE_STARTED

了解PEP_DEVICE_STARTED结构如何标识驱动程序已完成 Windows 电源管理框架 (PoFx) 注册的设备。
PEP_DEVICE_STARTED

PEP_DEVICE_STARTED结构标识了驱动程序已完成 Windows 电源管理框架注册的设备, (PoFx) 。
PEP_INFORMATION

了解PEP_INFORMATION结构如何指定平台扩展插件 (PEP) 用来从 Windows 电源管理框架 (PoFx) 接收通知的接口。
PEP_INFORMATION

PEP_INFORMATION结构指定平台扩展插件 (PEP) 用来从 Windows 电源管理框架接收通知的接口, (PoFx) 。
PEP_KERNEL_INFORMATION_STRUCT_V1

PEP_KERNEL_INFORMATION_STRUCT_V1结构指定电源扩展插件 (PEP) 用来从 Windows 电源管理框架 (PoFx) 请求服务的接口。
PEP_KERNEL_INFORMATION_STRUCT_V2

了解PEP_KERNEL_INFORMATION_STRUCT_V2结构如何指定电源扩展插件 (PEP) 用于从 Windows 电源管理框架 (PoFx) 请求服务的接口。
PEP_KERNEL_INFORMATION_STRUCT_V3

了解PEP_KERNEL_INFORMATION_STRUCT_V3结构如何指定电源扩展插件 (PEP) 用于从 Windows 电源管理框架 (PoFx) 请求服务的接口。
PEP_KERNEL_INFORMATION_STRUCT_V3

PEP_KERNEL_INFORMATION_STRUCT_V3结构指定电源扩展插件 (PEP) 用来从 Windows 电源管理框架 (PoFx) 请求服务的接口。
PEP_LOW_POWER_EPOCH

了解PEP_LOW_POWER_EPOCH结构如何用于为PEP_DPM_LOW_POWER_EPOCH通知提供 (弃用) 的数据。
PEP_LOW_POWER_EPOCH

PEP_LOW_POWER_EPOCH结构用于为PEP_DPM_LOW_POWER_EPOCH通知提供 (弃用) 的数据。
PEP_NOTIFY_COMPONENT_IDLE_STATE

了解PEP_NOTIFY_COMPONENT_IDLE_STATE结构如何包含有关组件挂起过渡到新的 Fx 电源状态的状态信息。
PEP_NOTIFY_COMPONENT_IDLE_STATE

PEP_NOTIFY_COMPONENT_IDLE_STATE结构包含有关组件挂起转换到新的 Fx 电源状态的状态信息。
PEP_PERF_STATE

了解PEP_PERF_STATE结构如何描述 P 状态集中的性能状态 (P 状态) ,其中 P 状态被指定为一个或多个离散值的列表。
PEP_PERF_STATE

PEP_PERF_STATE结构描述了 P 状态集中的性能状态 (P 状态) ,其中 P 状态被指定为一个或多个离散值的列表。
PEP_PLATFORM_IDLE_STATE

了解PEP_PLATFORM_IDLE_STATE结构如何指定平台空闲状态的属性。
PEP_PLATFORM_IDLE_STATE

PEP_PLATFORM_IDLE_STATE结构指定平台空闲状态的属性。
PEP_PLATFORM_IDLE_STATE_UPDATE

了解PEP_PLATFORM_IDLE_STATE_UPDATE结构如何包含平台空闲状态的更新属性。
PEP_PLATFORM_IDLE_STATE_UPDATE

PEP_PLATFORM_IDLE_STATE_UPDATE结构包含平台空闲状态的更新属性。
PEP_POWER_CONTROL_COMPLETE

了解PEP_POWER_CONTROL_COMPLETE结构如何包含以前请求的电源控制操作的状态信息,以及设备驱动程序已完成。
PEP_POWER_CONTROL_COMPLETE

PEP_POWER_CONTROL_COMPLETE结构包含以前请求的 PEP 和设备驱动程序已完成的电源控制操作的状态信息。
PEP_POWER_CONTROL_REQUEST

了解PEP_POWER_CONTROL_REQUEST结构如何包含来自电源控制操作的驱动程序的请求。
PEP_POWER_CONTROL_REQUEST

PEP_POWER_CONTROL_REQUEST结构包含来自电源控制操作的驱动程序的请求。
PEP_PPM_CONTEXT_QUERY_PARKING_PAGE

了解PEP_PPM_CONTEXT_QUERY_PARKING_PAGE结构如何描述处理器的停车页。
PEP_PPM_CONTEXT_QUERY_PARKING_PAGE

PEP_PPM_CONTEXT_QUERY_PARKING_PAGE结构描述处理器的停车页。
PEP_PPM_CST_STATE

了解PEP_PPM_CST_STATE结构如何指定 C 状态 (ACPI 处理器电源状态) 的属性。
PEP_PPM_CST_STATE

PEP_PPM_CST_STATE结构指定 C 状态 (ACPI 处理器电源状态) 的属性。
PEP_PPM_CST_STATES

了解PEP_PPM_CST_STATES结构如何指定处理器支持的 C 状态 (ACPI 处理器电源状态) 的属性。
PEP_PPM_CST_STATES

PEP_PPM_CST_STATES结构指定处理器支持的 C 状态 (ACPI 处理器电源状态) 的属性。
PEP_PPM_ENTER_SYSTEM_STATE

了解如何在PEP_NOTIFY_PPM_ENTER_SYSTEM_STATE通知中使用此方法来通知 PEP 系统即将进入系统电源状态。  .
PEP_PPM_ENTER_SYSTEM_STATE

在PEP_NOTIFY_PPM_ENTER_SYSTEM_STATE通知中使用,通知 PEP 系统即将进入系统电源状态。  .
PEP_PPM_FEEDBACK_READ

了解PEP_PPM_FEEDBACK_READ结构如何包含从处理器性能反馈计数器读取的值。
PEP_PPM_FEEDBACK_READ

PEP_PPM_FEEDBACK_READ结构包含从处理器性能反馈计数器读取的值。
PEP_PPM_IDLE_CANCEL

PEP_PPM_IDLE_CANCEL结构指示处理器无法进入以前选择的空闲状态的原因。
PEP_PPM_IDLE_COMPLETE

了解PEP_PPM_IDLE_COMPLETE结构如何描述处理器和硬件平台正在唤醒的空闲状态。
PEP_PPM_IDLE_COMPLETE

PEP_PPM_IDLE_COMPLETE结构描述处理器和硬件平台正在唤醒的空闲状态。
PEP_PPM_IDLE_COMPLETE_V2

了解PEP_PPM_IDLE_COMPLETE_V2结构如何描述处理器和硬件平台正在唤醒的空闲状态。
PEP_PPM_IDLE_COMPLETE_V2

PEP_PPM_IDLE_COMPLETE_V2结构描述处理器和硬件平台正在唤醒的空闲状态。
PEP_PPM_IDLE_EXECUTE

了解PEP_PPM_IDLE_EXECUTE结构如何指定处理器要输入的空闲状态。
PEP_PPM_IDLE_EXECUTE

PEP_PPM_IDLE_EXECUTE结构指定处理器要输入的空闲状态。
PEP_PPM_IDLE_EXECUTE_V2

了解PEP_PPM_IDLE_EXECUTE_V2结构如何指定处理器要输入的空闲状态。
PEP_PPM_IDLE_EXECUTE_V2

PEP_PPM_IDLE_EXECUTE_V2结构指定处理器要输入的空闲状态。
PEP_PPM_IDLE_SELECT

PEP_PPM_IDLE_SELECT结构描述了处理器可以进入且仍满足操作系统指定的约束的最节能空闲状态。
PEP_PPM_INITIATE_WAKE

了解PEP_PPM_INITIATE_WAKE结构如何指示处理器是否需要中断才能从空闲状态唤醒。
PEP_PPM_INITIATE_WAKE

PEP_PPM_INITIATE_WAKE结构指示处理器是否需要中断才能从空闲状态唤醒。
PEP_PPM_IS_PROCESSOR_HALTED

了解PEP_PPM_IS_PROCESSOR_HALTED结构如何指示处理器当前是否处于所选空闲状态。
PEP_PPM_IS_PROCESSOR_HALTED

PEP_PPM_IS_PROCESSOR_HALTED结构指示处理器当前是否处于所选空闲状态停止。
PEP_PPM_LPI_COMPLETE

了解 PEP_PPM_LPI_COMPLETE 结构 (pep_x.h) 描述平台扩展插件 (PEP) 支持的特定处理器的所有处理器性能计数器。
PEP_PPM_PARK_MASK

了解PEP_PROCESSOR_PARK_MASK结构如何包含当前的核心停车掩码。
PEP_PPM_PARK_MASK

PEP_PROCESSOR_PARK_MASK结构包含当前的核心停车掩码。
PEP_PPM_PARK_SELECTION

了解PEP_PPM_PARK_SELECTION结构如何指示操作系统和平台扩展插件的首选项, (PEP) 有关应将平台中的处理器停在哪些方面,以减少能耗。
PEP_PPM_PARK_SELECTION

PEP_PPM_PARK_SELECTION结构指示操作系统和平台扩展插件的首选项, (PEP) 有关平台中的处理器应停在哪些方面,以减少能耗。
PEP_PPM_PARK_SELECTION_V2

了解PEP_PPM_PARK_SELECTION_V2结构如何指示操作系统和平台扩展插件的首选项, (PEP) 有关应停在平台中的处理器以减少能耗。
PEP_PPM_PARK_SELECTION_V2

PEP_PPM_PARK_SELECTION_V2结构指示操作系统和平台扩展插件的首选项, (PEP) 有关平台中的处理器应停在哪些方面,以减少能耗。
PEP_PPM_PERF_CHECK_COMPLETE

了解PEP_PPM_PERF_CHECK_COMPLETE结构如何用于通知 PEP 有关定期性能检查评估完成的详细信息。
PEP_PPM_PERF_CHECK_COMPLETE

PEP_PPM_PERF_CHECK_COMPLETE结构用于通知 PEP 有关定期性能检查评估完成的详细信息。
PEP_PPM_PERF_CONSTRAINTS

了解PEP_PPM_PERF_CONSTRAINTS结构如何描述应用于处理器的性能限制。
PEP_PPM_PERF_CONSTRAINTS

PEP_PPM_PERF_CONSTRAINTS结构描述了应用于处理器的性能限制。
PEP_PPM_PERF_SET

了解PEP_PPM_PERF_SET结构如何指定操作系统请求处理器的新性能级别。
PEP_PPM_PERF_SET

PEP_PPM_PERF_SET结构指定操作系统请求处理器的新性能级别。
PEP_PPM_PERF_SET_STATE

了解如何在运行时的PEP_NOTIFY_PPM_PERF_SET通知中使用此方法来设置处理器的当前操作性能。  .
PEP_PPM_PERF_SET_STATE

在运行时PEP_NOTIFY_PPM_PERF_SET通知中使用,以设置处理器的当前操作性能。  .
PEP_PPM_PLATFORM_STATE_RESIDENCIES

了解PEP_PPM_PLATFORM_STATE_RESIDENCIES结构如何包含硬件平台支持的空闲状态的累积驻留时间和转换计数。
PEP_PPM_PLATFORM_STATE_RESIDENCIES

PEP_PPM_PLATFORM_STATE_RESIDENCIES结构包含硬件平台支持的空闲状态的累积驻留时间和转换计数。
PEP_PPM_PLATFORM_STATE_RESIDENCY

了解PEP_PPM_PLATFORM_STATE_RESIDENCY结构如何指定特定平台空闲状态的累积驻留时间和转换计数。
PEP_PPM_PLATFORM_STATE_RESIDENCY

PEP_PPM_PLATFORM_STATE_RESIDENCY结构指定特定平台空闲状态的累积驻留时间和转换计数。
PEP_PPM_QUERY_CAPABILITIES

了解PEP_PPM_QUERY_CAPABILITIES结构如何包含有关平台扩展插件 (PEP) 的处理器电源管理 (PPM) 功能的信息。
PEP_PPM_QUERY_CAPABILITIES

PEP_PPM_QUERY_CAPABILITIES结构包含有关平台扩展插件 (PEP) 的处理器电源管理 (PPM) 功能的信息。
PEP_PPM_QUERY_COORDINATED_DEPENDENCY

了解PEP_PPM_QUERY_COORDINATED_DEPENDENCY结构如何描述协调空闲状态的依赖项。
PEP_PPM_QUERY_COORDINATED_DEPENDENCY

PEP_PPM_QUERY_COORDINATED_DEPENDENCY结构描述协调空闲状态的依赖项。
PEP_PPM_QUERY_COORDINATED_STATES

了解PEP_PPM_QUERY_COORDINATED_STATES结构如何包含平台扩展插件 (PEP) 支持的每个协调空闲状态的信息。
PEP_PPM_QUERY_COORDINATED_STATES

PEP_PPM_QUERY_COORDINATED_STATES结构包含有关平台扩展插件 (PEP) 支持的每个协调空闲状态的信息。
PEP_PPM_QUERY_DISCRETE_PERF_STATES

了解此方法如何在存储 PEP 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用此方法(如果PEP_NOTIFY_PPM_QUERY_CAPABILITIES通知指示对离散性能状态的支持)。 .
PEP_PPM_QUERY_DISCRETE_PERF_STATES

如果PEP_NOTIFY_PPM_QUERY_CAPABILITIES通知指示对离散性能状态的支持,则用于存储 PEP 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知。 .
PEP_PPM_QUERY_DOMAIN_INFO

了解此方法如何在查询有关性能域的信息的PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO通知中使用。 .
PEP_PPM_QUERY_DOMAIN_INFO

在查询有关性能域信息的PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO通知中使用。 .
PEP_PPM_QUERY_FEEDBACK_COUNTERS

了解 PEP_PPM_QUERY_FEEDBACK_COUNTERS 结构 (pep_x.h) 如何描述平台扩展插件 (PEP) 支持特定处理器的所有处理器性能计数器。
PEP_PPM_QUERY_FEEDBACK_COUNTERS

PEP_PPM_QUERY_FEEDBACK_COUNTERS结构描述了平台扩展插件 (PEP) 支持特定处理器的所有处理器性能计数器。
PEP_PPM_QUERY_IDLE_STATES

PEP_PPM_QUERY_IDLE_STATES结构描述特定处理器的空闲状态。
PEP_PPM_QUERY_IDLE_STATES_V2

了解处理器初始化期间如何使用PEP_PPM_QUERY_IDLE_STATES_V2结构来查询平台扩展插件 (PEP) 处理器空闲状态列表。
PEP_PPM_QUERY_IDLE_STATES_V2

PEP_PPM_QUERY_IDLE_STATES_V2结构用于在处理器初始化期间查询平台扩展插件 (PEP) 处理器空闲状态列表。
PEP_PPM_QUERY_LP_SETTINGS

PEP_PPM_QUERY_LP_SETTINGS结构包含注册表项的内核句柄,其中包含平台扩展插件为每个电源方案定义的电源优化设置 (PEP) 。
PEP_PPM_QUERY_PERF_CAPABILITIES

了解PEP_PPM_QUERY_PERF_CAPABILITIES结构如何描述指定处理器性能域中处理器的性能功能。
PEP_PPM_QUERY_PERF_CAPABILITIES

PEP_PPM_QUERY_PERF_CAPABILITIES结构描述了指定处理器性能域中处理器的性能功能。
PEP_PPM_QUERY_PLATFORM_STATE

了解PEP_PPM_QUERY_PLATFORM_STATE结构如何包含有关平台空闲状态的信息。
PEP_PPM_QUERY_PLATFORM_STATE

PEP_PPM_QUERY_PLATFORM_STATE结构包含有关平台空闲状态的信息。
PEP_PPM_QUERY_PLATFORM_STATES

了解PEP_PPM_QUERY_PLATFORM_STATES结构如何指定硬件平台支持的平台空闲状态数。
PEP_PPM_QUERY_PLATFORM_STATES

PEP_PPM_QUERY_PLATFORM_STATES结构指定硬件平台支持的平台空闲状态数。
PEP_PPM_QUERY_STATE_NAME

了解PEP_PPM_QUERY_STATE_NAME结构如何包含有关特定协调状态或平台空闲状态的信息。
PEP_PPM_QUERY_STATE_NAME

PEP_PPM_QUERY_STATE_NAME结构包含有关特定协调或平台空闲状态的信息。
PEP_PPM_QUERY_VETO_REASON

了解PEP_PPM_QUERY_VETO_REASON结构如何提供一个宽字符、以 null 结尾的字符串,该字符串包含一个描述性、可读名称(出于否决原因)。
PEP_PPM_QUERY_VETO_REASON

PEP_PPM_QUERY_VETO_REASON结构提供一个宽字符、以 null 结尾的字符串,该字符串包含一个描述性、可读名称(出于否决原因)。
PEP_PPM_QUERY_VETO_REASONS

了解PEP_PPM_QUERY_VETO_REASONS结构如何指定 PEP 在调用 ProcessorIdleVeto 和 PlatformIdleVeto 例程时使用的否决总数。
PEP_PPM_QUERY_VETO_REASONS

PEP_PPM_QUERY_VETO_REASONS结构指定 PEP 在调用 ProcessorIdleVeto 和 PlatformIdleVeto 例程时使用的否决原因总数。
PEP_PPM_RESUME_FROM_SYSTEM_STATE

了解PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE通知如何使用此方法,通知 PEP 系统刚刚从系统电源状态恢复。
PEP_PPM_RESUME_FROM_SYSTEM_STATE

由PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE通知通知,通知 PEP 系统刚刚从系统电源状态恢复。
PEP_PPM_TEST_IDLE_STATE

了解PEP_PPM_TEST_IDLE_STATE结构如何包含有关处理器是否可以立即进入处理器空闲状态的信息。
PEP_PPM_TEST_IDLE_STATE

PEP_PPM_TEST_IDLE_STATE结构包含有关处理器是否可以立即进入处理器空闲状态的信息。
PEP_PREPARE_DEVICE

了解PEP_PREPARE_DEVICE结构如何标识必须启动的设备,以备操作系统使用。
PEP_PREPARE_DEVICE

PEP_PREPARE_DEVICE结构标识必须启动的设备,以备操作系统使用。
PEP_PROCESSOR_FEEDBACK_COUNTER

了解PEP_PROCESSOR_FEEDBACK_COUNTER结构如何描述操作系统的反馈计数器。
PEP_PROCESSOR_FEEDBACK_COUNTER

PEP_PROCESSOR_FEEDBACK_COUNTER结构描述操作系统的反馈计数器。
PEP_PROCESSOR_IDLE_CONSTRAINTS

PEP_PROCESSOR_IDLE_CONSTRAINTS结构指定 PEP 用于选择处理器空闲状态的一组约束。
PEP_PROCESSOR_IDLE_DEPENDENCY

了解PEP_PROCESSOR_IDLE_DEPENDENCY结构如何指定指定处理器上平台空闲状态的依赖项。
PEP_PROCESSOR_IDLE_DEPENDENCY

PEP_PROCESSOR_IDLE_DEPENDENCY结构指定指定指定处理器上平台空闲状态的依赖项。
PEP_PROCESSOR_IDLE_STATE

PEP_PROCESSOR_IDLE_STATE结构描述处理器空闲状态的功能。
PEP_PROCESSOR_IDLE_STATE_UPDATE

了解PEP_PROCESSOR_IDLE_STATE_UPDATE结构如何包含处理器空闲状态的更新属性。
PEP_PROCESSOR_IDLE_STATE_UPDATE

PEP_PROCESSOR_IDLE_STATE_UPDATE结构包含处理器空闲状态的更新属性。
PEP_PROCESSOR_IDLE_STATE_V2

了解PEP_PROCESSOR_IDLE_STATE_V2结构如何描述平台扩展插件 (PEP) 支持的处理器空闲状态。
PEP_PROCESSOR_IDLE_STATE_V2

PEP_PROCESSOR_IDLE_STATE_V2结构描述了平台扩展插件 (PEP) 支持的处理器空闲状态。
PEP_PROCESSOR_PARK_PREFERENCE

了解PEP_PROCESSOR_PARK_PREFERENCE结构如何指示操作系统和平台扩展插件 (PEP) 的首选项,以确定是否应将指定的处理器停在内,以减少能耗。
PEP_PROCESSOR_PARK_PREFERENCE

PEP_PROCESSOR_PARK_PREFERENCE结构指示操作系统和平台扩展插件的首选项 (PEP) 有关是否应将指定的处理器停在一起以减少能耗。
PEP_PROCESSOR_PARK_STATE

了解PEP_PROCESSOR_PARK_STATE结构如何描述单个处理器的停车状态。
PEP_PROCESSOR_PARK_STATE

PEP_PROCESSOR_PARK_STATE结构描述单个处理器的停车状态。
PEP_PROCESSOR_PERF_STATE

了解如何在PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用此方法。 此结构描述单个性能状态的属性。  .
PEP_PROCESSOR_PERF_STATE

在PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用。 此结构描述单个性能状态的属性。  .
PEP_QUERY_COMPONENT_PERF_CAPABILITIES

了解PEP_QUERY_COMPONENT_PERF_CAPABILITIES结构如何指定为组件定义的 (P 状态) 集的性能状态数。
PEP_QUERY_COMPONENT_PERF_CAPABILITIES

PEP_QUERY_COMPONENT_PERF_CAPABILITIES结构指定为组件定义的 (P 状态) 集的性能状态数。
PEP_QUERY_COMPONENT_PERF_SET

了解PEP_QUERY_COMPONENT_PERF_SET结构如何包含有关组件 (P 状态集) 一组性能状态值的查询信息。
PEP_QUERY_COMPONENT_PERF_SET

PEP_QUERY_COMPONENT_PERF_SET结构包含有关组件 (P 状态集) 一组性能状态值的查询信息。
PEP_QUERY_COMPONENT_PERF_SET_NAME

了解PEP_QUERY_COMPONENT_PERF_SET_NAME结构如何包含有关组件一组性能状态值 (P 状态集) 的查询信息。
PEP_QUERY_COMPONENT_PERF_SET_NAME

PEP_QUERY_COMPONENT_PERF_SET_NAME结构包含有关组件 (P 状态集) 一组性能状态值的查询信息。
PEP_QUERY_COMPONENT_PERF_STATES

了解PEP_QUERY_COMPONENT_PERF_STATES结构如何包含指定 P 状态集 (P 状态) 值的离散性能状态列表。
PEP_QUERY_COMPONENT_PERF_STATES

PEP_QUERY_COMPONENT_PERF_STATES结构包含指定 P 状态集 (P 状态) 值的离散性能状态列表。
PEP_QUERY_CURRENT_COMPONENT_PERF_STATE

了解PEP_QUERY_CURRENT_COMPONENT_PERF_STATE结构如何包含有关指定 P 状态集中当前 P 状态的信息。
PEP_QUERY_CURRENT_COMPONENT_PERF_STATE

PEP_QUERY_CURRENT_COMPONENT_PERF_STATE结构包含有关指定 P 状态集中当前 P 状态的信息。
PEP_QUERY_SOC_SUBSYSTEM

了解PEP_DPM_QUERY_SOC_SUBSYSTEM通知如何使用PEP_QUERY_SOC_SUBSYSTEM结构收集有关芯片上特定系统的基本信息, (SoC) 子系统。
PEP_QUERY_SOC_SUBSYSTEM

PEP_DPM_QUERY_SOC_SUBSYSTEM通知使用PEP_QUERY_SOC_SUBSYSTEM结构收集有关芯片 (SoC) 子系统上特定系统的基本信息。
PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME

PEP_DPM_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME通知使用PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME结构 (pep_x.h) ,收集有关芯片上特定系统的阻塞持续时间的详细信息, (SoC) 子系统。
PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME

PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME PEP_DPM_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME通知使用 pepfx.h) (结构来收集有关芯片上特定系统的阻塞持续时间的详细信息, (SoC) 子系统。
PEP_QUERY_SOC_SUBSYSTEM_COUNT

了解PEP_QUERY_SOC_SUBSYSTEM_COUNT结构如何用于告知 OS PEP 是否支持芯片上的系统, (SoC) 子系统考虑给定平台空闲状态。
PEP_QUERY_SOC_SUBSYSTEM_COUNT

PEP_QUERY_SOC_SUBSYSTEM_COUNT结构用于告知 OS PEP 是否支持芯片上的系统, (SoC) 子系统,该子系统考虑给定平台空闲状态。
PEP_QUERY_SOC_SUBSYSTEM_METADATA

了解PEP_QUERY_SOC_SUBSYSTEM_METADATA结构如何与PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知一起使用,以收集有关芯片 (SoC) 子系统上系统(其阻塞时间刚刚被查询)的可选元数据。
PEP_QUERY_SOC_SUBSYSTEM_METADATA

PEP_QUERY_SOC_SUBSYSTEM_METADATA结构与PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知一起使用,用于在芯片 (SoC) 子系统上收集有关系统(其阻塞时间刚刚被查询)的可选元数据。
PEP_REGISTER_COMPONENT_PERF_STATES

了解PEP_REGISTER_COMPONENT_PERF_STATES结构如何描述指定组件 (P 状态) 的性能状态。
PEP_REGISTER_COMPONENT_PERF_STATES

PEP_REGISTER_COMPONENT_PERF_STATES结构描述指定组件 (P 状态) 的性能状态。
PEP_REGISTER_CRASHDUMP_DEVICE

了解PEP_REGISTER_CRASHDUMP_DEVICE结构如何提供回调例程来打开故障转储设备。
PEP_REGISTER_CRASHDUMP_DEVICE

PEP_REGISTER_CRASHDUMP_DEVICE结构提供回调例程来打开故障转储设备。
PEP_REGISTER_DEBUGGER

了解PEP_REGISTER_DEBUGGER结构如何标识注册的设备,该设备是提供调试器传输的核心系统资源。
PEP_REGISTER_DEBUGGER

PEP_REGISTER_DEBUGGER结构标识注册的设备,该设备是提供调试器传输的核心系统资源。
PEP_REGISTER_DEVICE_V2

了解PEP_REGISTER_DEVICE_V2结构如何描述驱动程序堆栈刚刚注册到 Windows 电源管理框架的设备, (PoFx) 。
PEP_REGISTER_DEVICE_V2

PEP_REGISTER_DEVICE_V2结构描述了驱动程序堆栈刚刚注册到 Windows 电源管理框架 (PoFx) 的设备。
PEP_REQUEST_COMPONENT_PERF_STATE

了解PEP_REQUEST_COMPONENT_PERF_STATE结构如何包含 Windows 电源管理框架 (PoFx) 请求的性能状态 (P 状态) 更改的列表,以及平台扩展插件 (PEP) 处理这些请求的状态信息。
PEP_REQUEST_COMPONENT_PERF_STATE

PEP_REQUEST_COMPONENT_PERF_STATE结构包含 Windows 电源管理框架 (PoFx) 请求的性能状态 (P 状态) 更改的列表,以及平台扩展插件 (PEP) 处理这些请求的状态信息。
PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING

了解如何将PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING结构作为PEP_DPM_RESET_SOC_SUBSYSTEM_ACCOUNTING通知的一部分提供给平台扩展插件 (PEP) 。
PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING

PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING结构作为PEP_DPM_RESET_SOC_SUBSYSTEM_ACCOUNTING通知的一部分提供给平台扩展插件 (PEP) 。
PEP_SOC_SUBSYSTEM_METADATA

了解PEP_SOC_SUBSYSTEM_METADATA结构如何包含芯片 (SoC) 子系统上的系统的元数据的键值对。 它在发送到平台扩展插件 (PEP) 的PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知的上下文中使用。
PEP_SOC_SUBSYSTEM_METADATA

PEP_SOC_SUBSYSTEM_METADATA结构包含键值对,其中包含芯片上的系统元数据 (SoC) 子系统。 它在发送到平台扩展插件 (PEP) 的PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知的上下文中使用。
PEP_SYSTEM_LATENCY

了解PEP_SYSTEM_LATENCY结构如何指定系统延迟容错的新值。
PEP_SYSTEM_LATENCY

PEP_SYSTEM_LATENCY结构指定系统延迟容错的新值。
PEP_UNMASKED_INTERRUPT_FLAGS

了解PEP_UNMASKED_INTERRUPT_FLAGS联合如何指示未屏蔽的中断源是主要中断还是辅助中断。
PEP_UNMASKED_INTERRUPT_FLAGS

PEP_UNMASKED_INTERRUPT_FLAGS联合指示未屏蔽的中断源是主要中断还是辅助中断。
PEP_UNMASKED_INTERRUPT_INFORMATION

了解PEP_UNMASKED_INTERRUPT_INFORMATION结构如何包含有关中断源的信息。
PEP_UNMASKED_INTERRUPT_INFORMATION

PEP_UNMASKED_INTERRUPT_INFORMATION结构包含有关中断源的信息。
PEP_UNREGISTER_DEVICE

了解PEP_UNREGISTER_DEVICE结构如何标识从 Windows 电源管理框架中删除其注册的设备, (PoFx) 。
PEP_UNREGISTER_DEVICE

PEP_UNREGISTER_DEVICE结构标识从 Windows 电源管理框架中删除注册的设备, (PoFx) 。
PEP_WORK

了解PEP_WORK结构如何指示 PEP 是否具有提交到 Windows 电源管理框架的工作请求, (PoFx) 。
PEP_WORK

PEP_WORK结构指示 PEP 是否具有提交到 Windows 电源管理框架的工作请求, (PoFx) 。
PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE

了解PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE结构如何包含由平台扩展插件 (PEP) 异步评估的 ACPI 控制方法的结果。
PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE

PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE结构包含由平台扩展插件 (PEP) 异步评估的 ACPI 控制方法的结果。
PEP_WORK_ACPI_NOTIFY

了解PEP_WORK_ACPI_NOTIFY结构如何包含已生成硬件事件的设备的 ACPI 通知代码。
PEP_WORK_ACPI_NOTIFY

PEP_WORK_ACPI_NOTIFY结构包含已生成硬件事件的设备的 ACPI 通知代码。
PEP_WORK_ACTIVE_COMPLETE

PEP_WORK_ACTIVE_COMPLETE结构标识当前处于活动状态的组件。
PEP_WORK_COMPLETE_IDLE_STATE

了解PEP_WORK_COMPLETE_IDLE_STATE结构如何标识平台扩展插件 (PEP) 已准备好过渡到新的 Fx 电源状态的组件。
PEP_WORK_COMPLETE_IDLE_STATE

PEP_WORK_COMPLETE_IDLE_STATE结构标识平台扩展插件 (PEP) 已准备好转换为新的 Fx 电源状态的组件。
PEP_WORK_COMPLETE_PERF_STATE

了解PEP_WORK_COMPLETE_PERF_STATE结构如何描述以前请求更新的完成状态,这些更新分配给性能状态列表的性能值 (P 状态) 集。
PEP_WORK_COMPLETE_PERF_STATE

PEP_WORK_COMPLETE_PERF_STATE结构描述以前请求更新到分配给性能状态列表的性能值 (P 状态) 集的完成状态。
PEP_WORK_DEVICE_IDLE

PEP_WORK_DEVICE_IDLE结构指示是否忽略指定设备的空闲超时。
PEP_WORK_DEVICE_POWER

PEP_WORK_DEVICE_POWER结构描述了指定设备的新电源要求。
PEP_WORK_IDLE_STATE

PEP_WORK_IDLE_STATE结构包含将组件转换为 Fx 电源状态的请求。
PEP_WORK_INFORMATION

了解PEP_WORK_INFORMATION结构如何描述 PEP 提交到 Windows 电源管理框架 (PoFx) 的工作项。
PEP_WORK_INFORMATION

PEP_WORK_INFORMATION结构描述了 PEP 提交到 Windows 电源管理框架 (PoFx) 的工作项。
PEP_WORK_POWER_CONTROL

了解PEP_WORK_POWER_CONTROL结构如何包含平台扩展插件 (PEP) 直接发送到处理器驱动程序的电源控制请求的参数。
PEP_WORK_POWER_CONTROL

PEP_WORK_POWER_CONTROL结构包含电源控制请求的参数,平台扩展插件 (PEP) 直接发送到处理器驱动程序。
PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION

PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION结构描述平台上事件缓冲区的配置。
PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR

PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构描述平台上可用的计数器资源。
PHYSICAL_COUNTER_RESOURCE_LIST

PHYSICAL_COUNTER_RESOURCE_LIST结构描述PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构的数组。
PLUGPLAY_NOTIFICATION_HEADER

每个 PnP 通知结构的开头包括PLUGPLAY_NOTIFICATION_HEADER结构,例如DEVICE_INTERFACE_CHANGE_NOTIFICATION结构。
PNP_BUS_INFORMATION

PNP_BUS_INFORMATION结构描述总线。
PNP_LOCATION_INTERFACE

PNP_LOCATION_INTERFACE结构描述GUID_PNP_LOCATION_INTERFACE接口。
PO_FX_COMPONENT_IDLE_STATE

PO_FX_COMPONENT_IDLE_STATE结构指定设备中组件的 Fx 电源状态的属性。
PO_FX_COMPONENT_PERF_INFO

PO_FX_COMPONENT_PERF_INFO结构描述了设备中单个组件的所有性能状态集。
PO_FX_COMPONENT_PERF_SET

PO_FX_COMPONENT_PERF_SET结构表示设备中单个组件的性能状态集。
PO_FX_COMPONENT_V1

PO_FX_COMPONENT结构描述设备中组件的电源状态属性。
PO_FX_COMPONENT_V2

了解PO_FX_COMPONENT结构如何描述设备中组件的电源状态属性。
PO_FX_CORE_DEVICE

了解PO_FX_CORE_DEVICE结构如何包含有关核心系统资源中组件电源状态属性的信息,并提供用于管理这些组件的软件接口。
PO_FX_CORE_DEVICE

PO_FX_CORE_DEVICE结构包含有关核心系统资源中组件电源状态属性的信息,并提供用于管理这些组件的软件接口。
PO_FX_DEVICE_V1

PO_FX_DEVICE结构描述设备电源管理框架的电源属性, (PoFx) 。
PO_FX_DEVICE_V2

了解PO_FX_DEVICE结构如何描述设备的电源属性到电源管理框架 (PoFx) 。
PO_FX_DEVICE_V3

详细了解:PO_FX_DEVICE_V3结构
PO_FX_PERF_STATE

PO_FX_PERF_STATE结构表示设备中单个组件的性能状态。
PO_FX_PERF_STATE_CHANGE

PO_FX_PERF_STATE_CHANGE结构包含有关通过调用 PoFxIssueComponentPerfStateChange 或 PoFxIssueComponentPerfStateChangeMultiple 例程请求的性能状态更改的信息。
PO_SPR_ACTIVE_SESSION_DATA

允许驱动程序注册/注销 SPR 活动会话启动和结束通知。
POOL_CREATE_EXTENDED_PARAMS

定义POOL_CREATE_EXTENDED_PARAMS结构。
POOL_EXTENDED_PARAMETER

详细了解:POOL_EXTENDED_PARAMETER
POOL_EXTENDED_PARAMS_SECURE_POOL

定义POOL_EXTENDED_PARAMS_SECURE_POOL结构。
POWER_PLATFORM_INFORMATION

POWER_PLATFORM_INFORMATION结构包含有关系统电源功能的信息。
POWER_PLATFORM_INFORMATION

了解POWER_PLATFORM_INFORMATION结构如何包含有关系统电源功能的信息。
POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES

详细了解POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES
POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES

详细了解:wdm.) h (POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES结构
POWER_STATE

POWER_STATE联合指定系统电源状态值或设备电源状态值。
POWER_STATE

了解POWER_STATE联合如何指定系统电源状态值或设备电源状态值。
POWER_THROTTLING_PROCESS_STATE

存储限制策略,以及如何在进程受电源管理约束时将其应用于目标进程。
POWER_THROTTLING_THREAD_STATE

存储限制策略,以及如何在该线程受电源管理约束时将其应用到目标线程。
PRIVILEGE_SET

PRIVILEGE_SET结构指定一组安全特权。 有关详细信息,请参阅Microsoft Windows SDK文档中PRIVILEGE_SET的参考页。
PROCESS_MEMBERSHIP_INFORMATION

本主题介绍PROCESS_MEMBERSHIP_INFORMATION结构。
PROCESS_MITIGATION_CHILD_PROCESS_POLICY

存储有关创建子进程的策略信息。
PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY

存储有关进程缓解策略的信息。
PROCESS_MITIGATION_SEHOP_POLICY

描述PROCESS_MITIGATION_SEHOP_POLICY结构。
PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY

不支持此结构。
PROCESS_MITIGATION_USER_POINTER_AUTH_POLICY

本主题介绍PROCESS_MITIGATION_USER_POINTER_AUTH_POLICY结构。
PROCESS_SYSCALL_PROVIDER_INFORMATION

描述PROCESS_SYSCALL_PROVIDER_INFORMATION结构。
PROCESSOR_NUMBER

_PROCESSOR_NUMBER结构 (miniport.h) 按其组号和组相对处理器编号标识处理器。
PS_CREATE_NOTIFY_INFO

PS_CREATE_NOTIFY_INFO结构提供有关新创建的流程的信息。
PTM_CONTROL_INTERFACE

保留为PTM_CONTROL_INTERFACE。 请勿使用。
REENUMERATE_SELF_INTERFACE_STANDARD

REENUMERATE_SELF_INTERFACE_STANDARD接口结构使驱动程序能够请求其父总线驱动程序恢复驱动程序的设备。 此结构定义GUID_REENUMERATE_SELF_INTERFACE_STANDARD接口。
REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION

REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION结构包含驱动程序的 RegistryCallback 例程可用于释放驱动程序以前为与注册表对象关联的上下文分配的资源的信息。
REG_CREATE_KEY_INFORMATION

REG_CREATE_KEY_INFORMATION结构包含驱动程序的 RegistryCallback 例程在创建注册表项时可以使用的信息。
REG_CREATE_KEY_INFORMATION_V1

REG_CREATE_KEY_INFORMATION_V1结构包含筛选器驱动程序的 RegistryCallback 例程在创建注册表项时可以使用的信息。
REG_DELETE_KEY_INFORMATION

REG_DELETE_KEY_INFORMATION结构包含驱动程序的 RegistryCallback 例程在删除注册表项时可以使用的信息。
REG_DELETE_VALUE_KEY_INFORMATION

REG_DELETE_VALUE_KEY_INFORMATION结构包含驱动程序的 RegistryCallback 例程在删除注册表项值时可以使用的信息。
REG_ENUMERATE_KEY_INFORMATION

REG_ENUMERATE_KEY_INFORMATION结构描述了要枚举其子项的键的一个子项。
REG_ENUMERATE_VALUE_KEY_INFORMATION

REG_ENUMERATE_VALUE_KEY_INFORMATION结构描述了要枚举其值项的键的一个值项。
REG_KEY_HANDLE_CLOSE_INFORMATION

REG_KEY_HANDLE_CLOSE_INFORMATION结构包含有关其句柄即将关闭的注册表项的信息。
REG_LOAD_KEY_INFORMATION

REG_LOAD_KEY_INFORMATION结构包含有关正在加载的注册表配置单元的信息。
REG_LOAD_KEY_INFORMATION_V2

REG_LOAD_KEY_INFORMATION_V2结构包含有关正在加载的注册表配置单元的信息。
REG_POST_CREATE_KEY_INFORMATION

REG_POST_CREATE_KEY_INFORMATION结构包含尝试创建注册表项的结果。
REG_POST_OPERATION_INFORMATION

REG_POST_OPERATION_INFORMATION结构包含有关 RegistryCallback 例程可以使用的已完成注册表操作的信息。
REG_PRE_CREATE_KEY_INFORMATION

REG_PRE_OPEN_KEY_INFORMATION结构包含即将打开的注册表项的名称。
REG_QUERY_KEY_INFORMATION

REG_QUERY_KEY_INFORMATION结构描述要查询密钥的元数据。
REG_QUERY_KEY_NAME

REG_QUERY_KEY_NAME结构描述正在查询的对象的完整注册表项名称。
REG_QUERY_KEY_SECURITY_INFORMATION

REG_QUERY_KEY_SECURITY_INFORMATION结构接收注册表项对象的安全信息。
REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION

REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION结构描述正在为键检索的多个值条目。
REG_QUERY_VALUE_KEY_INFORMATION

REG_QUERY_VALUE_KEY_INFORMATION结构包含有关正在查询的注册表项的值项的信息。
REG_RENAME_KEY_INFORMATION

REG_RENAME_KEY_INFORMATION结构包含即将更改其名称的注册表项的新名称。
REG_REPLACE_KEY_INFORMATION

REG_REPLACE_KEY_INFORMATION结构描述要替换密钥的元数据。
REG_RESTORE_KEY_INFORMATION

REG_RESTORE_KEY_INFORMATION结构包含即将还原的注册表项的信息。
REG_SAVE_KEY_INFORMATION

REG_SAVE_KEY_INFORMATION结构包含即将保存的注册表项的信息。
REG_SAVE_MERGED_KEY_INFORMATION

定义REG_SAVE_MERGED_KEY_INFORMATION结构。
REG_SET_INFORMATION_KEY_INFORMATION

REG_SET_INFORMATION_KEY_INFORMATION结构描述了密钥元数据的新设置。
REG_SET_KEY_SECURITY_INFORMATION

REG_SET_KEY_SECURITY_INFORMATION结构指定注册表项对象的安全信息。
REG_SET_VALUE_KEY_INFORMATION

REG_SET_VALUE_INFORMATION结构描述注册表项值项的新设置。
REG_UNLOAD_KEY_INFORMATION

REG_UNLOAD_KEY_INFORMATION结构包含驱动程序的 RegistryCallback 例程在卸载注册表配置单元时可以使用的信息。
RESOURCEMANAGER_BASIC_INFORMATION

RESOURCEMANAGER_BASIC INFORMATION 结构包含有关资源管理器对象的信息。
RESOURCEMANAGER_COMPLETION_INFORMATION

不使用RESOURCEMANAGER_COMPLETION_INFORMATION结构。
SCATTER_GATHER_LIST

SCATTER_GATHER_LIST结构描述 DMA 操作的散点/收集列表。
SDEV_IDENTIFIER_INTERFACE

此占位符主题作为可能包含在更高版本中的文档示例提供。 此材料尚不可用。
SECTION_OBJECT_POINTERS

SECTION_OBJECT_POINTERS结构由文件系统或重定向程序驱动程序分配,由内存管理器和缓存管理器用于存储文件流的文件映射和缓存相关信息。
SET_POWER_SETTING_VALUE

本主题介绍SET_POWER_SETTING_VALUE结构。
SIGNAL_REG_VALUE

本主题介绍SIGNAL_REG_VALUE结构。
SILO_MONITOR_REGISTRATION

此结构指定一个服务器接收器监视器,该监视器可以接收有关服务器接收器事件的通知。
SLIST_ENTRY

SLIST_ENTRY结构描述序列链接列表中的条目。
SYSENV_VALUE

使用 SysEnv 设备存储系统环境变量的值。 此结构用于IOCTL_SYSENV_GET_VARIABLE请求。
SYSENV_VARIABLE

使用 SysEnv 设备存储系统环境变量的名称。 此结构用于IOCTL_SYSENV_GET_VARIABLE请求。
SYSENV_VARIABLE_INFO

使用 SysEnv 设备存储有关系统环境变量的信息。 此结构用于IOCTL_SYSENV_QUERY_VARIABLE_INFO请求。
SYSTEM_POOL_ZEROING_INFORMATION

Microsoft 保留SYSTEM_POOL_ZEROING_INFORMATION结构以供内部使用。 请勿在代码中使用此结构。
SYSTEM_POWER_STATE_CONTEXT

SYSTEM_POWER_STATE_CONTEXT结构是一个部分不透明的系统结构,包含有关计算机以前的系统电源状态的信息。
SYSTEM_POWER_STATE_CONTEXT

了解SYSTEM_POWER_STATE_CONTEXT结构是一个部分不透明的系统结构,其中包含有关计算机以前的系统电源状态的信息。
TARGET_DEVICE_CUSTOM_NOTIFICATION

TARGET_DEVICE_CUSTOM_NOTIFICATION结构描述自定义设备事件。
TARGET_DEVICE_REMOVAL_NOTIFICATION

TARGET_DEVICE_REMOVAL_NOTIFICATION结构描述设备删除事件。 PnP 管理器将此结构发送到注册了用于通知 EventCategoryTargetDeviceChange 事件的回调例程的驱动程序。
TIME_FIELDS

TIME_FIELDS结构描述时间转换例程的时间信息。
TRANSACTION_BASIC_INFORMATION

TRANSACTION_BASIC_INFORMATION结构包含有关事务对象的信息。
TRANSACTION_ENLISTMENT_PAIR

TRANSACTION_ENLISTMENT_PAIR结构包含有关与事务对象关联的登记的信息。
TRANSACTION_ENLISTMENTS_INFORMATION

TRANSACTION_ENLISTMENTS_INFORMATION结构包含与事务对象关联的登记信息。
TRANSACTION_PROPERTIES_INFORMATION

TRANSACTION_PROPERTIES_INFORMATION结构包含事务对象的属性。
TRANSACTIONMANAGER_BASIC_INFORMATION

TRANSACTIONMANAGER_BASIC_INFORMATION结构包含有关事务管理器对象的信息。
TRANSACTIONMANAGER_LOG_INFORMATION

TRANSACTIONMANAGER_LOG_INFORMATION结构包含有关事务管理器对象的信息。
TRANSACTIONMANAGER_LOGPATH_INFORMATION

TRANSACTIONMANAGER_LOGPATH_INFORMATION结构包含有关事务管理器对象的信息。
TRANSACTIONMANAGER_RECOVERY_INFORMATION

TRANSACTIONMANAGER_RECOVERY_INFORMATION结构包含有关事务管理器对象的信息。
WAIT_CONTEXT_BLOCK

保留WAIT_CONTEXT_BLOCK。 请勿使用。
WHEA_ACPI_HEADER

本主题介绍WHEA_ACPI_HEADER结构。
WHEA_ERROR_SOURCE_OVERRIDE_SETTINGS

本主题介绍WHEA_ERROR_SOURCE_OVERRIDE_SETTINGS结构。
WHEA_FAILED_ADD_DEFECT_LIST_EVENT

本主题介绍WHEA_FAILED_ADD_DEFECT_LIST_EVENT结构。
WHEA_PCI_RECOVERY_SECTION

描述WHEA_PCI_RECOVERY_SECTION结构。
WHEA_PSHED_PI_CPU_BUSES_INIT_FAILED_EVENT

本主题介绍WHEA_PSHED_PI_CPU_BUSES_INIT_FAILED_EVENT结构。
WHEA_PSHED_PLUGIN_INIT_FAILED_EVENT

本主题介绍WHEA_PSHED_PLUGIN_INIT_FAILED_EVENT结构。
WHEA_SEA_SECTION

本主题介绍WHEA_SEA_SECTION结构。
WHEA_SEI_SECTION

本主题介绍WHEA_SEI_SECTION结构。
WHEA_SRAS_TABLE_ENTRIES_EVENT

本主题介绍WHEA_SRAS_TABLE_ENTRIES_EVENT结构。
WHEA_SRAS_TABLE_ERROR

本主题介绍WHEA_SRAS_TABLE_ERROR结构。
WHEA_SRAS_TABLE_NOT_FOUND

本主题介绍WHEA_SRAS_TABLE_NOT_FOUND结构。
WHEAP_BAD_HEST_NOTIFY_DATA_EVENT

本主题介绍WHEAP_BAD_HEST_NOTIFY_DATA_EVENT结构。
WHEAP_DPC_ERROR_EVENT

本主题介绍WHEAP_DPC_ERROR_EVENT结构。
WHEAP_PLUGIN_DEFECT_LIST_CORRUPT

本主题介绍WHEAP_PLUGIN_DEFECT_LIST_CORRUPT结构。
WHEAP_PLUGIN_DEFECT_LIST_FULL_EVENT

本主题介绍WHEAP_PLUGIN_DEFECT_LIST_FULL_EVENT结构。
WHEAP_PLUGIN_DEFECT_LIST_UEFI_VAR_FAILED

本主题介绍WHEAP_PLUGIN_DEFECT_LIST_UEFI_VAR_FAILED结构。
WHEAP_ROW_FAILURE_EVENT

本主题介绍WHEAP_ROW_FAILURE_EVENT结构。
WMIGUIDREGINFO

WMIGUIDREGINFO 结构包含由使用 WMI 库支持例程的驱动程序公开的给定数据块或事件块的注册信息。
WMILIB_CONTEXT

WMILIB_CONTEXT结构为驱动程序的数据块和事件块提供注册信息,并为驱动程序的 WMI 库回调例程定义入口点。
WMIREGGUIDW

WMIREGGUID 结构包含数据块或事件块的新注册信息或更新信息。
WMIREGINFOW

WMIREGINFO 结构包含驱动程序提供的信息,用于注册或更新其数据块和事件块。
WNODE_ALL_DATA

WNODE_ALL_DATA结构包含数据块或事件块的所有实例的数据。
WNODE_EVENT_ITEM

WNODE_EVENT_ITEM结构包含由事件驱动程序生成的数据。
WNODE_EVENT_REFERENCE

WNODE_EVENT_REFERENCE结构包含 WMI 可用于查询超出注册表中设置的事件大小限制的事件的信息。
WNODE_HEADER

WNODE_HEADER结构是所有其他WNODE_XXX结构的第一个成员。 它包含所有此类结构通用的信息。
WNODE_METHOD_ITEM

WNODE_METHOD_ITEM结构指示与数据块实例关联的方法,并包含该方法的任何输入数据。
WNODE_SINGLE_INSTANCE

WNODE_SINGLE_INSTANCE结构包含数据块的一个实例中的所有数据项的值。
WNODE_SINGLE_ITEM

WNODE_SINGLE_ITEM结构包含数据块实例中单个数据项的值。
WNODE_TOO_SMALL

WNODE_TOO_SMALL结构指示接收请求输出所需的缓冲区大小。
XSAVE_CET_U_FORMAT

CET_U XSTATE 组件的格式。
XVARIABLE_NAME

使用 SysEnv 设备存储系统环境变量的名称。 此结构用于IOCTL_SYSENV_ENUM_VARIABLES请求。
XVARIABLE_NAME_AND_VALUE

使用 SysEnv 设备存储系统环境变量的名称和值。 此结构用于IOCTL_SYSENV_ENUM_VARIABLES和IOCTL_SYSENV_SET_VARIABLE请求。