内核

标准驱动程序例程必须由驱动程序实现。 驱动程序支持例程是 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 例程调用的内核模式支持例程。

的例程... 例程所返回的值
获取并报告有关驱动程序设备和当前平台的硬件配置信息。 IoGetDevicePropertyIoReportDetectedDeviceIoReportResourceForDetectionIoGetDmaAdapterIoGetConfigurationInformationHalExamineMBRIoReadPartitionTableIoInvalidateDeviceRelationsIoInvalidateDeviceStateIoRegisterPlugPlayNotificationIoRequestDeviceEjectIoReportTargetDeviceChange
获取和报告配置信息,以及用于在注册表中注册接口。 IoGetDevicePropertyIoOpenDeviceInterfaceRegistryKeyIoOpenDeviceRegistryKeyIoRegisterDeviceInterfaceIoSetDeviceInterfaceStateRtlCheckRegistryKeyRtlCreateRegistryKeyRtlQueryRegistryValuesRtlWriteRegistryValueRtlDeleteRegistryValueInitializeObjectAttributesZwCreateKeyZwOpenKeyZwQueryKeyZwEnumerateKeyZwEnumerateValueKeyZwQueryValueKeyZwSetValueKeyZwFlushKeyZwDeleteKeyZwClose
设置和释放驱动程序可能使用的对象和资源。 IoCreateDeviceIoDeleteDeviceIoGetDeviceObjectPointerIoAttachDeviceToDeviceStackIoGetAttachedDeviceReferenceIoDetachDeviceIoAllocateDriverObjectExtensionIoGetDriverObjectExtensionIoRegisterDeviceInterfaceIoIsWdmVersionAvailableIoDeleteSymbolicLinkIoAssignArcNameIoDeassignArcNameIoSetShareAccessIoConnectInterruptIoDisconnectInterruptIoConnectInterruptExIoDisconnectInterruptExIoInitializeDpcRequestIoReadPartitionTableIoSetPartitionInformationIoWritePartitionTableIoCreateControllerIoDeleteControllerKeInitializeSpinLockKeInitializeDpcKeInitializeTimerKeInitializeTimerExrKeInitializeEventExInitializeFastMutexKeInitializeMutexKeInitializeSemaphoreIoCreateNotificationEventIoCreateSynchronizationEventPsCreateSystemThreadPsTerminateSystemThreadKeSetBasePriorityThreadKeSetPriorityThreadMmIsThisAnNtAsSystemMmQuerySystemSizeExInitializeNPagedLookasideListExInitializePagedLookasideListExInitializeResourceLiteExReinitializeResourceLiteExDeleteResourceLiteObReferenceObjectByHandleObReferenceObjectByPointerObReferenceObjectObDereferenceObjectRtlInitStringRtlInitAnsiStringRtlInitUnicodeStringInitializeObjectAttributesZwCreateDirectoryObjectZwCreateFileZwCreateKeyZwDeleteKeyZwMakeTemporaryObjectZwClosePsGetVersionObGetObjectSecurityObReleaseObjectSecurity
初始化驱动程序管理的内部队列。 KeInitializeSpinLock,InitializeListHead,ExInitializeSListHead,KeInitializeDeviceQueue,IoCsqInitialize

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

  • 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 设置 OBJECT_ATTRIBUTES 类型的参数,以便后续调用 ZwCreateXxx 或 ZwOpenXxx 例程。
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 将事件对象初始化为同步 (单个服务员) 或通知 (多个服务员) 类型事件,并设置其初始状态 (信号或未发出信号) 。
ExInitializeFastMutex 初始化一个快速互斥变量,该变量用于同步一组线程对共享资源的互斥访问。
KeInitializeMutex 初始化设置为“已信号”状态的互斥对象。
KeInitializeSemaphore 将信号灯对象初始化为给定计数,并指定计数的上限。
IoCreateNotificationEvent 初始化一个命名通知事件,以用于在两个或多个组件之间同步访问。 通知事件不会自动重置。
IoCreateSynchronizationEvent 初始化一个命名同步事件,以用于序列化对两个其他不相关的驱动程序之间的硬件访问。
PsCreateSystemThread 创建与给定进程对象或默认系统进程关联的内核模式线程。 返回线程的句柄。
PsTerminateSystemThread 终止当前线程,并满足当前线程对象的尽可能多的等待。
KeSetBasePriorityThread 为驱动程序创建的线程设置相对于系统进程的运行时优先级。
KeSetPriorityThread 使用实时优先级属性为驱动程序创建的线程设置运行时优先级。
MmIsThisAnNtAsSystem 如果当前平台是服务器,则返回 TRUE,指示处理 I/O 请求所需的资源可能多于计算机是客户端的资源。
MmQuerySystemSize 返回当前平台上可用内存量的估计值 (小、中或大) 。
ExInitializeNPagedLookasideList 初始化非分页内存的旁观列表。 成功初始化后,可以从旁视列表中分配和释放固定大小的块。
ExInitializePagedLookasideList 初始化分页内存的旁观列表。 成功初始化后,可以从旁视列表中分配和释放固定大小的块。
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 返回的安全描述符。

初始化驱动程序管理的队列

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

函数 说明
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 标记为导致系统从睡眠状态唤醒的 IRP。
PoStartDeviceBusy PoStartDeviceBusy 例程标记设备繁忙时段的开始时间。
PoStartNextPowerIrp PoStartNextPowerIrp 例程向电源管理器表明驱动程序已准备好处理下一个电源 IRP。 仅 (Windows Server 2003、Windows XP 和 Windows 2000。)
PoUnregisterPowerSettingCallback PoUnregisterPowerSettingCallback 例程取消注册驱动程序之前通过调用 PoRegisterPowerSettingCallback 例程注册的电源设置回调例程。
PoUnregisterSystemState PoUnregisterSystemState 例程取消 PoRegisterSystemState 创建的系统状态注册。

设备电源管理

从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 运行时方法。

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

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 电源管理框架 (PoFx) 的处理器电源管理 (PPM) 通知。
PO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK EnumerateInterruptSource 回调例程提供平台扩展插件 (PEP) ,其中包含有关中断源的信息。
PROCESSOR_HALT_ROUTINE Halt 回调例程将处理器转换为空闲状态。
PowerOnDumpDeviceCallback PowerOnDumpDeviceCallback 回调例程会打开故障转储设备。

电源管理框架 (PoFx) 例程

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

初始化函数 说明
PoFxRegisterPlugin PoFxRegisterPlugin 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。
PoFxRegisterPluginEx PoFxRegisterPluginEx 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。
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) 提供的例程、结构和枚举。

事务管理器对象例程

本节包括下列主题:

  • 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 的可取消状态或从驱动程序的取消例程释放取消旋转锁时,释放取消旋转锁。
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。

驱动程序分配的 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 的较低驱动程序设备对象。 将包含要读取的数据或包含要写入的数据的缓冲区。 缓冲区的长度(以字节为单位)。 媒体上的起始偏移量。 在请求的操作完成时要设置为“已信号”状态的事件对象。 I/O 状态块,调用的驱动程序可以返回状态信息,调用方 IoCompletion 例程可以访问它。 返回指向 IRP 的指针,以便调用方可以设置任何必要的次要函数代码,并在将 IRP 发送到目标驱动程序之前设置其 IoCompletion 例程。
IoBuildDeviceIoControlRequest 分配和设置一个 IRP,指定 (具有可选输入或输出缓冲区IRP_MJ_INTERNAL_DEVICE_CONTROL或IRP_MJ_DEVICE_CONTROL) 的主要函数代码;指向较低驱动程序的设备对象的指针;在请求的操作完成时要设置为“已信号”状态的事件;以及要由接收 IRP 的驱动程序设置的 I/O 状态块。 返回指向 IRP 的指针,以便调用方可以在将 IRP 发送到下一个较低级别的驱动程序之前设置适当的IOCTL_XXX。
PoRequestPowerIrp 使用主函数代码IRP_MJ_POWER分配和初始化 IRP,然后将 IRP 发送到指定设备对象的设备堆栈中的顶级驱动程序。
IoSizeOfIrp 返回具有给定 I/O 堆栈位置计数的 IRP 所需的大小(以字节为单位)。
IoAllocateIrp 为调用方分配 i/O 堆栈位置数(可选 (),但至少为调用方) 下分层的每个驱动程序分配一个 IRP,以及是否向调用方收取配额。 如果成功,则返回指向非分页系统空间中的 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 释放已打开对象的句柄,导致句柄无效并递减对象句柄的引用计数。

Silo DDI

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

上下文管理

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

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

线程

这些 DDI 提供设置和检索当前线程的 silo 的功能。

  • PsAttachSiloToCurrentThread
  • PsDetachSiloFromCurrentThread
  • PsGetCurrentSilo
  • PsGetCurrentServerSilo

监视

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

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

帮助程序

这些 DDI 有助于处理 silo 对象。

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

同步

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

  • 将自己的标准驱动程序例程的执行同步 (驱动程序例程和 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 通道和任何必要的映射寄存器可用时,立即通过系统 DMA 控制器或总线主适配器执行 I/O 操作。 (此例程保留对指定设备的 DMA 通道和映射寄存器的独占访问权限。)
FreeAdapterChannel 释放表示系统 DMA 通道的适配器对象,并选择性地释放映射寄存器(如果已分配)。
FreeMapRegisters 在 IoMapTransfer 使用寄存器且总线主 DMA 传输完成之后,释放一组从调用 AllocateAdapterChannel 保存的映射寄存器。
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 设置计时器对象设置为“已信号”状态的绝对或相对间隔。 (可选)提供计时器 DPC,以便在间隔过期时执行,并提供计时器的重复间隔。
KeCancelTimer 在传递给 KeSetTimer 的时间间隔过期之前取消计时器对象。 如果有任何) 过期,在计时器间隔 (之前将计时器 DPC 取消排队。
KeReadStateTimer 如果给定的计时器对象设置为“已发出信号”状态,则返回 TRUE。
KeSetEvent 返回给定事件对象的先前状态,并将事件 ((如果尚未发出信号) )设置为“已发出信号”状态。
KeClearEvent 将事件重置为 Not-Signaled 状态。
KeResetEvent 返回事件对象的先前状态,并将事件重置为 Not-Signaled 状态。
KeReadStateEvent 返回给定事件对象的当前状态 (非零,对于“已发出信号”) 返回零。
ExAcquireFastMutex 获取初始化的快速互斥体(可能在将调用方置于等待状态后,直到获取它),并在禁用 APC 的情况下授予调用线程所有权。
ExTryToAcquireFastMutex 立即为禁用 APC 的调用方获取给定的快速互斥,或返回 FALSE。
ExReleaseFastMutex 释放通过 ExAcquireFastMutex 或 ExTryToAcquireFastMutex 获取的快速互斥锁的所有权。
ExAcquireFastMutexUnsafe 获取初始化的快速互斥体,可能在将调用方置于等待状态后,直到获取它。
ExReleaseFastMutexUnsafe 释放通过 ExAcquireFastMutexUnsafe 获取的快速互斥锁的所有权。
KeReleaseMutex 释放给定的互斥对象,指定调用方是否在 KeReleaseMutex 返回互斥状态的上一个值时调用 KeWaitXxx 例程之一, (Signaled 的零;否则为无信号) 。
KeReadStateMutex 返回当前状态 (给定互斥对象的“Signaled”或“未发出信号”) 的任何其他值。
KeReleaseSemaphore 释放给定信号灯对象。 如果发布将信号灯设置为“已信号”状态,则为等待线程提供 (运行时) 优先级提升。 按给定值增加信号灯计数,并指定调用方是否在 KeReleaseSemaphore 返回后立即调用 KeWaitXxx 例程之一。
KeReadStateSemaphore 返回给定信号灯对象的当前状态 (Not-Signaled 的零或信号) 的正值。
KeWaitForSingleObject 将当前线程置于可警报或不可更改的等待状态,直到给定调度程序对象设置为“已发出信号”状态或 (选择性地) ,直到等待超时。
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 驱动程序的内存管理

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

  • 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 从非分页内存中的指定查找列表中删除第一个条目。 如果旁观列表为空,则分配非分页池中的条目。
ExFreeToNPagedLookasideList 返回非分页内存中指定旁视列表的条目。 如果列表已达到其最大大小,则返回非分页池的条目。
ExDeleteNPagedLookasideList 删除非分页的查看列表。
ExInitializePagedLookasideList 初始化分页内存的旁观列表。 成功初始化列表后,可以从查看列表分配和释放固定大小的块。
ExAllocateFromPagedLookasideList 从分页内存中的指定查找列表中删除第一个条目。 如果旁观列表为空,则分配分页池中的条目。
ExFreeToPagedLookasideList 返回分页内存中指定查看列表的条目。 如果列表已达到其最大大小,则返回分页池的条目。
ExDeletePagedLookasideList 删除分页的旁观列表。
MmQuerySystemSize 返回当前平台上可用内存量的估计 (小型、中型或大型) 。
MmIsThisAnNtAsSystem 如果计算机作为服务器运行,则返回 TRUE。 如果此例程返回 TRUE,则调用方可能需要更多资源来处理 I/O 请求,并且计算机是服务器,因此它可能会有更多的资源可用。

长期内部驱动程序缓冲区

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

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

缓冲数据和缓冲区初始化

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

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

地址映射和 MDL

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

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

节和视图

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

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

物理内存

物理内存例程由内核模式驱动程序调用,以管理物理内存的区域。

函数 说明
MmAddPhysicalMemory 将指定的物理地址范围添加到系统。

访问结构

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

函数 说明
ARGUMENT_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 (WMI) 例程

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

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

处理驱动程序接收的 IRP (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 例程创建或打开 object-directory 对象。
ZwCreateEvent ZwCreateEvent 例程创建事件对象,将事件的初始状态设置为指定值,并打开具有指定所需访问权限的 对象的句柄。
ZwCreateFile ZwCreateFile 例程创建新文件或打开现有文件。
ZwCreateKey ZwCreateKey 例程创建新的注册表项或打开现有注册表项。
ZwCreateKeyTransacted ZwCreateKeyTransacted 例程创建新的注册表项或打开现有注册表项,并将该注册表项与事务关联。
ZwCreateSection ZwCreateSection 例程创建一个 section 对象。
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 例程提供有关注册表项的类及其子项的数量和大小的信息。
ZwQueryObject 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 例程将等待指定的对象达到信号状态。 还可以指定可选的超时。
ZwWriteFile ZwWriteFile 例程将数据写入打开的文件。

辅助内核模式库例程和结构

辅助 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 库包含在 WDK 的 Windows 7 版本中。 库函数在 Procgrp.h 头文件中声明,并在 Procgrp.lib 库文件中实现。

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

  • WdmlibProcgrpInitialize

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 返回一个系统空间虚拟地址,该地址映射设备必须使用 PIO 的驱动程序的给定 MDL 描述的物理页。 如果不存在虚拟地址,则分配一个。
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 注册的例程。

驱动程序管理的队列

函数 说明
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 在非分页池中设置受系统提供的旋转锁保护的旁观列表,驱动程序可以从该池中分配和释放固定大小的块。
KeInitializeDeviceQueue 将设备队列对象初始化为不忙状态,并设置关联的旋转锁,以便对设备队列条目进行多处理器安全访问。
KeInsertDeviceQueue 获取设备队列旋转锁,如果设备队列不为空,则对设备驱动程序的条目进行排队;否则,在设备队列的末尾插入条目。
KeInsertByKeyDeviceQueue 获取设备队列旋转锁,如果设备队列不为空,则对设备驱动程序的条目进行排队;否则,根据给定的排序键值将条目插入队列中。
KeRemoveDeviceQueue 从给定设备队列的头中删除条目。
KeRemoveByKeyDeviceQueue 从给定设备队列中删除根据指定的排序键值选择的条目。
KeRemoveEntryDeviceQueue 确定给定条目是否在给定设备队列中,如果是,则取消该条目排队。

驱动程序系统进程和线程

函数 说明
PsCreateSystemThread 创建与给定进程对象或默认系统进程关联的内核模式线程。 返回线程的句柄。
PsTerminateSystemThread 终止当前线程并满足当前线程对象的尽可能多的等待。
PsGetCurrentThread 返回当前线程的句柄。
KeGetCurrentThread 返回指向表示当前线程的不透明线程对象的指针。
KeQueryPriorityThread 返回给定线程的当前优先级。
KeSetBasePriorityThread 为驱动程序创建的线程设置相对于系统进程的运行时优先级。
KeSetPriorityThread 使用实时优先级属性为驱动程序创建的线程设置运行时优先级。
KeDelayExecutionThread 在给定的间隔内,将当前线程置于可警报或不可更改的等待状态。
IoQueueWorkItem 对初始化的工作队列项进行排队,以便在系统工作线程获得控制权时调用驱动程序提供的例程。
ZwSetInformationThread 设置调用方具有句柄的给定线程的优先级。
函数 说明
PsGetCurrentProcessId PsGetCurrentProcessId 例程标识当前线程的进程。
PsGetProcessCreateTimeQuadPart PsGetProcessCreateTimeQuadPart 例程返回一个 LONGLONG 值,该值表示创建进程的时间。
PsGetProcessId PsGetProcessId 例程返回与指定进程关联的进程标识符 (进程 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。

    • 可能会中断核心服务中的线程的任何阻止行为。

  • 处处考虑到适用于内核模式堆栈使用情况的最佳做法。 有关示例,请参阅如何防止驱动程序耗尽内核模式堆栈?和重要驱动程序概念和提示。

运行时库 (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 后缀版本。

  • 支持 1 字节 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 字符串表示形式转换为其等效的整数。

对驱动程序托管对象的访问

函数 说明
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

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

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

本主题介绍BUS_QUERY_ID_TYPE枚举。
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_TEXT_TYPE

本主题介绍DEVICE_TEXT_TYPE枚举。
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_APIC_DESTINATION_MODE

本主题介绍 ntddk.h) (HAL_APIC_DESTINATION_MODE 枚举。
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

wdm.h) 类型 (_IRQ_PRIORITY枚举指示系统应优先处理设备的中断。
KBUGCHECK_CALLBACK_REASON

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

KBUGCHECK_DUMP_IO_TYPE枚举类型标识故障转储文件中部分数据的类型。
KD_CALLBACK_ACTION

本主题介绍 ntddk.h) KD_CALLBACK_ACTION 枚举 (。
KD_NAMESPACE_ENUM

本主题介绍KD_NAMESPACE_ENUM枚举 (ntddk.h) 。
KE_PROCESSOR_CHANGE_NOTIFY_STATE

本主题介绍KE_PROCESSOR_CHANGE_NOTIFY_STATE枚举。
KEY_INFORMATION_CLASS

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

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

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

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

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

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

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

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

本主题介绍LATENCY_TIME枚举。
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

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

本主题介绍PCI_BUS_WIDTH枚举。
PCI_BUS_WIDTH

本主题介绍PCI_BUS_WIDTH枚举 (ntddk.h) 。
PCI_DEVICE_D3COLD_STATE_REASON

本主题介绍PCI_DEVICE_D3COLD_STATE_REASON枚举。
PCI_DEVICE_D3COLD_STATE_REASON

本主题介绍PCI_DEVICE_D3COLD_STATE_REASON枚举 (ntddk.h) 。
PCI_EXPRESS_ASPM_CONTROL

本主题介绍PCI_EXPRESS_ASPM_CONTROL枚举。
PCI_EXPRESS_ASPM_CONTROL

本主题介绍 ntddk.h) (PCI_EXPRESS_ASPM_CONTROL枚举。
PCI_EXPRESS_ASPM_SUPPORT

本主题介绍PCI_EXPRESS_ASPM_SUPPORT枚举。
PCI_EXPRESS_ASPM_SUPPORT

本主题介绍 ntddk.h) (PCI_EXPRESS_ASPM_SUPPORT 枚举。
PCI_EXPRESS_CARD_PRESENCE

本主题介绍PCI_EXPRESS_CARD_PRESENCE枚举。
PCI_EXPRESS_CARD_PRESENCE

本主题介绍PCI_EXPRESS_CARD_PRESENCE枚举 (ntddk.h) 。
PCI_EXPRESS_DEVICE_TYPE

本主题介绍PCI_EXPRESS_DEVICE_TYPE枚举。
PCI_EXPRESS_DEVICE_TYPE

本主题介绍PCI_EXPRESS_DEVICE_TYPE枚举 (ntddk.h) 。
PCI_EXPRESS_INDICATOR_STATE

本主题介绍PCI_EXPRESS_INDICATOR_STATE枚举。
PCI_EXPRESS_INDICATOR_STATE

本主题介绍PCI_EXPRESS_INDICATOR_STATE枚举 (ntddk.h) 。
PCI_EXPRESS_L0s_EXIT_LATENCY

本主题介绍PCI_EXPRESS_L0s_EXIT_LATENCY枚举。
PCI_EXPRESS_L0s_EXIT_LATENCY

本主题介绍PCI_EXPRESS_L0s_EXIT_LATENCY枚举 (ntddk.h) 。
PCI_EXPRESS_L1_EXIT_LATENCY

本主题介绍PCI_EXPRESS_L1_EXIT_LATENCY枚举。
PCI_EXPRESS_L1_EXIT_LATENCY

本主题介绍 ntddk.h) (PCI_EXPRESS_L1_EXIT_LATENCY枚举。
PCI_EXPRESS_LINK_SUBSTATE

本主题介绍PCI_EXPRESS_LINK_SUBSTATE枚举。
PCI_EXPRESS_LINK_SUBSTATE

本主题介绍 ntddk.h) (PCI_EXPRESS_LINK_SUBSTATE枚举。
PCI_EXPRESS_MAX_PAYLOAD_SIZE

本主题介绍 ntddk.h) (PCI_EXPRESS_MAX_PAYLOAD_SIZE枚举。
PCI_EXPRESS_MRL_STATE

本主题介绍PCI_EXPRESS_MRL_STATE枚举。
PCI_EXPRESS_MRL_STATE

本主题介绍PCI_EXPRESS_MRL_STATE枚举 (ntddk.h) 。
PCI_EXPRESS_POWER_STATE

本主题介绍PCI_EXPRESS_POWER_STATE枚举。
PCI_EXPRESS_POWER_STATE

本主题介绍PCI_EXPRESS_POWER_STATE枚举 (ntddk.h) 。
PCI_EXPRESS_RCB

本主题介绍PCI_EXPRESS_RCB枚举。
PCI_EXPRESS_RCB

本主题介绍PCI_EXPRESS_RCB枚举 (ntddk.h) 。
PCR_BTI_VBAR_INDEX

描述PCR_BTI_VBAR_INDEX枚举。
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

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

指示电源级别信息。
POWER_INFORMATION_LEVEL

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

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

本主题介绍POWER_MONITOR_REQUEST_REASON枚举。
POWER_MONITOR_REQUEST_TYPE

本主题介绍POWER_MONITOR_REQUEST_TYPE枚举。
POWER_REQUEST_TYPE

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

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

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

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

本主题介绍POWER_USER_PRESENCE_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_CONDITION

本主题介绍SYSTEM_POWER_CONDITION枚举。
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

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

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

当客户端请求来自空的 lookaside 列表的条目时,LookasideListAllocateEx 例程为新的 lookaside-list 条目分配存储。
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

介绍 barrierAfterRead~r1 函数 (wdm.h) 。
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

CmRegisterCallback 例程对于 Windows Vista 和更高版本的操作系统已过时。 请改用 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 例程负责 (FDO) 创建功能设备对象,或 (筛选即插即用 (PnP) 管理器枚举的设备) 筛选设备对象。
DRIVER_CANCEL

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

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

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

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

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

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

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

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

EtwSetInformation 提供用于修改内核模式 ETW 提供程序注册的特殊用途信息。
EX_CALLBACK_FUNCTION

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

详细了解 ExAcquireFastMutex 例程。
ExAcquireFastMutexUnsafe

详细了解 ExAcquireFastMutexUnsafe 例程。
ExAcquirePushLockExclusive

获取由调用线程进行独占访问的给定推送锁。
ExAcquirePushLockShared

获取由调用线程共享访问的给定推送锁。
ExAcquireResourceExclusiveLite

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

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

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

本主题介绍 ExAcquireRundownProtectionCacheAware 函数。
ExAcquireRundownProtectionCacheAwareEx

本主题介绍 ExAcquireRundownProtectionCacheAwareEx 函数。
ExAcquireRundownProtectionEx

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

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

如果可以授予共享访问权限且没有排他服务员,ExAcquireSharedWaitForExclusive 例程将获取给定资源用于共享访问。
ExAcquireSpinLockExclusive

ExAcquireSpinLockExclusive 例程获取由调用方进行独占访问的旋转锁,并将 IRQL 提升为DISPATCH_LEVEL。
ExAcquireSpinLockExclusiveAtDpcLevel

详细了解 ExAcquireSpinLockExclusiveAtDpcLevel 例程。
ExAcquireSpinLockShared

ExAcquireSpinLockShared 例程获取调用方共享访问的旋转锁,并将 IRQL 提升为DISPATCH_LEVEL。
ExAcquireSpinLockSharedAtDpcLevel

详细了解 ExAcquireSpinLockSharedAtDpcLevel 例程。
ExAllocateCacheAwareRundownProtection

本主题介绍 ExAllocateCacheAwareRundownProtection 函数。
ExAllocateFromLookasideListEx

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

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

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

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

详细了解:ExAllocatePool2
ExAllocatePool3

详细了解:ExAllocatePool3
ExAllocatePoolPriorityUninitialized

ExAllocatePoolPriorityUninitialized 分配指定类型的池内存。 此例程是 ExAllocatePoolWithTagPriority 的包装和替换选项。
ExAllocatePoolPriorityZero

详细了解:ExAllocatePoolPriorityZero
ExAllocatePoolQuotaUninitialized

ExAllocatePoolQuotaUninitialized 例程分配池内存,对当前进程收取配额。
ExAllocatePoolQuotaZero

详细了解:ExAllocatePoolQuotaZero
ExAllocatePoolUninitialized

此例程是 ExAllocatePoolWithTag 的包装和替换选项。
ExAllocatePoolWithQuota

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

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

已过时。 请改用 ExAllocatePool2。 ExAllocatePoolWithTag 例程分配指定类型的池内存,并返回指向已分配块的指针。
ExAllocatePoolWithTagPriority

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

详细了解:ExAllocatePoolZero
ExAllocateTimer

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

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

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

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

定义 ExCreatePool 函数。
ExDeleteLookasideListEx

ExDeleteLookasideListEx 例程删除旁观列表。
ExDeleteNPagedLookasideList

ExDeleteNPagedLookasideList 例程销毁非分页的查看列表。
ExDeletePagedLookasideList

ExDeletePagedLookasideList 例程销毁分页的查看列表。
ExDeleteResourceLite

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

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

定义 ExDestroyPool 函数。
ExEnterCriticalRegionAndAcquireResourceExclusive

详细了解 ExEnterCriticalRegionAndAcquireResourceExclusive 例程。
ExFlushLookasideListEx

ExFlushLookasideListEx 例程刷新指定旁视列表中的所有条目,并为每个条目释放分配的存储。
ExFreeCacheAwareRundownProtection

本主题介绍 ExFreeCacheAwareRundownProtection 函数。
ExFreePool

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

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

定义 ExFreePool2 函数。
ExFreePoolWithTag

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

ExFreeToLookasideListEx 例程将条目插入到查看列表中,或者,如果该列表已满,则释放为该条目分配的存储。
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 例程初始化查看列表。
ExInitializeNPagedLookasideList

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

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

初始化推送锁变量。
ExInitializeResourceLite

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

ExInitializeRundownProtection 例程初始化共享对象上的断开保护。
ExInitializeRundownProtectionCacheAware

本主题介绍 ExInitializeRundownProtectionCacheAware 函数。
ExInitializeRundownProtectionCacheAwareEx

ExInitializeSetTimerParameters

ExInitializeSetTimerParameters 例程初始化EXT_SET_PARAMETERS结构。
ExInterlockedAddLargeInteger

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

ExInterlockedAddLargeStatistic 例程将 ULONG 增量值联锁添加到LARGE_INTEGER变量。
ExInterlockedAddUlong

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

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

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

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

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

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

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

ExInterlockedPushEntryList 例程以原子方式在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 例程以有保证的堆栈大小执行。
ExpInterlockedPopEntrySList

描述 ExpInterlockedPopEntrySList 函数。
ExpInterlockedPushEntrySList

介绍 ExpInterlockedPushEntrySList 函数。
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结构。
ExReInitializeRundownProtectionCacheAware

本主题介绍 ExReInitializeRundownProtectionCacheAware 函数。
ExReleaseFastMutex

详细了解 ExReleaseFastMutex 例程。
ExReleaseFastMutexUnsafe

详细了解 ExReleaseFastMutexUnsafe 例程。
ExReleasePushLockExclusive

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

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

详细了解 ExReleaseResourceAndLeaveCriticalRegion 例程。
ExReleaseResourceForThreadLite

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

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

ExReleaseRundownProtection 例程释放调用方以前通过调用 ExAcquireRundownProtection 例程获取的断开保护。
ExReleaseRundownProtectionCacheAware

本主题介绍 ExReleaseRundownProtectionCacheAware 函数。
ExReleaseRundownProtectionCacheAwareEx

本主题介绍 ExReleaseRundownProtectionCacheAwareEx 函数。
ExReleaseRundownProtectionEx

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

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

详细了解 ExReleaseSpinLockExclusiveFromDpcLevel 例程。
ExReleaseSpinLockShared

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

详细了解 ExReleaseSpinLockSharedFromDpcLevel 例程。
ExRundownCompleted

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

本主题介绍 ExRundownCompletedCacheAware 函数。
ExSecurePoolUpdate

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

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

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

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

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

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

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

本主题介绍 ExSizeOfRundownProtectionCacheAware 函数。
ExSystemTimeToLocalTime

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

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

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

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

详细了解 ExTryToAcquireFastMutex 例程。
ExUnregisterCallback

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

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

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

本主题介绍 ExWaitForRundownProtectionReleaseCacheAware 函数。
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 例程时获取的一组硬件性能计数器。
HalGetBusDataByOffset

此函数从偏移量开始检索有关 I/O 总线上的槽或地址的信息。
HalSetBusDataByOffset

此函数为具有已发布的标准接口的动态可配置 I/O 总线上的设备设置总线配置数据。
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 指向的输入值与 Comparand 的值进行比较。
InterlockedCompareExchange

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

interlockedXor 函数 (wdm.h) 以原子方式计算具有指定变量和指定值的按位异或运算。
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 例程排队的工作项执行处理。
IoAcquireCancelSpinLock

详细了解 IoAcquireCancelSpinLock 例程。
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 (IRP) 分配 I/O 请求数据包
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

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

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

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

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

IoConnectInterrupt 例程 (ISR) 注册设备驱动程序的 InterruptService 例程,以便在设备在任何指定的处理器集上中断时调用它。
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 function.#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 function.#define IoGetAffinityInterrupt WdmlibIoGetAffinityInterrupt
IoGetAttachedDeviceReference

详细了解 IoGetAttachedDeviceReference 例程。
IoGetAttachedDeviceReference

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

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

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

详细了解 IoGetConfigurationInformation 函数。
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 例程初始化设备对象的 remove lock。
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

查询允许IOMMU_DMA_DEVICE附加到的可用域类型,具体取决于环境因素,例如平台和 DMA 防护策略。
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 例程在其初始化或重新初始化期间由驱动程序调用,以注册其要再次调用的 Reinitialize 例程,然后驱动程序(可能是系统的)初始化完成。
IoRegisterLastChanceShutdownNotification

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

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

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

详细了解 IoReleaseCancelSpinLock 例程。
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 中的 Status 值替换为指定的 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

详细了解 IoSizeOfIrp 例程。
IoSizeOfIrp

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

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

详细了解 IoStartNextPacket 例程。
IoStartNextPacket

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

详细了解 IoStartNextPacketByKey 例程。
IoStartNextPacketByKey

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

详细了解 IoStartPacket 例程。
IoStartPacket

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

详细了解 IoStartTimer 例程。
IoStartTimer

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

详细了解 IoStopTimer 例程。
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 及更高版本的 Windows 中已过时。 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

详细了解 IoWriteErrorLogEntry 例程。
IoWriteErrorLogEntry

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

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

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

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

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

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

详细了解 KeAcquireGuardedMutex 例程。
KeAcquireGuardedMutexUnsafe

详细了解 KeAcquireGuardedMutexUnsafe 函数。
KeAcquireInStackQueuedSpinLock

详细了解 KeAcquireInStackQueuedSpinLock 例程。
KeAcquireInStackQueuedSpinLockAtDpcLevel

详细了解 KeAcquireInStackQueuedSpinLockAtDpcLevel 例程。
KeAcquireInStackQueuedSpinLockForDpc

详细了解 KeAcquireInStackQueuedSpinLockForDpc 例程。
KeAcquireInterruptSpinLock

详细了解 KeAcquireInterruptSpinLock 例程。
KeAcquireSpinLock

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

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

详细了解 KeAcquireSpinLockForDpc 例程。
KeAcquireSpinLockRaiseToDpc

KeAcquireSpinLockRaiseToDpc 例程是 KeAcquireSpinLock 例程的更快版本。
KeAddTriageDumpDataBlock

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

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

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

(wdm.h) 的 KeAreApcsDisabled 函数返回一个值,该值指示调用线程是位于关键区域还是受保护区域内。
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

执行所有处理器上所有排队的 DPC 后,KeFlushQueuedDpcs 例程将返回。
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 例程从所有处理器缓存刷新指定的虚拟地址范围。
KeIpiGenericCall

KeIpiGenericCall 例程会导致指定的例程同时在所有处理器上运行。
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 例程如何返回非统一内存访问中的指定节点 (多处理器系统) 可以包含的最大逻辑处理器数。
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

详细了解 KeStallExecutionProcessor 例程。
KeStallExecutionProcessor

wdm.h 中的 KeStallExecutionProcessor 例程将当前处理器上的调用方停止指定的时间间隔。
KeSynchronizeExecution

KeSynchronizeExecution 例程将指定的例程的执行与分配给一个或多个中断对象的 ISR) (中断服务例程同步。
KeTestSpinLock

KeTestSpinLock 例程测试旋转锁的可用性。
KeTryToAcquireGuardedMutex

KeTryToAcquireGuardedMutex 例程获取受保护的互斥体(如果可用)。
KeTryToAcquireSpinLockAtDpcLevel

KeTryToAcquireSpinLockAtDpcLevel 例程尝试在DISPATCH_LEVEL获取旋转锁。
KeWaitForMultipleObjects

KeWaitForMultipleObjects 例程将当前线程置于可警报或不可更改的等待状态,直到将任意或所有调度程序对象设置为信号状态或 (可以选择) ,直到等待超时。
KeWaitForSingleObject

KeWaitForSingleObject 例程将当前线程置于等待状态,直到给定调度程序对象设置为已发出信号的状态,或者可以选择 () ,直到等待超时。
KIPI_BROADCAST_WORKER

IpiGenericCall 例程在所有处理器上同时运行。
KMESSAGE_SERVICE_ROUTINE

InterruptMessageService 例程为消息信号中断提供服务。
KSERVICE_ROUTINE

ISR (InterruptService 例程) 快速为设备中断提供服务,并在必要时计划接收数据的中断后处理。
KSTART_ROUTINE

ThreadStart 例程为驱动程序创建的系统线程提供入口点。
KSYNCHRONIZE_ROUTINE

SynchCritSection 例程用于访问与驱动程序的 InterruptService 例程共享的硬件资源或驱动程序数据。
KzLowerIrql

将当前处理器上的 IRQL 还原到其原始值。
KzRaiseIrql

将硬件优先级提高到指定的 IRQL 值,从而屏蔽当前处理器上等效或更低 IRQL 的中断。
MM_MDL_ROUTINE

驱动程序提供的回调例程,在内存描述符列表 (MDL) 通过调用 MmMapMdl 函数进行映射后调用。
MmAddPhysicalMemory

MmAddPhysicalMemory 函数向系统添加一系列物理内存。
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。 使用此例程而不是 MmAllocatePagesForMdl。
MmBuildMdlForNonPagedPool

MmBuildMdlForNonPagedPool 例程接收指定非分页虚拟内存缓冲区的 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 例程已过时。 请改用 MmGetSystemAddressForMdlSafe。
MmGetSystemRoutineAddress

MmGetSystemRoutineAddress 例程返回指向 SystemRoutineName 指定的函数的指针。
MmGetSystemRoutineAddressEx

MmGetSystemRoutineAddressEx 函数返回指定系统模块中指定函数的地址。
MmIsAddressValid

MmIsAddressValid 例程检查给定虚拟地址的读取或写入操作是否会发生页面错误。警告 不建议使用此函数。
MmIsDriverSuspectForVerifier

MmIsDriverSuspectForVerifier 例程指示由指定的驱动程序对象表示的驱动程序是否在驱动程序验证程序选择要验证的驱动程序列表中。
MmIsDriverVerification

MmIsDriverVerification 例程指示是验证由指定的驱动程序对象标识的内核模式驱动程序,还是调用由驱动程序验证程序验证的驱动程序。
MmIsDriverVerificationByAddress

MmIsDriverVerificationByAddress 例程检查是否正在验证由指定的映像地址标识的内核模式驱动程序,或者是否正在调用由驱动程序验证程序验证的驱动程序。
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

详细了解 NtClose 例程。
NtCommitComplete

ZwCommitComplete 例程通知 KTM 调用的资源管理器已完成提交事务的数据。
NtCommitEnlistment

ZwCommitEnlistment 例程为指定的登记事务启动提交操作。
NtCommitTransaction

ZwCommitTransaction 例程启动指定事务的提交操作。
NtCopyFileChunk

详细了解 NtCopyFileChunk 函数。
NtCreateEnlistment

ZwCreateEnlistment 例程为事务创建新的登记对象。
NtCreateFile

详细了解 NtCreateFile 函数。
NtCreateResourceManager

ZwCreateResourceManager 例程创建资源管理器对象。
NtCreateSection

ntifs.h 中的 NtCreateSection 例程创建一个 section 对象。 指向的句柄不再使用后,驱动程序必须关闭它。
NtCreateSectionEx

创建 section 对象。
NtCreateTransaction

ZwCreateTransaction 例程创建事务对象。
NtCreateTransactionManager

ZwCreateTransactionManager 例程创建新的事务管理器对象。
NtDeviceIoControlFile

详细了解 NtDeviceIoControlFile 函数。
NtDuplicateToken

详细了解 NtDuplicateToken 函数。
NtEnumerateTransactionObject

ZwEnumerateTransactionObject 例程枚举计算机上的 KTM 对象。
NtFlushBuffersFileEx

详细了解 NtFlushBuffersFileEx 例程。
NtFreeVirtualMemory

详细了解 NtFreeVirtualMemory 例程。
NtFsControlFile

详细了解 NtFsControlFile 例程。
NtGetNotificationResourceManager

ZwGetNotificationResourceManager 例程从指定的资源管理器的通知队列中检索下一个事务通知。
NtLockFile

NtLockFile 例程请求指定文件的字节范围锁。
NtManagePartition

NtManagePartition 函数获取并设置分区的信息。
NtOpenEnlistment

ZwOpenEnlistment 例程获取现有登记对象的句柄。
NtOpenFile

详细了解 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

详细了解 NtReadFile 例程。
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 例程。
NtSinglePhaseReject

ZwSinglePhaseReject 例程通知 KTM,调用资源管理器不支持对指定的登记执行单阶段提交操作。
NtUnlockFile

中的 NtUnlockFile 例程解锁文件中的字节范围锁。 如果调用处于用户模式,请使用名称 NtUnlockFile 而不是 ZwUnlockFile。
NtWriteFile

详细了解 NtWriteFile 例程。
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 函数递增对象的引用计数,并确定使用 对象是否安全。 如果删除对象,则返回 FALSE;如果可以安全地进一步使用该对象,则返回 TRUE。
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

此回调函数为公共缓冲区分配内存并将其映射,以便主设备和 CPU 可以访问该内存。
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 事件回调例程如何处理设备电源管理 (DPM) 来自 Windows 电源管理框架 (PoFx) 通知。
PEPCALLBACKNOTIFYDPM

AcceptDeviceNotification 事件回调例程处理设备电源管理 (DPM) 来自 Windows 电源管理框架的通知 (PoFx) 。
PEPCALLBACKNOTIFYPPM

了解 AcceptProcessorNotification 事件回调例程如何处理来自 Windows 电源管理框架的处理器电源管理 (PPM) 通知 (PoFx) 。
PEPCALLBACKNOTIFYPPM

AcceptProcessorNotification 事件回调例程处理来自 Windows 电源管理框架 (PoFx) 的处理器电源管理 (PPM) 通知。
PEPCALLBACKPOWERONCRASHDUMPDEVICE

了解 PowerOnDumpDeviceCallback 回调例程如何打开故障转储设备。
PEPCALLBACKPOWERONCRASHDUMPDEVICE

PowerOnDumpDeviceCallback 回调例程会打开故障转储设备。
PFLUSH_ADAPTER_BUFFERS

FlushAdapterBuffers 例程在 DMA 传输操作结束时刷新系统 DMA 控制器的内部缓存或总线-主适配器的内部缓存中剩余的任何数据。
PFLUSH_ADAPTER_BUFFERS_EX

FlushAdapterBuffersEx 例程在系统 DMA 控制器或总线主设备执行的 DMA 传输操作结束时刷新数据缓存中保留的任何数据。
PFLUSH_DMA_BUFFER

回调例程刷新 MDL 描述的内存区域中剩余的任何数据。
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回调函数获取 DMA 域的句柄。
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 回调函数读取 MCA 银行的状态寄存器。
pHalSetSystemInformation

向 HAL 注册 MCA 驱动程序。
PINITIALIZE_DMA_TRANSFER_CONTEXT

InitializeDmaTransferContext 例程初始化不透明的 DMA 传输上下文,该上下文用于跟踪 DMA 资源的挂起分配。
PINTERFACE_DEREFERENCE

PINTERFACE_DEREFERENCE回调函数 (miniport.h) 递减驱动程序定义的接口上的引用计数。
PINTERFACE_DEREFERENCE

wdm.h (PINTERFACE_DEREFERENCE回调函数) 递减驱动程序定义的接口上的引用计数。
PINTERFACE_REFERENCE

miniport.h (PINTERFACE_REFERENCE 回调函数) 递增驱动程序定义的接口上的引用计数。
PINTERFACE_REFERENCE

PINTERFACE_REFERENCE回调函数 (wdm.h) 递增驱动程序定义的接口上的引用计数。
PJOIN_DMA_DOMAIN

PJOIN_DMA_DOMAIN回调函数联接指定的 DMA 域。
PLEAVE_DMA_DOMAIN

PLEAVE_DMA_DOMAIN回调函数离开指定的 DMA 域。
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回调函数由客户端驱动程序实现,以代表 DFx 处理特定于驱动程序的关机活动。
PO_FX_DIRECTED_POWER_UP_CALLBACK

PO_FX_DIRECTED_POWER_UP_CALLBACK回调函数由客户端驱动程序实现,以代表 DFx 处理特定于驱动程序的启动活动。
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。) 。
PoCallDriver

wdm.h 中的 PoCallDriver 例程将电源 IRP 传递给设备堆栈中下一个较低的驱动程序。 仅 (Windows Server 2003、Windows XP 和 Windows 2000。) 。
PoClearPowerRequest

详细了解 PoClearPowerRequest 例程。
PoClearPowerRequest

wdm.h 文件中的 PoClearPowerRequest 例程会减少指定电源请求类型的计数。
PoCreatePowerRequest

详细了解 PoCreatePowerRequest 例程。
PoCreatePowerRequest

wdm.h 中的 PoCreatePowerRequest 例程创建电源请求对象。 若要启用电源请求,请创建一个电源请求对象并将其用于所有调用。
PoDeletePowerRequest

详细了解 PoDeletePowerRequest 例程。
PoDeletePowerRequest

wdm.h 中的 PoDeletePowerRequest 例程删除电源请求对象。 驱动程序必须先删除电源请求对象,然后才能删除设备对象。
PoEndDeviceBusy

详细了解 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

了解平台扩展插件 (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

(DFx) 客户端驱动程序的定向 Power Framework 调用此函数来完成定向关机转换。
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 例程如何将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。
PoFxRegisterPlugin

PoFxRegisterPlugin 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。
PoFxRegisterPluginEx

了解 PoFxRegisterPluginEx 例程如何将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。
PoFxRegisterPluginEx

PoFxRegisterPluginEx 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (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) 。
PoGetSystemWake

PoGetSystemWake 例程确定是否已将指定的 IRP 标记为将系统从睡眠状态唤醒。
PopEntryList

PopEntryList 例程从SINGLE_LIST_ENTRY结构的单独链接列表中删除第一个条目。
PoQueryWatchdogTime

详细了解 PoQueryWatchdogTime 例程。
PoQueryWatchdogTime

wdm.h 中的 PoQueryWatchdogTime 例程指示电源管理器是否为分配给设备堆栈的任何电源 IRP 启用了超时计数器。
PoRegisterDeviceForIdleDetection

详细了解 PoRegisterDeviceForIdleDetection 例程。
PoRegisterDeviceForIdleDetection

wdm.h 中的 PoRegisterDeviceForIdleDetection 例程启用或取消空闲检测,并为设备设置空闲超时值。
PoRegisterPowerSettingCallback

详细了解 PoRegisterPowerSettingCallback 例程。
PoRegisterPowerSettingCallback

wdm.h 中的 PoRegisterPowerSettingCallback 例程注册电源设置回调例程,以接收指定电源设置中更改的通知。
PoRegisterSystemState

详细了解 PoRegisterSystemState 例程。
PoRegisterSystemState

wdm.h 中的 PoRegisterSystemState 例程由于标志指示的某些活动,将系统注册为忙碌。
PoRequestPowerIrp

PoRequestPowerIrp 例程分配电源 IRP 并将其发送到指定设备的设备堆栈中的顶部驱动程序。
PoSetDeviceBusy

详细了解:PoSetDeviceBusy
PoSetDeviceBusyEx

详细了解 PoSetDeviceBusyEx 例程。
PoSetDeviceBusyEx

wdm.h 中的 PoSetDeviceBusyEx 例程通知电源管理器与指定的空闲计数器关联的设备正忙。
PoSetPowerRequest

详细了解 PoSetPowerRequest 函数。
PoSetPowerRequest

wdm.h 中的 PoSetPowerRequest 例程递增指定的电源请求类型的计数。 电源管理器对每种电源请求类型的请求进行计数。
PoSetPowerState

详细了解 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

Halt 回调例程将处理器转换为空闲状态。
PsAllocateAffinityToken

PsAllocateAffinityToken 函数分配线程关联令牌。
PsAllocSiloContextSlot

此例程分配一个槽,该槽可用于在所有 silo 中插入、检索和删除对象。
PsAttachSiloToCurrentThread

此例程将线程临时置于指定的 Silo 中。
PsCreateSiloContext

此例程创建一个对象,该对象将插入 Silo 中。
PsCreateSystemThread

PsCreateSystemThread 例程创建一个系统线程,该线程在内核模式下执行,并返回线程的句柄。
PsDereferenceSiloContext

此例程递减对象上的引用计数。
PsDetachSiloFromCurrentThread

此例程从由附加添加的 silo 中删除线程。 有关附加的详细信息,请参阅 PsAttachSiloToCurrentThread 例程。
PsFreeAffinityToken

PsFreeAffinityToken 函数释放由 PsAllocateAffinityToken 分配的关联令牌。
PsFreeSiloContextSlot

此例程释放指定的槽,并使它在系统中可用。 它撤消 PsAllocSiloContextSlot 例程的效果。
PsGetCurrentProcessId

PsGetCurrentProcessId 例程标识当前线程的进程。
PsGetCurrentServerSilo

此例程返回线程的有效服务器接收器。
PsGetCurrentSilo

此例程返回调用线程的当前 silo。 首先检查线程,以查看它是否已附加到 silo。 如果不是,则会检查线程,以查看它是否在 silo 中。
PsGetCurrentThread

PsGetCurrentThread 例程标识当前线程。
PsGetCurrentThread

了解 PsGetCurrentThread 例程如何标识当前线程。
PsGetCurrentThread

了解 PsGetCurrentThread 例程 (wdm.h) 如何识别当前线程。
PsGetCurrentThreadId

PsGetCurrentThreadId 例程标识当前线程。
PsGetCurrentThreadTeb

PsGetCurrentThreadTeb 例程返回当前线程的线程环境块 (TEB) 。 必须在内核模式下进行调用。
PsGetEffectiveServerSilo

此例程遍历 Silo 的父链,直到找到有效的服务器 silo 或主机 silo。
PsGetHostSilo

此例程返回主机接收器。
PsGetJobServerSilo

此例程返回作业的有效 ServerSilo。 只要提供的 Job 对象仍被引用,返回的指针就有效。
PsGetJobSilo

此例程返回层次结构中的第一个作业,即 Silo。 只要提供的 Job 对象仍被引用,返回的指针就有效。
PsGetParentSilo

检索给定作业对象的层次结构中最直接的父接收器。
PsGetPermanentSiloContext

此例程检索插入 Silo 中的对象,而不递增引用计数。
PsGetProcessCreateTimeQuadPart

PsGetProcessCreateTimeQuadPart 例程返回一个 LONGLONG 值,该值表示创建进程的时间。
PsGetProcessExitStatus

PsGetProcessId

PsGetProcessId 例程返回与指定进程关联的进程标识符 (进程 ID) 。
PsGetProcessStartKey

PsGetServerSiloActiveConsoleId

获取提供的线程的当前服务器 silo 上下文的活动控制台。
PsGetSiloContainerId

获取给定 Silo 的 ContainerId。
PsGetSiloContext

此例程从指定的 silo 和槽中检索 silo 上下文。
PsGetSiloMonitorContextSlot

此例程返回监视器在注册期间分配的 silo 上下文槽。
PsGetThreadCreateTime

PsGetThreadExitStatus

PsGetThreadId

PsGetThreadProcessId

PsGetThreadProcessId 例程返回与指定线程的进程关联的进程标识符。
PsGetThreadProperty

PsGetThreadServerSilo

确定给定线程是否为 silo。
PsGetVersion

此函数在 Windows XP 和更高版本的 Windows 操作系统中已过时。 请改用 RtlGetVersion。PsGetVersion 返回调用方选择的有关基于 NT 的操作系统的当前版本的信息。
PsInsertPermanentSiloContext

此例程在 Silo 的空槽中插入对象。
PsInsertSiloContext

了解此例程如何在 Silo 的空槽中插入对象。
PsIsHostSilo

如果提供的 Silo 是主机接收器,则此例程将检查。
PsIsSystemThread

PsIsSystemThread 例程检查给定线程是否为系统线程。
PsMakeSiloContextPermanent

此例程使 silo 实例中的槽为只读,从而允许检索槽中的对象,而不会影响该对象的引用计数。
PsQueryTotalCycleTimeProcess

PsQueryTotalCycleTimeProcess 例程返回指定进程的累积周期时间。
PsReferenceSiloContext

此例程递增对象上的引用计数。
PsRegisterSiloMonitor

此例程注册可以接收有关服务器 silo 事件的通知的服务器 silo 监视器。
PsRemoveCreateThreadNotifyRoutine

PsRemoveCreateThreadNotifyRoutine 例程删除由 PsSetCreateThreadNotifyRoutine 例程注册的回调例程。
PsRemoveLoadImageNotifyRoutine

PsRemoveLoadImageNotifyRoutine 例程删除由 PsSetLoadImageNotifyRoutine 例程注册的回调例程。
PsRemoveSiloContext

此例程将删除在 Silo 中插入的对象。
PsReplaceSiloContext

此例程在 Silo 中插入对象。
PsRevertToUserMultipleGroupAffinityThread

PsRevertToUserMultipleGroupAffinityThread 函数将当前线程还原到其以前的相关性,如给定的相关性标记所指示。
PsSetCreateProcessNotifyRoutine

PsSetCreateProcessNotifyRoutine 例程将驱动程序提供的回调例程添加到或将其从中删除,每当创建或删除进程时要调用的例程列表。
PsSetCreateProcessNotifyRoutineEx

PsSetCreateProcessNotifyRoutineEx 例程注册或删除一个回调例程,该例程在创建或退出进程时通知调用方。
PsSetCreateProcessNotifyRoutineEx2

PsSetCreateProcessNotifyRoutineEx2 例程注册或删除一个回调例程,该例程在创建或删除进程时通知调用方。
PsSetCreateThreadNotifyRoutine

PsSetCreateThreadNotifyRoutine 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。
PsSetCreateThreadNotifyRoutineEx

PsSetCreateThreadNotifyRoutineEx 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。
PsSetLoadImageNotifyRoutine

PsSetLoadImageNotifyRoutine 例程注册驱动程序提供的回调,每当映像加载 (或映射到内存) 时,该回调就会发出通知。
PsSetLoadImageNotifyRoutineEx

PsSetLoadImageNotifyRoutineEx 例程注册驱动程序提供的回调,每当映像加载 (或映射到内存) 时,该回调就会发出通知。
PsSetSystemMultipleGroupAffinityThread

PsSetSystemMultipleGroupAffinityThread 函数设置当前线程的多组系统相关性。
PsStartSiloMonitor

此例程尝试启动服务器 silo 监视器。
PsTerminateServerSilo

此例程终止指定的 silo。
PsTerminateSystemThread

PsTerminateSystemThread 例程终止当前系统线程。
PsUnregisterSiloMonitor

此例程取消注册服务器 silo 监视器。
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函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 USHORT 值。
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 类型的值。
RtlInt8ToULong

将 INT8 类型的值转换为 ULONGLONG 类型的值。
RtlInt8ToULongPtr

将 INT8 类型的值转换为 ULONG_PTR 类型的值。
RtlInt8ToUShort

将 INT8 类型的值转换为 USHORT 类型的值。
RtlIntAdd

添加两个 INT 类型的值。
RtlIntegerToUnicodeString

RtlIntegerToUnicodeString 例程将无符号整数值转换为以 null 结尾的字符串,该字符串由指定基中的一个或多个 Unicode 字符构成。
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 类型的两个值相加。
RtlLongLongAdd

将 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 类型的值。
RtlLongToUInt

将 LONGLONG 类型的值转换为 UINT 类型的值。
RtlLongToUInt8

将 LONGLONG 类型的值转换为 UNIT8 类型的值。
RtlLongLongToULong

将 LONGLONG 类型的值转换为 ULONG 类型的值。
RtlLongLongToULong

将 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 类型的值。
RtlLongPtrToULong

将 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 例程返回指定ULONG_PTR整数值中设置为 1 的位数。
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 例程将位图中的指定位设置为 1。
RtlSetBits

RtlSetBits 例程设置给定位图变量的给定范围内的所有位。
RtlSetDaclSecurityDescriptor

RtlSetDaclSecurityDescriptor 例程设置绝对格式安全描述符的 DACL 信息,或者如果安全描述符中已存在 DACL,则将其取代。
RtlShortAdd

添加两个 SHORT 类型的值。
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 类型的值。
RtlULongPtrToLong

将 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结构中时,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结构中。
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 输入字符串为 时,UTF-8 输出才以 null 结尾。
RtlUnicodeToUTF8N

wdm.h 中的 RtlUnicodeToUTF8N 例程将 Unicode 字符串转换为 UTF-8 字符串。 仅当 Unicode 输入字符串为 时,UTF-8 输出才以 null 结尾。
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 路径。
RtlWalkFrameChain

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 时调用的回调。
SILO_MONITOR_TERMINATE_CALLBACK

当 silo 终止时,将调用此回调。
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

TmPrepareComplete 例程通知 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) 取消注册由上一次调用 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

(wdm.h) WRITE_PORT_BUFFER_ULONG 函数将缓冲区中的多个 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

(wdm.h) WRITE_REGISTER_ULONG64 函数将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 例程创建或打开 object-directory 对象。
ZwCreateEnlistment

了解 ZwCreateEnlistment 例程如何为事务创建新的登记对象。
ZwCreateEvent

ZwCreateEvent 例程创建一个事件对象,将该事件的初始状态设置为指定值,并打开具有指定所需访问权限的 对象的句柄。
ZwCreateFile

ZwCreateFile 例程创建新文件或打开现有文件。
ZwCreateKey

ZwCreateKey 例程创建新的注册表项或打开现有的注册表项。
ZwCreateKeyTransacted

ZwCreateKeyTransacted 例程创建新的注册表项或打开现有的注册表项,并将该注册表项与事务相关联。
ZwCreateResourceManager

了解 ZwCreateResourceManager 例程如何创建资源管理器对象。
ZwCreateSection

wdm.h 中的 ZwCreateSection 例程创建一个 section 对象。 指向的句柄不再使用后,驱动程序必须关闭它。
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

了解 ZwPrePrepareEnlistment 例程如何为指定的登记事务启动预准备操作。
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 例程。
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 结构包含有关已加载映像模块的扩展信息。
BATTERY_REPORTING_SCALE

电池微型类驱动程序填充此结构以响应某些 BatteryMiniQueryInformation 请求。
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

miniport.h (_CM_EISA_FUNCTION_INFORMATION 结构) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。
CM_EISA_FUNCTION_INFORMATION

(wdm.h) _CM_EISA_FUNCTION_INFORMATION 结构定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。
CM_EISA_SLOT_INFORMATION

miniport.h (_CM_EISA_SLOT_INFORMATION 结构) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的 EISA 配置标头信息。
CM_EISA_SLOT_INFORMATION

wdm.h) (_CM_EISA_SLOT_INFORMATION 结构定义 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 树中特定于设备类型的数据记录。
CONFIGURATION_INFORMATION

详细了解CONFIGURATION_INFORMATION结构。
上下文

详细了解: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

详细了解DEVICE_OBJECT结构。
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

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

FILE_IO_PRIORITY_HINT_INFORMATION 结构由 ZwQueryInformationFile 和 ZwSetInformationFile 例程用于查询和设置指定文件句柄上请求的默认 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

miniport.h) (_GROUP_AFFINITY 结构指定组号和该组中的处理器相关性。
HAL_DISPATCH

本主题介绍HAL_DISPATCH结构。
HARDWARE_COUNTER

HARDWARE_COUNTER结构包含有关硬件计数器的信息。
HWPROFILE_CHANGE_NOTIFICATION

HWPROFILE_CHANGE_NOTIFICATION结构描述与硬件配置文件配置更改相关的事件。
IMAGE_INFO

由驱动程序的 load-image 例程 (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。
接口

miniport.h) (_INTERFACE 结构描述由驱动程序导出以供其他驱动程序使用的接口。
接口

wdm.h) (_INTERFACE 结构描述由驱动程序导出以供其他驱动程序使用的接口。
IO_CONNECT_INTERRUPT_PARAMETERS

IO_CONNECT_INTERRUPT_PARAMETERS 结构包含驱动程序提供给 IoConnectInterruptEx 例程的参数,以 (ISR) 注册中断服务例程。
IO_DISCONNECT_INTERRUPT_PARAMETERS

IO_DISCONNECT_INTERRUPT_PARAMETERS 结构描述使用 IoDisconnectInterruptEx 注销中断处理例程时的参数。
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

miniport.h) (_IO_RESOURCE_LIST 结构描述了设备可以使用的各种原始硬件资源。
IO_RESOURCE_LIST

(wdm.h) _IO_RESOURCE_LIST结构描述了设备可以使用的各种类型的原始硬件资源。
IO_RESOURCE_REQUIREMENTS_LIST

miniport.h) (_IO_RESOURCE_REQUIREMENTS_LIST 结构描述表示设备使用的原始资源类型的资源配置集。
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 堆栈位置,该位置是 I/O 堆栈中与每个 IRP 关联的条目。
IO_STATUS_BLOCK

在为 IRP 调用 IoCompleteRequest 之前,驱动程序设置 IRP 的 I/O 状态块以指示 I/O 请求的最终状态。
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 请求数据包的部分不透明结构。
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

MAILSLOT_CREATE_PARAMETERS由 Windows 子系统用于创建邮件图。
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

NAMED_PIPE_CREATE_PARAMETERS结构由 Windows 子系统用于创建命名管道。
NOTIFY_USER_POWER_SETTING

本主题介绍NOTIFY_USER_POWER_SETTING结构。
OB_CALLBACK_REGISTRATION

OB_CALLBACK_REGISTRATION 结构指定 ObRegisterCallbacks 例程注册 ObjectPreCallback 和 ObjectPostCallback 回调例程时的参数。
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

t miniport.h) (_PCI_COMMON_CONFIG结构已过时。 它定义标准 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

miniport.h) (_PCI_SLOT_NUMBER结构已过时。 它将 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 先前请求且设备驱动程序已完成的电源控制操作的状态信息。
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_NOTIFY_PPM_QUERY_CAPABILITIES通知指示支持离散性能状态,则了解如何在存储 PEP 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用此方法。 .
PEP_PPM_QUERY_DISCRETE_PERF_STATES

在存储 PEP 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用,前提是PEP_NOTIFY_PPM_QUERY_CAPABILITIES通知指示支持离散性能状态。 .
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_DPM_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME通知使用 pepfx.h) (PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME结构来收集有关芯片 (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结构如何包含由平台扩展插件异步评估的 ACPI 控制方法的结果 (PEP) 。
PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE

PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE 结构包含由平台扩展插件异步评估的 ACPI 控制方法的结果, (PEP) 。
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 (PoFx) 提交到 Windows 电源管理框架的工作项。
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

PLUGPLAY_NOTIFICATION_HEADER结构包含在每个 PnP 通知结构的开头,例如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

详细了解:POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES 结构 (wdm.h)
POWER_STATE

POWER_STATE联合指定系统电源状态值或设备电源状态值。
POWER_STATE

了解POWER_STATE联合如何指定系统电源状态值或设备电源状态值。
POWER_THROTTLING_PROCESS_STATE

存储限制策略,以及如何在目标进程受电源管理约束时将其应用于目标进程。
POWER_THROTTLING_THREAD_STATE

存储限制策略,以及如何在受电源管理约束时将限制策略应用于目标线程。
PRIVILEGE_SET

PRIVILEGE_SET 结构指定一组安全特权。
PROCESS_MEMBERSHIP_INFORMATION

本主题介绍PROCESS_MEMBERSHIP_INFORMATION结构。
PROCESS_MITIGATION_ACTIVATION_CONTEXT_TRUST_POLICY

描述PROCESS_MITIGATION_ACTIVATION_CONTEXT_TRUST_POLICY结构。
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

miniport.h (_PROCESSOR_NUMBER 结构) 按其组号和组相对处理器编号标识处理器。
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_V1。 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

此结构指定可以接收有关服务器 silo 事件的通知的服务器 silo 监视器。
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请求。