内核
标准驱动程序例程必须由驱动程序实现。 驱动程序支持例程是 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 内核,需要以下标头:
- aux_klib.h
- hwnclx.h
- ioaccess.h
- iointex.h
- miniport.h
- ntddk.h
- ntddsfio.h
- ntddsysenv.h
- ntintsafe.h
- ntpoapi.h
- ntstrsafe.h
- pcivirt.h
- pep_x.h
- pepfx.h
- procgrp.h
- pwmutil.h
- wdm.h
- wdmsec.h
- wmidata.h
- wmilib.h
- wmistr.h
有关编程指南,请参阅 Windows 内核。
初始化和卸载
本部分总结了驱动程序可从 DriverEntry、AddDevice、Reinitialize 或 Unload 例程调用的内核模式支持例程。
... 的例程 | 常规 |
---|---|
获取和报告有关驱动程序设备和当前平台的硬件配置信息。 | |
获取和报告配置信息,以及用于在注册表中注册接口。 | IoGetDeviceProperty、IoOpenDeviceInterfaceRegistryKey、IoOpenDeviceRegistryKey、IoRegisterDeviceInterface、IoSetDeviceInterfaceState, RtlCheckRegistryKey、RtlCreateRegistryKey、RtlQueryRegistryValues、RtlWriteRegistryValue、RtlDeleteRegistryValue、InitializeObjectAttributes、ZwCreateKey、ZwOpenKey、ZwQueryKey、ZwEnumerateKey、ZwEnumerateValueKey、ZwQueryValueKey、ZwSetValueKey、ZwFlushKey、ZwDeleteKey、ZwClose |
设置和释放驱动程序可能使用的对象和资源。 | |
初始化驱动程序托管的内部队列。 | KeInitializeSpinLock、InitializeListHead、ExInitializeSListHead、KeInitializeDeviceQueue、IoCsqInitialize |
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
- HalAcquireDisplayOwnership
- HalAllocateAdapterChannel。 请改用 AllocateAdapterChannel。
- HalAllocateCrashDumpRegisters
- HalAllocateMapRegisters
- HalGetScatterGatherList。 请改用 GetScatterGatherList。
- HalMakeBeep
- HalPutDmaAdapter。 请改用 PutDmaAdapter。
- HalPutScatterGatherList。 请改用 PutScatterGatherList。
导出以下过时的例程仅支持现有驱动程序:
已过时例程 | 更换 |
---|---|
HalAllocateCommonBuffer | 请改为参阅 AllocateCommonBuffer。 |
HalAssignSlotResources | PnP 管理器为 PnP 设备的驱动程序分配资源,这些资源会随每个IRP_MN_START_DEVICE请求一起传递资源列表。 必须支持 PnP 管理器无法枚举的旧设备的驱动程序应使用 IoReportDetectedDevice 和 IoReportResourceForDetection。 |
HalFreeCommonBuffer | 请改为参阅 FreeCommonBuffer。 |
HalGetAdapter | 请改为参阅 IoGetDmaAdapter。 |
HalGetBusData | 请改用 IRP_MN_QUERY_INTERFACE 查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回一个指向 GetBusData 的函数指针,该指针可用于从给定设备的配置空间读取。 |
HalGetBusDataByOffset | 请改用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回一个指向 GetBusData 的函数指针,该指针可用于从给定设备的配置空间读取。 |
HalGetDmaAlignmentRequirement | 请改为参阅 GetDmaAlignment。 |
HalGetInterruptVector | PnP 管理器为 PnP 设备的驱动程序分配资源,这些资源会随每个IRP_MN_START_DEVICE请求一起传递资源列表。 必须支持 PnP 管理器无法枚举的旧设备的驱动程序应使用 IoReportDetectedDevice 和 IoReportResourceForDetection。 |
HalReadDmaCounter | 请改为参阅 ReadDmaCounter。 |
HalSetBusData | 请改用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回一个指向 SetBusData 的函数指针,该指针可用于写入给定设备的配置空间。 |
HalSetBusDataByOffset | 请改用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 此查询请求返回一个指向 SetBusData 的函数指针,该指针可用于写入给定设备的配置空间。 |
HalTranslateBusAddress | PnP 管理器在其针对每个设备的IIRP_MN_START_DEVICE请求中传递原始和已转换资源的列表。 因此,在大多数情况下,无需转换总线地址。 但是,如果需要翻译,请使用IRP_MN_QUERY_INTERFACE查询GUID_BUS_INTERFACE_STANDARD接口。 查询请求返回一个指向 TranslateBusAddress 的函数指针,该指针可用于将父总线上的地址转换为逻辑地址。 |
这些过时的例程包含在 Ntddk.h 头文件中。
不支持以下例程,不应使用:
- HalReturnToFirmware
Windows 执行 PCI 总线资源的资源均衡,为插入的设备打开地址区域。 重新平衡操作会导致某些驱动程序设备的总线数据动态移动(在IRP_MN_STOP_DEVICE和IRP_MN_START_DEVICE调用之间)。 因此,驱动程序不能直接访问总线数据。 相反,驱动程序必须将其传递到较低的总线驱动程序,因为它知道设备的位置。
有关详细信息,请参阅 停止设备以重新平衡资源。
注册表
用于获取和报告配置信息,以及用于在注册表中注册接口。
功能 | 描述 |
---|---|
IoGetDeviceProperty | 从注册表检索设备设置信息。 使用此例程(而不是直接访问注册表)使驱动程序免受平台差异和注册表结构中可能更改的隔离。 |
IoOpenDeviceInterfaceRegistryKey | 返回注册表项的句柄,用于存储有关特定设备接口的信息。 |
IoOpenDeviceRegistryKey | 返回特定设备实例特定于设备的或特定于驱动程序的注册表项的句柄。 |
IoRegisterDeviceInterface | 注册驱动程序将允许由应用程序或其他系统组件使用的设备功能(设备接口)。 I/O 管理器为设备接口创建注册表项。 驱动程序可以使用 IoOpenDeviceInterfaceRegistryKey 访问此密钥下的持久存储。 |
IoSetDeviceInterfaceState | 启用或禁用以前注册的设备接口。 应用程序和其他系统组件只能打开已启用的接口。 |
RtlCheckRegistryKey | 返回STATUS_SUCCESS给定相对路径的注册表中是否存在键。 |
RtlCreateRegistryKey | 沿给定相对路径在注册表中添加键对象。 |
RtlQueryRegistryValues | 在给定回调例程后,在注册表中为指定值名称的条目提供驱动程序提供的回调只读访问权限。 |
RtlWriteRegistryValue | 将调用方提供的数据沿指定相对路径写入给定值名称的注册表中。 |
RtlDeleteRegistryValue | 从给定相对路径的注册表中删除指定的值名称(和关联的值条目)。 |
InitializeObjectAttributes | 为对 ZwCreateXxx 或 ZwOpenXxx 例程的后续调用设置OBJECT_ATTRIBUTES类型的参数。 |
ZwCreateKey | 使用给定对象的属性、允许的访问和创建选项(例如启动系统时是否再次创建密钥)在注册表中创建一个新键。 或者,打开现有键并返回键对象的句柄。 |
ZwOpenKey | 为给定对象的属性(必须包含键的名称)和对对象的所需访问,返回注册表中某个键的句柄。 |
ZwQueryKey | 返回有关键类及其子项的数量和大小的信息。 此信息包括子项名称的长度和值条目的大小。 |
ZwEnumerateKey | 返回注册表中打开的键的从零开始的索引选择的子项的指定信息。 |
ZwEnumerateValueKey | 返回注册表中打开的键的从零开始的索引选择的子项的值项的指定信息。 |
ZwQueryValueKey | 返回注册表中打开的键的值项。 |
ZwSetValueKey | 替换注册表中打开的键的值项(或创建)。 |
ZwFlushKey | 强制 ZwCreateKey 或 ZwSetValueKey 所做的更改,以便将打开的键对象写入磁盘。 |
ZwDeleteKey | 关闭密钥后,立即从注册表中删除键及其值项。 |
ZwClose | 释放打开对象的句柄,导致句柄失效并递减对象句柄的引用计数。 |
对象和资源
用于设置和释放驱动程序可能使用的对象和资源。
功能 | 描述 |
---|---|
IoCreateDevice | 初始化设备对象,该对象表示将驱动程序加载到系统中的物理、虚拟或逻辑设备。 然后,它为与设备对象关联的驱动程序定义的设备扩展分配空间。 |
IoDeleteDevice | 从系统中删除基础设备时,从系统中删除设备对象。 |
IoGetDeviceObjectPointer | 请求对命名设备对象的访问,并在授予请求的访问权限时返回指向该设备对象的指针。 还返回指向由命名设备对象引用的文件对象的指针。 实际上,此例程在调用方与下一级驱动程序之间建立连接。 |
IoAttachDeviceToDeviceStack | 将调用方的设备对象附加到驱动程序链中最高的设备对象,并返回指向以前最高的设备对象的指针。 首先将目标设备的 I/O 请求路由到调用方。 |
IoGetAttachedDeviceReference | 返回指向驱动程序堆栈中最高级别的设备对象的指针,并递增该对象的引用计数。 |
IoDetachDevice | 释放调用方设备对象与目标驱动程序的设备对象之间的附件。 |
IoAllocateDriverObjectExtension | 分配具有给定唯一标识符的按驱动程序上下文区域。 |
IoGetDriverObjectExtension | 检索以前分配的按驱动程序上下文区域。 |
IoRegisterDeviceInterface | 注册驱动程序将允许由应用程序或其他系统组件使用的设备功能(设备接口)。 I/O 管理器为设备接口创建注册表项。 驱动程序可以通过调用 IoOpenDeviceInterfaceRegistryKey 来访问此密钥下的持久存储。 |
IoIsWdmVersionAvailable | 检查操作系统是否支持给定的 WDM 版本。 |
IoDeleteSymbolicLink | 释放设备对象名称和用户可见名称之间的符号链接。 |
IoAssignArcName | 设置命名设备对象(如磁带、软盘或 CD-ROM)与设备的相应 ARC 名称之间的符号链接。 |
IoDeassignArcName | 释放通过调用 IoAssignArcName 创建的符号链接。 |
IoSetShareAccess | 设置允许访问表示设备的给定文件对象。 (只有最高级别的驱动程序才能调用此例程。 |
IoConnectInterrupt | 注册驱动程序的中断处理例程。 驱动程序应改用 IoConnectInterruptEx。 |
IoDisconnectInterrupt | 注销 IoConnectInterrupt 注册的中断处理例程。 |
IoConnectInterruptEx | 注册驱动程序的中断处理例程。 驱动程序可以为基于行的中断注册 InterruptService 例程,也可以为消息信号中断注册 InterruptMessageService 例程。 |
IoDisconnectInterruptEx | 注销 IoConnectInterruptEx 注册的中断处理例程。 |
IoInitializeDpcRequest | 将驱动程序提供的 DpcForIsr 例程与给定的设备对象相关联,以便 DpcForIsr 例程可以完成中断驱动的 I/O 操作。 |
IoReadPartitionTable | 返回具有给定扇区大小的磁盘上的分区列表。 |
IoSetPartitionInformation | 设置(磁盘)分区的分区类型和数字。 |
IoWritePartitionTable | 给定表示磁盘的设备对象、扇区大小和指向包含驱动器布局结构的缓冲区的指针,为磁盘写入分区表。 |
IoCreateController | 初始化表示由具有相同驱动程序的两个或多个类似设备共享的物理设备控制器的控制器对象,并指定控制器扩展的大小。 |
IoDeleteController | 从系统中删除控制器对象。 |
KeInitializeSpinLock | 初始化KSPIN_LOCK类型的变量。 |
KeInitializeDpc | 初始化 DPC 对象,设置可以使用给定上下文调用的驱动程序提供的 CustomDpc 例程。 |
KeInitializeTimer | 将通知计时器对象初始化为 Not-Signaled 状态。 |
KeInitializeTimerEx | 将通知或同步计时器对象初始化为 Not-Signaled 状态。 |
KeInitializeEvent | 将事件对象初始化为同步(单个服务员)或通知(多个服务员)类型事件并设置其初始状态(信号或 Not-Signaled)。 |
ExInitializeFastMutex | 初始化一个快速互斥变量,该变量用于通过一组线程同步对共享资源的互斥访问。 |
KeInitializeMutex | 将互斥体对象初始化为设置为 Signaled 状态。 |
KeInitializeSemaphore | 将信号灯对象初始化为给定计数,并指定计数的上限。 |
IoCreateNotificationEvent | 初始化用于在两个或多个组件之间同步访问的命名通知事件。 通知事件不会自动重置。 |
IoCreateSynchronizationEvent | 初始化一个命名的同步事件,该事件用于序列化对两个其他无关驱动程序之间的硬件访问。 |
PsCreateSystemThread | 创建与给定进程对象或默认系统进程关联的内核模式线程。 返回线程的句柄。 |
PsTerminateSystemThread | 终止当前线程并满足当前线程对象的尽可能多的等待。 |
KeSetBasePriorityThread | 为驱动程序创建的线程设置相对于系统进程的运行时优先级。 |
KeSetPriorityThread | 使用实时优先级属性设置驱动程序创建的线程的运行时优先级。 |
MmIsThisAnNtAsSystem | 如果当前平台是服务器,则返回 TRUE,指示处理 I/O 请求所需的资源可能多于计算机是否为客户端。 |
MmQuerySystemsize | 返回当前平台上可用内存量的估计值(小、中或大)。 |
ExInitializeNPagedLookasideList | 初始化非分页内存的外观列表。 成功初始化后,可以分配固定大小的块并将其释放到 lookaside 列表。 |
ExInitializePagedLookasideList | 初始化分页内存的外观列表。 成功初始化后,可以分配固定大小的块并将其释放到 lookaside 列表。 |
ExInitializeResourceLite | 初始化调用方为其提供存储的资源,供一组线程用于同步。 |
ExReinitializeResourceLite | 重新初始化现有资源变量。 |
ExDeleteResourceLite | 从系统的资源列表中删除调用方初始化的资源。 |
ObReferenceObjectByHandle | 返回一个指针,指向对象正文并处理信息(属性和授予的访问权限),给定对象的句柄、对象的类型和掩码。 指定对对象和首选访问模式的所需访问。 成功的调用递增对象的引用计数。 |
ObReferenceObjectByPointer | 递增对象的引用计数,以便调用方可以确保在调用方使用对象时不会从系统中删除该对象。 |
ObReferenceObject | 递增对象的引用计数,给定指向对象的指针。 |
ObDereferenceObject | 给定指向对象主体的指针,释放对对象的引用(递减引用计数)。 |
RtlInitString | 初始化缓冲区中的计数字符串。 |
RtlInitAnsiString | 初始化缓冲区中计数的 ANSI 字符串。 |
RtlInitUnicodeString | 初始化缓冲区中计数的 Unicode 字符串。 |
InitializeObjectAttributes | 初始化OBJECT_ATTRIBUTES类型的参数,以便后续调用 ZwCreateXxx 或 ZwOpenXxx 例程。 |
ZwCreateDirectoryObject | 创建或打开具有指定对象属性集的目录对象,并请求调用方一个或多个类型的访问。 返回目录对象的句柄。 |
ZwCreateFile | 创建或打开表示物理、逻辑或虚拟设备、目录、数据文件或卷的文件对象。 返回文件对象的句柄。 |
ZwCreateKey | 在注册表中创建或打开键对象,并返回密钥对象的句柄。 |
ZwDeleteKey | 在关闭密钥的最后一个句柄后,删除注册表中的现有打开键。 |
ZwMakeTemporaryObject | 重置打开对象的“永久”属性,以便在对象的引用计数变为零时删除该对象及其名称。 |
ZwClose | 释放打开对象的句柄,导致句柄变得无效,并递减对象句柄的引用计数。 |
PsGetVersion | 提供有关操作系统版本和内部版本号的信息。 |
ObGetObjectSecurity | 返回给定对象的缓冲安全描述符。 |
ObReleaseObjectSecurity | 释放 ObGetObjectSecurity 返回的安全描述符。 |
初始化驱动程序管理的队列
用于初始化驱动程序托管的内部队列。
功能 | 描述 |
---|---|
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 运行时方法。
发送到平台扩展插件(PEP)的通知类型包括:
初始化函数 | 描述 |
---|---|
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 电源管理框架(PoFx)的 ACPI 通知。 |
AcceptDeviceNotification | AcceptDeviceNotification 事件回调例程处理来自 Windows 电源管理框架(PoFx)的设备电源管理(DPM)通知。 |
AcceptProcessorNotification | AcceptProcessorNotification 事件回调例程处理来自 Windows 电源管理框架(PoFx)的处理器电源管理(PPM)通知。 |
PO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK | EnumerateInterruptSource 回调例程提供平台扩展插件 (PEP),其中包含有关中断源的信息。 |
PROCESSOR_HALT_ROUTINE | 停止回调例程将处理器转换为空闲状态。 |
PowerOnDumpDeviceCallback | PowerOnDumpDeviceCallback 回调例程打开故障转储设备。 |
电源管理框架 (PoFx) 例程
某些杂项 PoFx 例程和结构很可能最终出现在 Kernel-Mode 驱动程序体系结构文档集的电源管理部分中。
初始化函数 | 描述 |
---|---|
PoFxRegisterPlugin | PoFxRegisterPlugin 例程向 Windows 电源管理框架(PoFx)注册平台扩展插件(PEP)。 |
PoFxRegisterPluginEx | PoFxRegisterPluginEx 例程向 Windows 电源管理框架(PoFx)注册平台扩展插件(PEP)。 |
PoFxRegisterCoreDevice | PoFxRegisterCoreDevice 例程向 Windows 电源管理框架(PoFx)注册新的核心系统资源。 |
PoFxRegisterCrashdumpDevice | PoFxRegisterCrashdumpDevice 例程注册故障转储设备。 |
PoFxPowerOnCrashdumpDevice | PoFxPowerOnCrashdumpDevice 例程请求启用故障转储设备。 |
回调函数 | 描述 |
---|---|
POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS | EnumerateUnmaskedInterrupts 例程枚举中断源,其中断已取消屏蔽和启用。 |
POFXCALLBACKPLATFORMIDLEVETO | PlatformIdleVeto 例程递增或递减平台空闲状态否决代码的否决计数。 |
POFXCALLBACKPROCESSORHALT | ProcessorHalt 例程准备要停止的处理器。 |
POFXCALLBACKPROCESSORIDLEVETO | ProcessorIdleVeto 例程递增或递减处理器空闲状态否决代码的否决计数。 |
POFXCALLBACKREQUESTCOMMON | RequestCommon 例程是一个泛型请求处理程序。 |
POFXCALLBACKREQUESTINTERRUPT | RequestInterrupt 例程请求操作系统重播在硬件平台处于低功率状态时可能丢失的边缘触发的中断。 |
POFXCALLBACKREQUESTWORKER | RequestWorker 例程由平台扩展插件(PEP)调用,以通知 Windows 电源管理框架(PoFx)平台扩展插件(PEP)具有代表指定设备提交的工作请求。 |
POFXCALLBACKCRITICALRESOURCE | TransitionCriticalResource 例程更改核心系统组件的主动/非活动状态。 |
POFXCALLBACKUPDATEPLATFORMIDLESTATE | UpdatePlatformIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定平台空闲状态的属性。 |
POFXCALLBACKUPDATEPROCESSORIDLESTATE | UpdateProcessorIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定处理器空闲状态的属性。 |
ComponentCriticalTransitionCallback | ComponentCriticalTransitionCallback 回调例程处理 F0(完全打开)和低功率 Fx 组件电源状态之间的指定组件的转换。 |
Configuration Manager 例程
配置管理器例程使用 CmXxx 命名约定。
- CmCallbackGetKeyObjectID
- CmCallbackGetKeyObjectIDEx
- CmCallbackReleaseKeyObjectIDEx
- CmGetBoundTransaction
- CmGetCallbackVersion
- CmRegisterCallback
- CmRegisterCallbackEx
- CmSetCallbackObjectContext
- CmUnRegisterCallback
内核事务管理器 (KTM) 例程
本部分介绍内核事务管理器 (KTM) 提供的例程、结构和枚举。
事务管理器对象例程
本部分包括以下主题:
- TmRecoverTransactionManager
- ZwCreateTransactionManager
- ZwOpenTransactionManager
- ZwQueryInformationTransactionManager
- ZwRecoverTransactionManager
- ZwRollforwardTransactionManager
事务对象例程
本部分包括以下主题:
- TmCommitTransaction
- TmGetTransactionId
- TmIsTransactionActive
- TmRollbackTransaction
- ZwCommitTransaction
- ZwCreateTransaction
- ZwEnumerateTransactionObject
- ZwOpenTransaction
- ZwQueryInformationTransaction
- ZwRollbackTransaction
- ZwSetInformationTransaction
登记对象例程
本部分包括以下主题:
- TmCommitComplete
- TmCommitEnlistment
- TmCreateEnlistment
- TmDereferenceEnlistmentKey
- TmPrepareComplete
- TmPreprepareComplete
- 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 命名约定,按字母顺序列出。
以下执行支持例程保留供系统使用。 请勿在驱动程序中使用它们。
常规 | 更换 |
---|---|
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,请参阅 电源管理次要 IRP
Windows Management Instrumentation (WMI) IRP,请参阅 WMI 次要 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_MJ_PNP、IRP_MJ_READ、IRP_MJ_WRITE、IRP_MJ_SHUTDOWN或IRP_MJ_FLUSH_BUFFERS)的 IRP,其指针指向:I/O 应基于的较低驱动程序的设备对象。 包含要读取的数据或包含要写入的数据的缓冲区。 缓冲区的长度(以字节为单位)。 介质上的起始偏移量。 在请求的操作完成时,要设置为 Signaled 状态的事件对象。 调用的驱动程序可以返回状态信息的 I/O 状态块,调用者的 IoCompletion 例程可以访问它。 返回指向 IRP 的指针,以便调用方可以设置任何必要的次要函数代码,并在将 IRP 发送到目标驱动程序之前设置其 IoCompletion 例程。 |
IoBuildDeviceIoControlRequest | 使用可选的输入或输出缓冲区分配和设置指定主要函数代码(IRP_MJ_INTERNAL_DEVICE_CONTROL或IRP_MJ_DEVICE_CONTROL)的 IRP;指向较低驱动程序的设备对象的指针;在请求的操作完成时,要设置为 Signaled 状态的事件;以及要由接收 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 | 释放打开对象的句柄,导致句柄失效并递减对象句柄的引用计数。 |
接收器 DDI
本部分介绍接收器 DDI。 这些 DDI 使内核组件能够了解在计算机上创建和销毁的服务器接收器。 组件注册以接收这些事件的通知,并选择性地存储与每个接收器关联的状态。
上下文管理
这些 DDI 提供在接收器对象上分配和检索上下文结构的功能。 这样,驱动程序就可以为每个接收器附加每个孤岛的信息。
- PsAllocSiloContextSlot
- PsFreeSiloContextSlot
- PsCreateSiloContext
- PsInsertSiloContext
- PsReplaceSiloContext
- PsInsertPermanentSiloContext
- PsGetPermanentSiloContext
- PsMakeSiloContextPermanent
- PsGetSiloContext
- PsRemoveSiloContext
- PsReferenceSiloContext
- PsDereferenceSiloContext
- SILO_CONTEXT_CLEANUP_CALLBACK
线程
这些 DDI 提供为当前线程设置和检索接收器的功能。
- PsAttachSiloToCurrentThread
- PsDetachSiloFromCurrentThread
- PsGetCurrentSilo
- PsGetCurrentServerSilo
监测
这些 DDI 使驱动程序能够接收有关接收器创建和终止事件的通知。
- PsRegisterSiloMonitor
- PsUnregisterSiloMonitor
- PsStartSiloMonitor
- PsGetSiloMonitorContextSlot
- SILO_MONITOR_CREATE_CALLBACK
- SILO_MONITOR_TERMINATE_CALLBACK
助手
这些 DDI 有助于处理接收器对象。
- 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 | 释放一组从对 AllocateAdapterChannel 的调用中保存的映射寄存器,该寄存器由 IoMapTransfer 使用且总线主 DMA 传输完成。 |
IoAllocateController | 将设备对象连接到控制器对象,并调用驱动程序提供的 ControllerControl 例程,在控制器不忙后立即在设备控制器上执行 I/O 操作。 (此例程保留对指定设备的硬件控制器的独占访问权限。 |
IoFreeController | 释放控制器对象,前提是所有排队到当前 IRP 控制器的设备操作都已完成。 |
IoStartTimer | 为给定设备对象启用计时器,并此后每秒调用驱动程序提供的 IoTimer 例程一次。 |
IoStopTimer | 禁用给定设备对象的计时器,以便除非驱动程序重新启用计时器,否则不会调用驱动程序提供的 IoTimer 例程。 |
KeSetTimer | 设置计时器对象将设置为信号状态的绝对或相对间隔,并选择性地提供在间隔到期后要执行的计时器 DPC。 |
KeSetTimerEx | 设置计时器对象将设置为 Signaled 状态的绝对或相对间隔,可以选择提供在间隔到期时要执行的计时器 DPC,并选择性地为计时器提供定期间隔。 |
KeCancelTimer | 在传递给 KeSetTimer 的间隔过期之前取消计时器对象;取消计时器 DPC 的排队,如果已设置计时器间隔,则过期。 |
KeReadStateTimer | 返回给定计时器对象是否设置为 Signaled 状态。 |
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 的可取消状态或从驱动程序的“取消取消”例程释放取消旋转锁时,释放取消旋转锁。 |
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 | 如果给定的计时器对象设置为 Signaled 状态,则返回 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 | 设置计时器对象将设置为 Signaled 状态的绝对或相对间隔,并选择性地提供在间隔到期时要执行的计时器 DPC。 |
KeSetTimerEx | 设置计时器对象将设置为 Signaled 状态的绝对或相对间隔。 (可选)提供在间隔到期时要执行的计时器 DPC,以及计时器的定期间隔。 |
KeCancelTimer | 在传递给 KeSetTimer 的间隔过期之前取消计时器对象。 在计时器间隔(如果有)到期之前取消计时器 DPC 排队。 |
KeReadStateTimer | 如果给定的计时器对象设置为 Signaled 状态,则返回 TRUE。 |
KeSetEvent | 返回给定事件对象的上一个状态,并将事件(如果尚未发出信号)设置为 Signaled 状态。 |
KeClearEvent | 将事件重置为 Not-Signaled 状态。 |
KeResetEvent | 返回事件对象的上一状态,并将事件重置为 Not-Signaled 状态。 |
KeReadStateEvent | 返回给定事件对象的当前状态(Signaled 为非零或 Not-Signaled为零)。 |
ExAcquireFastMutex | 获取初始化的快速互斥体,在将调用方置于等待状态后,直到获取它,并将调用线程所有权设置为禁用了 APC。 |
ExTryToAcquireFastMutex | 为禁用 APC 的调用方立即获取给定的快速互斥体,或返回 FALSE。 |
ExReleaseFastMutex | 释放使用 ExAcquireFastMutex 或 ExTryToAcquireFastMutex 获取的快速互斥体所有权。 |
ExAcquireFastMutexUnsafe | 获取初始化的快速互斥体,可能是将调用方置于等待状态,直到获取它。 |
ExReleaseFastMutexUnsafe | 释放使用 ExAcquireFastMutexUnsafe 获取的快速互斥体所有权。 |
KeReleaseMutex | 释放给定互斥体对象,指定调用方在 KeReleaseMutex 返回互斥体状态的先前值(信号的零;否则为 Not-Signaled)后立即调用 KeWaitXxx 例程之一。 |
KeReadStateMutex | 返回给定互斥体对象的当前状态(一个用于 Signaled 或 Not-Signaled的任何其他值)。 |
KeReleaseSemaphore | 释放给定信号灯对象。 如果发布将信号灯设置为 Signaled 状态,则为等待线程提供(运行时)优先级提升。 按给定值扩充信号量计数,并指定调用方在 KeReleaseSemaphore 返回后是否立即调用其中一个 KeWaitXxx 例程。 |
KeReadStateSemaphore | 返回给定信号量对象的当前状态(Not-Signaled 的零或 Signaled 的正值)。 |
KeWaitForSingleObject | 将当前线程置于可警报或不可变的等待状态,直到给定调度程序对象设置为 Signaled 状态或(可选),直到等待超时。 |
KeWaitForMutexObject | 将当前线程置于可警报或不可变的等待状态,直到给定的互斥体设置为信号状态或(可选),直到等待超时。 |
KeWaitForMultipleObjects | 将当前线程置于可警报或不可停止的等待状态,直到任何一个或多个调度程序对象都设置为信号状态或(可选),直到等待超时。 |
PsGetCurrentThread | 返回指向当前线程的指针。 |
KeGetCurrentThread | 返回指向表示当前线程的不透明线程对象的指针。 |
IoGetCurrentProcess | 返回指向当前线程进程的指针。 |
PsGetCurrentProcess | 返回指向当前线程进程的指针。 |
KeEnterCriticalRegion | 在请求当前 I/O 操作的用户模式线程的上下文中,暂时禁用正常内核 APC 的传递。 仍然提供特殊的内核模式 APC。 |
KeLeaveCriticalRegion | 尽快重新启用对 KeEnterCriticalRegion 的调用所禁用的正常内核模式 APC 的传递。 |
KeAreApcsDisabled | 如果禁用正常内核模式 APC,则返回 TRUE。 |
KeSaveFloatingPointState | 保存当前线程的非易失浮点上下文,以便调用方可以执行自己的浮点操作。 |
KeRestoreFloatingPointState | 还原使用 KeSaveFloatingPointState 保存的上一个非易失性浮点上下文。 |
ZwSetInformationThread | 设置调用方具有句柄的给定线程的优先级。 |
PsGetCurrentProcessId | 返回当前进程的系统分配标识符。 |
PsGetCurrentThreadId | 返回当前线程的系统分配标识符。 |
PsSetCreateProcessNotifyRoutine | 注册一个最高级别驱动程序的回调例程,每当创建新进程或删除现有进程时,该例程随后将执行该例程。 |
PsSetCreateThreadNotifyRoutine | 注册一个最高级别驱动程序的回调例程,每当创建新线程或删除现有线程时,该例程随后将执行该例程。 |
PsSetLoadImageNotifyRoutine | 为最高级别的系统分析驱动程序注册回调例程。 每当加载新映像以供执行时,将随后执行回调例程。 |
内存分配和缓冲区管理
本部分介绍内核模式驱动程序调用以分配内存和管理 I/O 缓冲区的 Windows 内核例程和宏。
Windows 内存管理器提供内核模式驱动程序用于分配和管理内存的一组例程。 这些例程的名称以前缀 Mm 开头。
本部分包含 MmXxx 例程和内存管理宏的参考页。 这些参考页按字母顺序列出。
有关这些例程和宏的功能的概述,请参阅内存分配和缓冲区管理。 有关内核模式驱动程序的内存管理支持简介,请参阅 Windows 驱动程序的内存管理。
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
- 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 | 删除非分页的 lookaside 列表。 |
ExInitializePagedLookasideList | 初始化分页内存的外观列表。 成功初始化列表后,可以分配固定大小的块并将其释放到 lookaside 列表。 |
ExAllocateFromPagedLookasideList | 从分页内存中的指定外观列表中删除第一个条目。 如果外观列表为空,则从分页池分配一个条目。 |
ExFreeToPagedLookasideList | 返回分页内存中指定外观列表的条目。 如果列表已达到其最大大小,则返回分页池的条目。 |
ExDeletePagedLookasideList | 删除分页查找列表。 |
MmQuerySystemsize | 返回当前平台上可用内存量的估计值(小、中或大)。 |
MmIsThisAnNtAsSystem | 如果计算机作为服务器运行,则返回 TRUE。 如果此例程返回 TRUE,则调用方可能需要更多资源来处理 I/O 请求,并且计算机是服务器,因此可能有更多的可用资源。 |
长期内部驱动程序缓冲区
长期缓冲区管理例程由内核模式驱动程序调用,以分配长期驱动程序内部缓冲区。
功能 | 描述 |
---|---|
MmAllocateContiguousMemory | 在非分页池中分配一系列物理上连续的缓存对齐内存。 |
MmFreeContiguousMemory | 在驱动程序卸载时释放一系列物理连续内存。 |
MmAllocateNonCachedMemory | 在非分页系统空间(池)中分配非缓存和缓存对齐内存的虚拟地址范围。 |
MmFreeNonCachedMemory | 在驱动程序卸载时,在非分页系统空间中释放非缓存内存的虚拟地址范围。 |
MmAllocateMappingAddress | 保留一系列虚拟地址空间,以后可以使用 MmMapLockedPagesWithReservedMapping 进行映射。 |
MmFreeMappingAddress | 释放 MmAllocateMappingAddress 保留的保留内存地址。 |
AllocateCommonBuffer | 分配和映射同时从处理器和设备访问的逻辑连续内存区域,给定对适配器对象的访问、要分配的内存区域请求的长度,以及返回分配区域的起始逻辑和虚拟地址的变量的访问权限。 如果分配了请求的长度,则返回 TRUE。 可用于连续总线主 DMA,也可以使用系统 DMA 控制器的自动初始化模式对系统 DMA 使用系统 DMA。 |
FreeCommonBuffer | 释放分配的通用缓冲区并取消映射,给定对适配器对象的访问权限、长度以及驱动程序卸载时要释放的区域起始逻辑和虚拟地址。 参数必须与在对 AllocateCommonBuffer 的调用中传递的参数匹配。 |
缓冲数据和缓冲区初始化
缓冲数据和缓冲区初始化例程由内核模式驱动程序调用,以管理缓冲数据或初始化驱动程序分配的缓冲区。
功能 | 描述 |
---|---|
RtlCompareMemory | 比较数据,给定指向调用方提供的缓冲区的指针以及比较的长度(以字节为单位)。 返回相等的字节数。 |
RtlCopyMemory | 将数据从一个调用方提供的缓冲区复制到另一个缓冲区,给定指向缓冲区的指针以及要复制的长度(以字节为单位)。 |
RtlMoveMemory | 将数据从一个调用方提供的内存范围复制到另一个,给定指向两个范围的基数的指针和要复制的长度(以字节为单位)。 |
RtlFillMemory | 使用指定的 UCHAR 值填充调用方提供的缓冲区,给定指向缓冲区的指针和要填充的长度(以字节为单位)。 |
RtlZeroMemory | 使用零填充缓冲区,给定指向调用方提供的缓冲区的指针以及要填充的长度(以字节为单位)。 |
RtlStoreUshort | 将 USHORT 值存储在给定地址,避免对齐错误。 |
RtlRetrieveUshort | 检索位于给定地址的 USHORT 值,避免对齐错误,并将该值存储在假定为对齐的给定地址。 |
RtlStoreUlong | 将 ULONG 值存储在给定地址,避免对齐错误。 |
RtlRetrieveUlong | 检索给定地址处的 ULONG 值,避免对齐错误,并将该值存储在假定为对齐的给定地址。 |
地址映射和 MDL
地址映射和 MDL 管理例程由内核模式驱动程序调用,用于管理地址映射和内存描述符列表(MDL)。
功能 | 描述 |
---|---|
IoAllocateMdl | 分配足够大的 MDL 来映射调用方提供的起始地址和长度;(可选)将 MDL 与给定的 IRP 相关联。 |
IoBuildPartialMdl | 为指定的起始虚拟地址和给定源 MDL 中的长度(以字节为单位)生成 MDL。 将大型传输请求拆分为多个较小的传输的驱动程序可以调用此例程。 |
IoFreeMdl | 释放调用方分配的给定 MDL。 |
MmAllocatePagesForMdlEx | 为 MDL 分配非分页的物理内存页。 |
MmBuildMdlForNonPagedPool | 填写给定 MDL 的相应物理地址,该地址指定非分页池中的一系列虚拟地址。 |
MmCreateMdl | 过时。 分配和初始化一个 MDL,该 MDL 描述由给定的虚拟地址和长度(以字节为单位)指定的缓冲区;返回指向 MDL 的指针。 |
MmGetMdlByteCount | 返回由给定 MDL 映射的缓冲区的长度(以字节为单位)。 |
MmGetMdlByteOffset | 返回给定 MDL 描述的缓冲区页中的字节偏移量。 |
MmGetMdlVirtualAddress | 返回给定 MDL 描述的缓冲区的虚拟地址(可能无效);返回的地址(用作 MDL 中物理地址条目的索引)可以输入到 MapTransfer,以便用于使用 DMA 的驱动程序。 |
MmGetPhysicalAddress | 返回给定有效虚拟地址的相应物理地址。 |
MmGetSystemAddressForMdlSafe | 返回一个系统空间虚拟地址,该地址映射给定 MDL 所描述的物理页面,这些驱动程序的设备必须使用编程 I/O (PIO)。 如果不存在虚拟地址,则分配一个。 |
MmInitializeMdl | 初始化调用方创建的 MDL 以描述由给定虚拟地址和长度(以字节为单位)指定的缓冲区。 |
MmIsAddressValid | 返回是否在给定的虚拟地址执行读取或写入操作时发生页面错误。 |
MmMapIoSpace | 将物理地址范围映射到非分页系统空间中缓存的或未缓存的虚拟地址范围。 |
MmMapLockedPages | 过时。 将已锁定的物理页面(由给定 MDL 描述)映射到返回的虚拟地址范围。 |
MmMapLockedPagesWithReservedMapping | 使用 MmAllocateMappingAddress 映射已保留的虚拟地址范围。 |
MmPrepareMdlForReuse | 重新初始化调用方创建的 MDL 以重复使用。 |
MmProbeAndLockPages | 探测 MDL 中指定的用于特定访问的页,使页面驻留,并将其锁定在内存中;返回使用相应物理地址更新的 MDL。 (通常,只有最高级别的驱动程序调用此例程。 |
MmProtectMdlSystemAddress | 设置内存地址范围的保护类型。 |
MmSecureVirtualMemory | 保护内存地址范围,使其无法释放,并且无法限制其页面保护。 |
MmsizeOfMdl | 返回描述给定虚拟地址指定的缓冲区和长度(以字节为单位)的 MDL 所需的字节数。 |
MmUnlockPages | 解锁在 MDL 中指定的以前探测和锁定的页面。 |
MmUnmapIoSpace | 从物理地址范围取消映射虚拟地址范围。 |
MmUnmapLockedPages | 发布 MmMapLockedPages 设置的映射。 |
MmUnmapReservedMapping | 取消映射 MmMapLockedPagesWithReservedMapping 映射的虚拟地址范围。 |
MmUnsecureVirtualMemory | 不安全受 MmSecureVirtualMemory 保护的内存地址范围。 |
缓冲区和 MDL 管理
缓冲区和 MDL 管理宏由内核模式驱动程序调用,用于管理缓冲区和内存描述符列表(MDL)。
有关 MDL 的详细信息,请参阅 使用 MDL。
功能 | 描述 |
---|---|
ADDRESS_AND_SIZE_TO_SPAN_PAGES | 返回包含给定虚拟地址和大小(以字节为单位)所需的页数。 |
BYTE_OFFSET | 返回页面中给定虚拟地址的字节偏移量。 |
BYTES_TO_PAGES | 返回包含给定字节数所需的页数。 |
PAGE_ALIGN | 返回包含给定虚拟地址的页面的页对齐虚拟地址。 |
ROUND_TO_PAGES | 将给定大小(以字节为单位)向上舍入为页大小的倍数。 |
设备内存访问
设备内存访问宏由内核模式驱动程序调用,以访问其各自设备的内存映射硬件寄存器和 I/O 端口。
对于以下宏,XXX_REGISTER_XXX指示映射到系统内存地址空间的设备内存,而XXX_PORT_XXX指示 I/O 端口地址空间中的设备内存。
功能 | 描述 |
---|---|
EAD_PORT_UCHAR | 从给定的 I/O 端口地址读取 UCHAR 值。 |
READ_PORT_USHORT | 从给定的 I/O 端口地址读取 USHORT 值。 |
READ_PORT_ULONG | 从给定的 I/O 端口地址读取 ULONG 值。 |
READ_PORT_BUFFER_UCHAR | 将给定 I/O 端口中的 UCHAR 值的给定计数读入给定的缓冲区。 |
READ_PORT_BUFFER_USHORT | 将给定 I/O 端口中的 USHORT 值的给定计数读入给定缓冲区。 |
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 支持例程的摘要。
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
常规 | 更换 |
---|---|
ZwCancelTimer | 请改用 KeCancelTimer。 |
ZwCreateTimer | 请改用 KeInitializeTimer 或 KeInitializeTimerEx。 |
ZwOpenTimer | |
ZwSetTimer | 请改用 KeSetTimer。 |
NtRenameTransactionManager | 过时。 |
NtRenameTransactionManager 和 TmRenameTransactionManager 是同一例程的两个版本。 内核模式驱动程序不应调用 NtRenameTransactionManager。 应改为调用 TmRenameTransactionManager。
功能 | 描述 |
---|---|
NtRenameTransactionManager | NtRenameTransactionManager 例程更改存储在日志文件名称中包含的 CLFS 日志文件流中的事务管理器对象的标识。 |
NtSetInformationTransactionManager 不从内核模式代码调用此例程。 | |
ZwAllocateLocallyUniqueId | ZwAllocateLocallyUniqueId 例程分配本地唯一标识符(LUID)。 |
ZwAllocateVirtualMemory | ZwAllocateVirtualMemory 例程保留、提交或同时保留指定进程的用户模式虚拟地址空间中的页面区域。 |
ZwClose | ZwClose 例程关闭对象句柄。 |
ZwCreateDirectoryObject | ZwCreateDirectoryObject 例程创建或打开对象目录对象。 |
ZwCreateEvent | ZwCreateEvent 例程创建事件对象,将事件的初始状态设置为指定值,并打开具有指定所需访问权限的对象句柄。 |
ZwCreateFile | ZwCreateFile 例程创建一个新文件或打开现有文件。 |
ZwCreateKey | ZwCreateKey 例程创建新的注册表项或打开现有注册表项。 |
ZwCreateKeyTransacted | ZwCreateKeyTransacted 例程创建新的注册表项或打开现有注册表项,并将密钥与事务相关联。 |
ZwCreateSection | ZwCreateSection 例程创建节对象。 |
ZwDeleteFile | ZwDeleteFile 例程删除指定的文件。 |
ZwDeleteKey | ZwDeleteKey 例程从注册表中删除打开的键。 |
ZwDeleteValueKey | ZwDeleteValueKey 例程从注册表中的打开键中删除与名称匹配的值项。 如果不存在此类条目,则返回错误。 |
ZwDeviceIoControlFile | ZwDeviceIoControlFile 例程将控制代码直接发送到指定的设备驱动程序,导致相应的驱动程序执行指定的操作。 |
ZwDuplicateToken | ZwDuplicateToken 函数为复制现有令牌的新访问令牌创建句柄。 此函数可以创建主令牌或模拟令牌。 |
ZwEnumerateKey | ZwEnumerateKey 例程返回有关打开的注册表项的子项的信息。 |
ZwEnumerateValueKey | ZwEnumerateValueKey 例程获取有关打开键的值条目的信息。 |
ZwFlushBuffersFile | ZwFlushBuffersFile 例程由文件系统筛选器驱动程序调用,以将指定文件的刷新请求发送到文件系统。 |
ZwFlushBuffersFileEx | ZwFlushBuffersFileEx 例程由文件系统筛选器驱动程序调用,以向文件系统发送给定文件的刷新请求。 可以设置可选的刷新操作标志来控制如何将文件数据写入存储。 |
ZwFlushKey | ZwFlushKey 例程强制将注册表项提交到磁盘。 |
ZwFlushVirtualMemory | ZwFlushVirtualMemory 例程在指定进程的虚拟地址空间中刷新一系列虚拟地址,这些地址映射到数据文件(如果修改了数据文件)。 |
ZwFreeVirtualMemory | ZwFreeVirtualMemory 例程发布、取消提交或同时释放指定进程的虚拟地址空间中的页面区域。 |
ZwFsControlFile | ZwFsControlFile 例程将控制代码直接发送到指定的文件系统或文件系统筛选器驱动程序,从而导致相应的驱动程序执行指定的操作。 |
ZwLoadDriver | ZwLoadDriver 例程将驱动程序加载到系统中。 |
ZwLockFile | ZwLockFile 例程请求指定文件的字节范围锁。 |
ZwMakeTemporaryObject | ZwMakeTemporaryObject 例程更改对象的属性,使其成为临时属性。 |
ZwMapViewOfSection | ZwMapViewOfSection 例程将分区的视图映射到主题进程的虚拟地址空间。 |
ZwNotifyChangeKey | ZwNotifyChangeKey 例程允许驱动程序在注册表项更改时请求通知。 |
ZwOpenEvent | ZwOpenEvent 例程打开具有指定所需访问权限的现有命名事件对象的句柄。 |
ZwOpenFile | ZwOpenFile 例程将打开现有文件、目录、设备或卷。 |
ZwOpenKey | ZwOpenKey 例程将打开现有的注册表项。 |
ZwOpenKeyEx | ZwOpenKeyEx 例程将打开现有的注册表项。 |
ZwOpenKeyTransacted | ZwOpenKeyTransacted 例程将打开现有的注册表项,并将密钥与事务相关联。 |
ZwOpenKeyTransactedEx | ZwOpenKeyTransactedEx 例程将打开现有的注册表项,并将密钥与事务相关联。 |
ZwOpenProcess | ZwOpenProcess 例程打开进程对象的句柄,并设置对此对象的访问权限。 |
ZwOpenProcessTokenEx | ZwOpenProcessTokenEx 例程打开与进程关联的访问令牌。 |
ZwOpenSection | ZwOpenSection 例程为现有节对象打开句柄。 |
ZwOpenSymbolicLinkObject | ZwOpenSymbolicLinkObject 例程将打开现有的符号链接。 |
ZwOpenThreadTokenEx | ZwOpenThreadTokenEx 例程打开与线程关联的访问令牌。 |
ZwPowerInformation | ZwPowerInformation 例程设置或检索系统电源信息。 |
ZwQueryInformationThread | ZwQueryInformationThread 例程检索有关指定线程的信息,例如其页面优先级。 |
ZwQueryDirectoryFile | ZwQueryDirectoryFile 例程返回有关给定文件句柄指定的目录中文件的各种信息。 |
ZwQueryEaFile | ZwQueryEaFile 例程返回有关文件的扩展属性 (EA) 值的信息。 |
ZwQueryFullAttributesFile | ZwQueryFullAttributesFile 例程为指定文件提供网络开放信息。 |
ZwQueryInformationFile | ZwQueryInformationFile 例程返回有关文件对象的各种信息。 |
ZwQueryInformationToken | ZwQueryInformationToken 例程检索有关访问令牌的指定类型信息。 调用过程必须具有适当的访问权限才能获取信息。 |
ZwQueryKey | ZwQueryKey 例程提供有关注册表项类及其子项的数量和大小的信息。 |
ZwQueryObject | ZwQueryObject 例程提供有关提供的对象的信息。 |
ZwQueryQuotaInformationFile | ZwQueryQuotaInformationFile 例程检索与 FileHandle 参数指定的卷关联的配额条目。 |
ZwQuerySecurityObject | ZwQuerySecurityObject 例程检索对象的安全描述符的副本。 |
ZwQuerySymbolicLinkObject | ZwQuerySymbolicLinkObject 例程返回一个 Unicode 字符串,其中包含符号链接的目标。 |
ZwQueryValueKey | ZwQueryValueKey 例程返回注册表项的值项。 |
ZwQueryVirtualMemory | ZwQueryVirtualMemory 例程确定主题进程的虚拟地址空间中页面区域的状态、保护和类型。 |
ZwQueryVolumeInformationFile | ZwQueryVolumeInformationFile 例程检索与给定文件、目录、存储设备或卷关联的卷的相关信息。 |
ZwReadFile | ZwReadFile 例程从打开的文件读取数据。 |
ZwSetEaFile | ZwSetEaFile 例程设置文件的扩展属性 (EA) 值。 |
ZwSetEvent | ZwSetEvent 例程将事件对象设置为 Signaled 状态,并尝试满足尽可能多的等待。 |
ZwSetInformationFile | ZwSetInformationFile 例程更改有关文件对象的各种信息。 |
ZwSetInformationThread | ZwSetInformationThread 例程设置线程的优先级。 |
ZwSetInformationToken | ZwSetInformationToken 例程修改指定令牌中的信息。 调用过程必须具有适当的访问权限才能设置信息。 |
ZwSetInformationVirtualMemory | ZwSetInformationVirtualMemory 例程对进程的用户地址空间中的指定地址范围列表执行操作。 |
ZwSetQuotaInformationFile | ZwSetQuotaInformationFile 例程更改与 FileHandle 参数关联的卷的配额条目。 指定缓冲区中的所有配额条目都应用于卷。 |
ZwSetSecurityObject | ZwSetSecurityObject 例程设置对象的安全状态。 |
ZwSetValueKey | ZwSetValueKey 例程创建或替换注册表项的值项。 |
ZwSetVolumeInformationFile | ZwSetVolumeInformationFile 例程修改与给定文件、目录、存储设备或卷关联的卷的相关信息。 |
ZwTerminateProcess | ZwTerminateProcess 例程终止进程及其所有线程。 |
ZwUnloadDriver | ZwUnloadDriver 例程从系统卸载驱动程序。 请谨慎使用此例程。 (请参阅以下备注部分。 |
ZwUnlockFile | ZwUnlockFile 例程解锁文件中的字节范围锁。 |
ZwUnmapViewOfSection | ZwUnmapViewOfSection 例程从主题进程的虚拟地址空间取消映射节的视图。 |
ZwWaitForSingleObject | ZwWaitForSingleObject 例程等到指定对象达到 Signaled 状态。 还可以指定可选的超时。 |
ZwWriteFile | ZwWriteFile 例程将数据写入打开的文件。 |
辅助内核模式库例程和结构
辅助 Kernel-Mode 库使驱动程序能够访问内核模式子系统中不可用的某些系统功能。
AuxKlibInitialize 例程初始化辅助 Kernel-Mode 库。 使用此库的驱动程序必须在调用库的任何其他例程之前调用 AuxKlibInitialize。
- AuxKlibEnumerateSystemFirmwareTables
- AuxKlibGetBugCheckData
- AuxKlibGetImageExportDirectory
- AuxKlibGetSystemFirmwareTable
- AuxKlibInitialize
- AuxKlibQueryModuleInformation
- AUX_MODULE_BASIC_INFO
- AUX_MODULE_EXTENDED_INFO
- KBUGCHECK_DATA
处理器组兼容性库
支持适用于使用处理器组的内核模式驱动程序。 处理器组(ProcGrp)兼容性库允许编写为使用早期版本的 Windows 上运行的处理器组(不支持处理器组)的内核模式驱动程序。 当此驱动程序运行时,如果硬件平台支持这些组,则可以利用多个处理器组。 当同一驱动程序在早期版本的 Windows 上运行时,它仅限于单个处理器组,而不考虑硬件平台的功能。 若要使用 ProcGrp 库,驱动程序必须调用库初始化例程。 此外,必须为 WDK 中的 Windows 7 环境编译驱动程序,并且必须与 Procgrp.lib 链接。
ProcGrp 库旨在满足调用以下 KeXxx 例程的驱动程序的兼容性要求,但还必须在未实现这些例程的 Windows 版本上运行:
- KeGetCurrentProcessorNumberEx
- KeGetProcessorIndexFromNumber
- KeGetProcessorNumberFromIndex
- KeQueryActiveGroupCount
- KeQueryActiveProcessorCountEx
- KeQueryGroupAffinity
- KeQueryMaximumProcessorCount
- KeQueryMaximumProcessorCountEx
- KeQueryMaximumGroupCount
- KeSetSystemAffinityThreadEx
- KeSetSystemGroupAffinityThread
- KeRevertToUserAffinityThreadEx
- KeRevertToUserGroupAffinityThread
- KeSetTargetProcessorDpcEx
ProcGrp 库为前面的列表中的 KeXxx 例程实现包装函数。 如果库在 Windows 7 或 Windows Server 2008 R2 上运行,包装器函数只需调用相应的 KeXxx 例程。 包装函数的名称与这些 KeXxx 例程相同,其行为与它们所替换的 KeXxx 例程相同。
早期版本的 Windows 不支持处理器组,并且不实现上述列表中的 KeXxx 例程。 如果 ProcGrp 库链接到在这些早期版本的 Windows 上运行的驱动程序,则库初始化函数 WdmlibProcgrpInitialize 检测到操作系统不支持处理器组。 为了处理这种情况,每个包装器函数都包含相应的 KeXxx 例程的简化实现。 此实现仅支持一个处理器组,组号 0。 例如,KeQueryMaximumGroupCount 例程的包装函数始终返回一个计数。 对于另一个示例,KeGetCurrentProcessorNumberEx 例程的包装函数通过调用 KeGetCurrentProcessorNumber 例程来模拟此例程。 KeGetCurrentProcessorNumber 类似于 KeGetCurrentProcessorNumberEx,但缺少对处理器组的支持,在这种情况下,它的效果与仅支持一个处理器组的效果相同。
有关对 Windows 7 中处理器组的支持的详细信息,请参阅 WHDC 网站上的 支持超过 64 个处理器的白皮书 的系统。
ProcGrp 库包含在 Windows 7 版本的 WDK 中。 库函数在 Procgrp.h 头文件中声明,并在 Procgrp.lib 库文件中实现。
除了 KeXxx 包装器函数之外,ProcGrp 库还实现以下函数来初始化库:
- WdmlibProcgrpInitialize
DMA 库例程
驱动程序使用本节中所述的例程来执行直接内存访问(DMA)操作。 例程是通过指针访问的,不能直接按名称调用。
执行 DMA 操作的驱动程序使用 IoGetDmaAdapter 获取指向设备的DMA_ADAPTER结构的指针。 结构的 DmaOperations 成员指向DMA_OPERATIONS结构,它是指向该设备物理设备对象的 DMA 例程的指针表。
功能 | 描述 |
---|---|
IoGetDmaAdapter | 返回指向适配器对象的指针,该对象表示驱动程序设备连接到的 DMA 通道或驱动程序的总线主适配器。 还返回驱动程序可以为每个 DMA 传输指定的映射寄存器的最大数目。 |
MmGetMdlVirtualAddress | 返回给定 MDL 描述的缓冲区的基虚拟地址。 返回的地址(用作 MDL 中物理地址条目的索引)可以输入到 MapTransfer。 |
MmGetSystemAddressForMdlSafe | 返回 MDL 描述的内存区域的基数的非分页系统空间虚拟地址。 它将 MDL 描述的物理页面映射到系统空间(如果尚未映射到系统空间)。 |
ADDRESS_AND_SIZE_TO_SPAN_PAGES | 返回由虚拟地址定义的虚拟范围和长度(以字节为单位)跨越的页数。 驱动程序可以使用此宏来确定传输请求是否必须拆分为部分传输。 |
AllocateAdapterChannel | 保留对 DMA 通道和映射注册设备的独占访问权限。 当通道和寄存器可用时,此例程调用驱动程序提供的 AdapterControl 例程,以通过系统 DMA 控制器或总线主适配器执行 I/O 操作。 |
AllocateCommonBuffer | 分配和映射可从处理器和设备同时访问的逻辑连续内存区域。 如果分配了请求的长度,此例程将返回 TRUE。 |
BuildMdlFromScatterGatherList | 生成对应于散点/收集列表的 MDL。 |
BuildScatterGatherList | 为设备准备散点/收集 DMA 的系统,并调用驱动程序提供的例程来执行 I/O 操作。 此函数提供与 GetScatterGatherList 相同的功能,只不过它使用驱动程序提供的缓冲区来保存散点/收集列表。 |
CalculateScatterGatherList | 计算存储内存缓冲区的散点/收集列表所需的缓冲区大小。 |
FlushAdapterBuffers | 强制将总线主适配器或系统 DMA 控制器的内部缓冲区中的任何数据写入内存或设备。 |
FreeAdapterChannel | 释放表示系统 DMA 通道的适配器对象,并选择性地释放任何分配的映射寄存器。 |
FreeCommonBuffer | 释放并取消映射以前分配的通用缓冲区。 参数必须与前面对 AllocateCommonBuffer 的调用中传递的参数匹配。 |
FreeMapRegisters | 释放从对 AllocateAdapterChannel 的调用中保存的一组映射寄存器。 驱动程序在一个或多个对 MapTransfer 的调用中使用寄存器后调用此例程,通过调用 FlushAdapterBuffers 刷新缓存,并完成总线主 DMA 传输。 |
GetDmaAlignment | 返回 DMA 控制器或设备的缓冲区对齐要求。 |
GetScatterGatherList | 为设备准备散点/收集 DMA 的系统,并调用驱动程序提供的例程来执行 I/O 操作。 对于支持散点/收集 DMA 的设备,此例程结合了 AllocateAdapterChannel 和 MapTransfer 的功能。 |
KeFlushIoBuffers | 将 MDL 描述的内存区域从所有处理器的缓存刷新到内存中。 |
MapTransfer | 为以前由 AllocateAdapterChannel 分配的适配器对象设置映射寄存器,以映射锁定缓冲区中的传输。 返回映射区域的逻辑地址,对于支持散点/收集的总线主设备,返回映射的字节数。 |
PutDmaAdapter | 释放以前由 IoGetDmaAdapter 分配的适配器对象。 |
PutScatterGatherList | 释放以前由 GetScatterGatherList 分配的映射寄存器和散点/收集列表。 |
ReadDmaCounter | 返回当前系统 DMA 操作期间尚未传输的字节数(在自动初始化模式下)。 |
PIO
功能 | 描述 |
---|---|
MmProbeAndLockPages | 探测 MDL 中指定的用于特定访问的页,使页面驻留,并将其锁定在内存中;返回使用相应物理地址更新的 MDL。 |
MmGetSystemAddressForMdlSafe | 返回一个系统空间虚拟地址,该地址映射给定 MDL 所描述的物理页面,这些驱动程序的设备必须使用 PIO。 如果不存在虚拟地址,则分配一个。 |
KeFlushIoBuffers | 将给定 MDL 描述的内存区域从所有处理器的缓存刷新到内存中。 |
MmUnlockPages | 解锁在 MDL 中指定的以前探测和锁定的页面。 |
MmMapIoSpace | 将物理地址范围映射到非分页系统空间中缓存的或未缓存的虚拟地址范围。 |
MmUnmapIoSpace | 从物理地址范围取消映射虚拟地址范围。 |
中断
功能 | 描述 |
---|---|
IoConnectInterrupt | 注册驱动程序的中断处理例程。 驱动程序应改用 IoConnectInterruptEx。 |
IoDisconnectInterrupt | 取消注册 IoConnectInterrupt 注册的中断处理例程。 |
IoConnectInterruptEx | 注册驱动程序的中断处理例程。 驱动程序可以为基于行的中断注册 InterruptService 例程,也可以为消息信号中断注册 InterruptMessageService 例程。 |
IoDisconnectInterruptEx | 注销 IoConnectInterruptEx 注册的中断处理例程。 |
IoInitializeDpcRequest | 将驱动程序提供的 DpcForIsr 例程与给定的设备对象相关联,以便 DpcForIsr 例程可以完成中断驱动的 I/O 操作。 |
KeSynchronizeExecution | 在给定指向中断对象的指针的情况下,将驱动程序提供的 SynchCritSection 例程的执行与与一组中断对象关联的 ISR 执行同步。 |
KeAcquireInterruptSpinLock | 获取将访问与中断的 ISR 同步的旋转锁。 |
KeReleaseInterruptSpinLock | 释放与中断的 ISR 同步访问的旋转锁。 |
KeRegisterNmiCallback | 注册每当发生不可屏蔽中断(NMI)时要调用的例程。 |
KeDeregisterNmiCallback | 取消注册 KeRegisterNmiCallback 注册的例程。 |
驱动程序管理的队列
功能 | 描述 |
---|---|
KeInitializeSpinLock | 初始化KSPIN_LOCK类型的变量。 初始化的旋转锁是 ExInterlockedXxxList 例程的必需参数。 |
InitializeListHead | 为驱动程序的内部队列设置队列标头,给定指向队列标头和队列的驱动程序提供的存储的指针。 初始化的队列标头是 ExInterlockedInsert/RemoveXxxList 例程的必需参数。 |
ExInterlockedInsertTailList | 使用旋转锁在双链接列表尾部插入一个条目,以确保对列表的多处理器安全访问和列表链接的原子修改。 |
ExInterlockedInsertHeadList | 使用旋转锁在多维链接列表的头插入一个条目,以确保对列表中的多处理器安全访问,以及列表中链接的原子修改。 |
ExInterlockedRemoveHeadList | 使用旋转锁从双链接列表的头中删除条目,以确保对列表中的列表进行多处理器安全访问,以及列表中链接的原子修改。 |
ExInterlockedPopEntryList | 使用旋转锁确保对列表进行多处理器安全访问,从单向链接列表的头中删除条目作为原子操作。 |
ExInterlockedPushEntryList | 使用旋转锁在单向链接列表的头插入条目作为原子操作,以确保对列表的多处理器安全访问。 |
IsListEmpty | 如果队列为空,则返回 TRUE。 (此类型的双重链接列表不受旋转锁的保护,除非调用方显式管理到排队条目的同步,并且调用方为其提供存储的初始化旋转锁。 |
InsertTailList | 将列表末尾的条目排入队列。 |
InsertHeadList | 将列表头的条目排入队列。 |
RemoveHeadList | 取消列表头的条目排队。 |
RemoveTailList | 取消列表末尾的条目的排队。 |
RemoveEntryList | 返回给定条目是否在给定列表中,如果给定条目为,则取消排队。 |
PushEntryList | 将条目插入队列。 (这种类型的单向链接列表不受旋转锁的保护,除非调用方显式管理对排队条目的同步,并且调用方为其提供存储的初始化旋转锁。 |
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 字符串,给定指向源字符串缓冲区的指针以及指向目标缓冲区的指针的调用方提供的存储地址。 (如果调用方不提供存储,此例程将分配目标缓冲区。还可以使用编译器提供的字符串操作例程将 ANSI 字符串转换为 Unicode。 |
RtlFreeUnicodeString | 释放包含 Unicode 字符串的缓冲区,给定 RtlAnsiStringToUnicodeString 返回的缓冲区的指针。 |
RtlUnicodeStringToAnsiString | 将缓冲的 Unicode 字符串转换为 ANSI 字符串,给定指向源字符串缓冲区的指针以及指向目标缓冲区的指针的调用方提供的存储的地址。 (如果调用方不提供存储,此例程将分配目标缓冲区。 |
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 字符串表示形式转换为其等效整数。 |
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
常规 | 更换 |
---|---|
RtlAssert | 请改用 ASSERT。 |
RtlGetCallersAddress | 请改用内部_ReturnAddress。 |
RtlInterlockedAndBits | 请改用 InterlockedAnd。 |
RtlInterlockedAndBitsDiscardReturn | 请改用 InterlockedAnd。 |
RtlInterlockedClearBits | 请改用 InterlockedAnd。 |
RtlInterlockedClearBitsDiscardReturn | 请改用 InterlockedAnd。 |
RtlInterlockedSetBits | 请改用 InterlockedOr。 |
RtlInterlockedSetBitsDiscardReturn | 请改用 InterlockedOr。 |
RtlInterlockedSetClearBits | |
RtlInterlockedXorBits | 请改用 InterlockedXor |
RtlWalkFrameChain |
Unicode 和 ANSI 字符的安全字符串函数
使用本节中的函数在内核模式驱动程序中操作 Unicode 和 ANSI 字符串。
每个函数在两个版本中可用:
支持双字节 Unicode 字符的 W 后缀版本。
支持单字节 ANSI 字符的 A 后缀版本。
如果使用安全字符串函数而不是 C 语言运行时库提供的字符串操作函数,则可以保护代码免受缓冲区溢出错误的影响,使代码不可信。 有关详细信息,请参阅 使用安全字符串函数。
功能 | 描述 |
---|---|
RtlStringCbCatW | RtlStringCbCatW 和 RtlStringCbCatA 函数连接两个字节计数字符串。 |
RtlStringCbCatExW | RtlStringCbCatExW 和 RtlStringCbCatExA 函数连接两个字节计数字符串。 |
RtlStringCbCatNW | RtlStringCbCatNW 和 RtlStringCbCatNA 函数连接两个字节计数字符串,同时限制追加字符串的大小。 |
RtlStringCbCatNExW | RtlStringCbCatNExW 和 RtlStringCbCatNExA 函数连接两个字节计数字符串,同时限制追加字符串的大小。 |
RtlStringCbCopyW | RtlStringCbCopyW 和 RtlStringCbCopyA 函数将字节计数的字符串复制到缓冲区中。 |
RtlStringCbCopyExW | RtlStringCbCopyExW 和 RtlStringCbCopyExA 函数将字节计数的字符串复制到缓冲区中。 |
RtlStringCbCopyNW | RtlStringCbCopyNW 和 RtlStringCbCopyNA 函数将字节计数的字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCbCopyNExW | RtlStringCbCopyNExW 和 RtlStringCbCopyNExA 函数将字节计数字符串复制到缓冲区,同时限制复制字符串的大小。 |
RtlStringCbLengthW | RtlStringCbLengthW 和 RtlStringCbLengthA 函数确定提供的字符串的长度(以字节为单位)。 |
RtlStringCbPrintfW | RtlStringCbPrintfW 和 RtlStringCbPrintfA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。 |
RtlStringCbPrintfExW | RtlStringCbPrintfExW 和 RtlStringCbPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。 |
RtlStringCbVPrintfW | RtlStringCbVPrintfW 和 RtlStringCbVPrintfA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。 |
RtlStringCbVPrintfExW | RtlStringCbVPrintfExW 和 RtlStringCbVPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式信息。 |
RtlStringCchCatW | RtlStringCchCatW 和 RtlStringCchCatA 函数连接两个字符计数字符串。 |
RtlStringCchCatExW | RtlStringCchCatExW 和 RtlStringCchCatExA 函数连接两个字符计数字符串。 |
RtlStringCchCatNW | RtlStringCchCatNW 和 RtlStringCchCatNA 函数连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCatNExW | RtlStringCchCatNExW 和 RtlStringCchCatNExA 函数连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCopyW | RtlStringCchCopyW 和 RtlStringCchCopyA 函数将以 null 结尾的源字符串复制到指定长度的目标缓冲区中。 |
RtlStringCchCopyExW | RtlStringCchCopyExW 和 RtlStringCchCopyExA 函数将字符计数的字符串复制到缓冲区中。 |
RtlStringCchCopyNW | RtlStringCchCopyNW 和 RtlStringCchCopyNA 函数将字符计数字符串复制到缓冲区,同时限制复制字符串的大小。 |
RtlStringCchCopyNExW | RtlStringCchCopyNExW 和 RtlStringCchCopyNExA 函数将字符计数字符串复制到缓冲区,同时限制复制字符串的大小。 |
RtlStringCchLengthW | RtlStringCchLengthW 和 RtlStringCchLengthA 函数确定提供的字符串的长度(以字符为单位)。 |
RtlStringCchPrintfW | RtlStringCchPrintfW 和 RtlStringCchPrintfA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。 |
RtlStringCchPrintfExW | RtlStringCchPrintfExW 和 RtlStringCchPrintfExA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。 |
RtlStringCchVPrintfW | RtlStringCchVPrintfW 和 RtlStringCchVPrintfA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。 |
RtlStringCchVPrintfExW | RtlStringCchVPrintfExW 和 RtlStringCchVPrintfExA 函数创建字符计数的文本字符串,其格式基于提供的格式信息。 |
RtlUnalignedStringCbLength | RtlUnalignedStringCbLengthW 函数是 RtlStringCbLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。 |
RtlUnalignedStringCchLengthW | RtlUnalignedStringCchLengthW 函数是 RtlStringCchLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。 |
UNICODE_STRING结构的安全字符串函数
使用本节中的函数操作内核模式驱动程序中UNICODE_STRING结构中的字符串。
如果使用安全字符串函数而不是 C 语言运行时库提供的字符串操作函数,则可以保护代码免受缓冲区溢出错误的影响,使代码不可信。 有关安全字符串函数的详细信息,请参阅 使用安全字符串函数。
功能 | 描述 |
---|---|
RtlStringCbCopyUnicodeString | RtlStringCbCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlStringCbCopyUnicodeStringEx | RtlStringCbCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlStringCchCopyUnicodeString | RtlStringCchCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlStringCchCopyUnicodeStringEx | RtlStringCchCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlUnicodeStringCat | RtlUnicodeStringCat 函数连接UNICODE_STRING结构中包含的两个字符串。 |
RtlUnicodeStringCatEx | RtlUnicodeStringCatEx 函数连接UNICODE_STRING结构中包含的两个字符串。 |
RtlUnicodeStringCatString | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCatString 函数将连接两个字符串。 |
RtlUnicodeStringCatStringEx | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCatStringEx 函数将连接两个字符串。 |
RtlUnicodeStringCbCatN | RtlUnicodeStringCbCatN 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCatNEx | RtlUnicodeStringCbCatNEx 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCatStringN | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringN 函数连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCbCatStringNEx | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringNEx 函数连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCbCopyN | RtlUnicodeStringCbCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCopyNEx | RtlUnicodeStringCbCopyNEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCopyStringN | RtlUnicodeStringCbCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCopyStringNEx | RtlUnicodeStringCbCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCatN | RtlUnicodeStringCchCatN 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCatNEx | RtlUnicodeStringCchCatNEx 函数连接两个字符串,这些字符串包含在UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCatStringN | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringN 函数连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCchCatStringNEx | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringNEx 函数将连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCchCopyN | RtlUnicodeStringCchCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCopyNEx | RtlUnicodeStringCchCopyNEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCopyStringN | RtlUnicodeStringCchCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCopyStringNEx | RtlUnicodeStringCchCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCopy | RtlUnicodeStringCopy 函数将字符串从一个UNICODE_STRING结构复制到另一个结构。 |
RtlUnicodeStringCopyEx | RtlUnicodeStringCopyEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构。 |
RtlUnicodeStringCopyString | RtlUnicodeStringCopyString 函数将字符串复制到UNICODE_STRING结构中。 |
RtlUnicodeStringCopyStringEx | RtlUnicodeStringCopyStringEx 函数将字符串复制到UNICODE_STRING结构中。 |
RtlUnicodeStringInit | RtlUnicodeStringInit 函数初始化UNICODE_STRING结构。 |
RtlUnicodeStringInitEx | RtlUnicodeStringInitEx 函数初始化UNICODE_STRING结构。 |
RtlUnicodeStringPrintf | RtlUnicodeStringPrintf 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。 |
RtlUnicodeStringPrintfEx | RtlUnicodeStringPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。 |
RtlUnicodeStringValidate | RtlUnicodeStringValidate 函数验证UNICODE_STRING结构的内容。 |
RtlUnicodeStringValidateEx | RtlUnicodeStringValidateEx 函数验证UNICODE_STRING结构的内容。 |
RtlUnicodeStringVPrintf | RtlUnicodeStringVPrintf 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。 |
RtlUnicodeStringVPrintfEx | RtlUnicodeStringVPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。 |
安全整数库例程
本部分介绍驱动程序的安全整数函数。 这些函数在 WDK 的 Ntintsafe.h 头文件中定义为内联函数。 安全整数函数旨在帮助驱动程序避免算术溢出错误。 这些函数分为两组:第一个将整数值从一种类型转换为另一种类型,第二种类型执行数学函数。 有关这些函数的详细信息,请参阅使用安全整数函数。
Windows SDK 中的 Intsafe.h 头文件定义了一组类似的安全整数函数供应用程序使用。 有关此版本的安全整数函数的详细信息,请参阅 Intsafe.h 函数。
数据转换
功能 | 描述 |
---|---|
InterlockedExchange | 将 LONG 类型的变量设置为给定值作为原子操作;返回变量的原始值。 |
RtlConvertLongToLargeInteger | 将给定的 LONG 值转换为LARGE_INTEGER值。 |
RtlConvertUlongToLargeInteger | 将给定的 ULONG 值转换为LARGE_INTEGER值。 |
RtlTimeFieldsToTime | 将TIME_FIELDS结构中的信息转换为系统时间。 |
RtlTimeToTimeFields | 将系统时间值转换为缓冲TIME_FIELDS值。 |
ExSystemTimeToLocalTime | 将当前区域设置的时区偏差添加到 GMT 系统时间,并将其转换为本地时间。 |
ExLocalTimeToSystemTime | 从本地时间减去时区偏差,将其转换为 GMT 系统时间。 |
RtlAnsiStringToUnicodeString | 将缓冲的 ANSI 字符串转换为 Unicode 字符串,给定指向源字符串缓冲区的指针以及指向目标缓冲区的指针的调用方提供的存储地址。 (如果调用方不提供存储,此例程将分配目标缓冲区。 |
RtlUnicodeStringToAnsiString | 将缓冲的 Unicode 字符串转换为 ANSI 字符串,给定指向源字符串缓冲区的指针以及指向目标缓冲区的指针的调用方提供的存储的地址。 (如果调用方不提供存储,此例程将分配目标缓冲区。 |
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 因用户引起的错误而失败的设备对象,例如为请求的操作提供不正确的媒体或更改媒体,然后再完成请求的操作。 (文件系统驱动程序使用关联的设备对象向用户发送对话框;然后用户可以更正错误或重试操作。 |
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 检查回调例程集中删除设备驱动程序的回调例程。 |
IOCTLs
IOCTL_SYSENV_ENUM_VARIABLES 返回有关使用 SysEnv 设备的系统环境变量的信息。 |
IOCTL_SYSENV_GET_VARIABLE 使用 SysEnv 设备获取指定系统环境变量的值。 |
IOCTL_SYSENV_QUERY_VARIABLE_INFO IOCTL_SYSENV_QUERY_VARIABLE_INFO返回有关使用 SysEnv 设备的系统环境变量的信息。 |
IOCTL_SYSENV_SET_VARIABLE 使用 SysEnv 设备设置指定系统环境变量的值。 |
枚举
BDCB_CALLBACK_TYPE BDCB_CALLBACK_TYPE枚举指定传递给BOOT_DRIVER_CALLBACK_FUNCTION例程的回调是状态更新还是启动启动驱动程序初始化通知。 |
BDCB_CLASSIFICATION BDCB_CLASSIFICATION枚举列出了启动启动映像的不同分类。 |
BDCB_STATUS_UPDATE_TYPE BDCB_STATUS_UPDATE_TYPE枚举列出了启动驱动程序回调状态更新的类型。 |
BOUND_CALLBACK_STATUS BOUND_CALLBACK_STATUS枚举指示 BoundCallback 函数如何处理用户模式边界异常。 |
BUS_DATA_TYPE _BUS_DATA_TYPE枚举(miniport.h)定义指示总线配置空间类型的值。 |
BUS_DATA_TYPE _BUS_DATA_TYPE枚举(ntddk.h)定义指示总线配置空间类型的值。 |
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 本主题介绍HAL_APIC_DESTINATION_MODE枚举(ntddk.h)。 |
HAL_QUERY_INFORMATION_CLASS HAL_QUERY_INFORMATION_CLASS枚举仅用于系统使用。 请勿使用。 |
HAL_SET_INFORMATION_CLASS _HAL_SET_INFORMATION_CLASS枚举定义为内部使用的 pHalSetSystemInformation 回调函数使用的值。 |
HARDWARE_COUNTER_TYPE HARDWARE_COUNTER_TYPE枚举指定硬件计数器的类型。 |
IMAGE_POLICY_ENTRY_TYPE 不支持_IMAGE_POLICY_ENTRY_TYPE枚举。 |
IMAGE_POLICY_ID 不支持_IMAGE_POLICY_ID枚举。 |
INTERFACE_TYPE _INTERFACE_TYPE枚举(miniport.h)定义指示发布接口的总线驱动程序类型的值。 |
INTERFACE_TYPE _INTERFACE_TYPE枚举(wdm.h)定义指示发布接口的总线驱动程序类型的值。 |
IO_ACCESS_MODE 定义计划文件 I/O(SFIO)的访问模式类型。 |
IO_ACCESS_MODE _IO_ACCESS_MODE定义计划文件 I/O(SFIO)的访问模式类型。 |
IO_ACCESS_TYPE 定义计划文件 I/O(SFIO)的访问权限。 |
IO_ACCESS_TYPE _IO_ACCESS_TYPE定义计划文件 I/O(SFIO)的访问权限。 |
IO_ALLOCATION_ACTION IO_ALLOCATION_ACTION枚举类型用于指定 AdapterControl 和 ControllerControl 例程的返回值。 |
IO_CONTAINER_INFORMATION_CLASS IO_CONTAINER_INFORMATION_CLASS枚举包含常量,这些常量指示内核模式驱动程序可以请求的系统信息的类。 |
IO_CONTAINER_NOTIFICATION_CLASS IO_CONTAINER_NOTIFICATION_CLASS枚举包含常量,这些常量指示内核模式驱动程序可以注册以接收通知的事件类。 |
IO_NOTIFICATION_EVENT_CATEGORY 详细了解:IO_NOTIFICATION_EVENT_CATEGORY枚举 |
IO_PAGING_PRIORITY IO_PAGING_PRIORITY枚举描述分页 I/O IRP 的优先级值。 |
IO_PRIORITY_HINT IO_PRIORITY_HINT枚举类型指定 IRP 的优先级提示。 |
IO_SESSION_EVENT IO_SESSION_EVENT枚举指示驱动程序接收通知的会话事件的类型。 |
IO_SESSION_STATE IO_SESSION_STATE枚举包含指示用户会话的当前状态的常量。 |
IOMMU_DEVICE_CREATION_CONFIGURATION_TYPE 描述IOMMU_DMA_DEVICE创建时使用的配置类型,具体取决于设备类型和系统。 |
IOMMU_DMA_DOMAIN_TYPE 描述可以通过DMA_IOMMU_INTERFACE_EX创建和交互的域类型。 |
IOMMU_DMA_LOGICAL_ALLOCATOR_TYPE IOMMU_DMA_LOGICAL_ALLOCATOR_TYPE枚举指示IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG结构中描述的逻辑分配器的类型。 |
IOMMU_MAP_PHYSICAL_ADDRESS_TYPE IOMMU_MAP_PHYSICAL_ADDRESS_TYPE枚举指示IOMMU_MAP_PHYSICAL_ADDRESS结构中描述的物理地址的格式。 |
IRQ_DEVICE_POLICY _IRQ_DEVICE_POLICY枚举(miniport.h)类型指示用于将设备中断分配给不同处理器的操作系统策略。 |
IRQ_DEVICE_POLICY _IRQ_DEVICE_POLICY枚举(wdm.h)类型指示用于将设备中断分配给不同处理器的操作系统策略。 |
IRQ_PRIORITY _IRQ_PRIORITY枚举(miniport.h)类型指示系统应为设备中断提供服务的优先级。 |
IRQ_PRIORITY _IRQ_PRIORITY枚举(wdm.h)类型指示系统应为设备的中断提供服务的优先级。 |
KBUGCHECK_CALLBACK_REASON KBUGCHECK_CALLBACK_REASON枚举类型指定执行 bug 检查回调的情况。 |
KBUGCHECK_DUMP_IO_TYPE KBUGCHECK_DUMP_IO_TYPE枚举类型标识故障转储文件中数据节的类型。 |
KD_CALLBACK_ACTION 本主题介绍KD_CALLBACK_ACTION枚举(ntddk.h)。 |
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 _KINTERRUPT_MODE枚举(miniport.h)类型指示中断是级别触发还是边缘触发。 |
KINTERRUPT_MODE _KINTERRUPT_MODE枚举 (wdm.h) 类型指示中断是级别触发还是边缘触发。 |
KINTERRUPT_POLARITY _KINTERRUPT_POLARITY枚举(miniport.h)包含指示设备如何向中断行发出中断请求信号的值。 |
KINTERRUPT_POLARITY _KINTERRUPT_POLARITY枚举(wdm.h)包含指示设备如何向中断行发出中断请求信号的值。 |
KTMOBJECT_TYPE KTMOBJECT_TYPE枚举标识 KTM 支持的对象类型。 |
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 本主题介绍PCI_EXPRESS_ASPM_CONTROL枚举(ntddk.h)。 |
PCI_EXPRESS_ASPM_SUPPORT 本主题介绍PCI_EXPRESS_ASPM_SUPPORT枚举。 |
PCI_EXPRESS_ASPM_SUPPORT 本主题介绍PCI_EXPRESS_ASPM_SUPPORT枚举(ntddk.h)。 |
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 本主题介绍PCI_EXPRESS_L1_EXIT_LATENCY枚举(ntddk.h)。 |
PCI_EXPRESS_LINK_SUBSTATE 本主题介绍PCI_EXPRESS_LINK_SUBSTATE枚举。 |
PCI_EXPRESS_LINK_SUBSTATE 本主题介绍PCI_EXPRESS_LINK_SUBSTATE枚举(ntddk.h)。 |
PCI_EXPRESS_MAX_PAYLOAD_SIZE 本主题介绍PCI_EXPRESS_MAX_PAYLOAD_SIZE枚举(ntddk.h)。 |
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_EFFECTIVE_POWER_MODE PO_EFFECTIVE_POWER_MODE枚举常量指示系统正在运行的有效电源模式。 |
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枚举类型指定 Configuration Manager 传递给 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枚举类型指示处理工作项的系统工作线程的类型。 |
功能
__mulh |
__RtlpMultiply128 |
__RtlpUnsignedMultiply128 |
__umulh |
_BitTest64 本主题介绍_BitTest64函数。 |
_BitTest64 _BitTest64函数... |
_BitTestAndComplement64 本主题介绍_BitTestAndComplement64函数。 |
_BitTestAndComplement64 _BitTestAndComplement64函数... |
_BitTestAndReset64 本主题介绍_BitTestAndReset64函数。 |
_BitTestAndReset64 _BitTestAndReset64函数... |
_BitTestAndSet64 本主题介绍_BitTestAndSet64函数。 |
_BitTestAndSet64 _BitTestAndSet64函数... |
_ReadWriteBarrier 描述 ReadWriteBarrier~r1 函数(miniport.h)。 |
_ReadWriteBarrier 描述 ReadWriteBarrier~r2 函数 (wdm.h)。 |
_WHEA_SIGNAL_HANDLER_OVERRIDE_CALLBACK 本主题介绍_WHEA_SIGNAL_HANDLER_OVERRIDE_CALLBACK回调函数。 |
ALLOCATE_FUNCTION_EX 当客户端从空的 lookaside 列表中请求条目时,LookasideListAllocateEx 例程将为新的 lookaside 列表条目分配存储。 |
AppendTailList AppendTailList 例程将LIST_ENTRY结构的双重链接列表追加到另一个LIST_ENTRY结构的双链接列表的尾部。 |
ARM64_SYSREG_CRM 返回给定 ARM 系统寄存器的 CRn 字段。 |
ARM64_SYSREG_CRN 了解该方法如何返回给定 ARM 系统寄存器的 CRn 字段。 |
ARM64_SYSREG_OP1 返回给定 ARM 系统寄存器的 op1 字段。 |
ARM64_SYSREG_OP2 返回给定 ARM 系统寄存器的 op2 字段。 |
AuxKlibEnumerateSystemFirmwareTables AuxKlibEnumerateSystemFirmwareTables 例程枚举指定类型的所有系统固件表。 |
AuxKlibGetBugCheckData AuxKlibGetBugCheckData 例程检索有关刚刚发生的 bug 检查的信息。 |
AuxKlibGetImageExportDirectory AuxKlibGetImageExportDirectory 例程返回图像模块的导出目录。 |
AuxKlibGetSystemFirmwareTable AuxKlibGetSystemFirmwareTable 例程从固件表提供程序检索指定的固件表。 |
AuxKlibInitialize AuxKlibInitialize 例程初始化辅助 Kernel-Mode 库。 |
AuxKlibQueryModuleInformation AuxKlibQueryModuleInformation 例程检索有关操作系统加载的图像模块的信息。 |
BarrierAfterRead 描述 BarrierAfterRead 函数 (miniport.h)。 |
BarrierAfterRead 描述 BarrierAfterRead~r1 (miniport.h) 函数。 |
BarrierAfterRead 描述 BarrierAfterRead~r2 函数(miniport.h)。 |
BarrierAfterRead 描述 BarrierAfterRead 函数 (wdm.h)。 |
BarrierAfterRead 描述 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 例程负责为即插即用(PnP)管理器枚举的设备创建功能设备对象(FDO)或筛选设备对象(筛选器 DO)。 |
DRIVER_CANCEL Cancel 例程取消 I/O 操作。 |
DRIVER_CONTROL 此例程启动 DMA 数据传输或数据传输操作。 |
DRIVER_DISPATCH 回调例程服务各种 IRP。 有关函数代码的列表,请参阅“备注”。 |
DRIVER_INITIALIZE DriverEntry 是在加载驱动程序后调用的第一个例程,负责初始化驱动程序。 |
DRIVER_LIST_CONTROL AdapterListControl 例程启动直接内存访问(DMA)散点/收集操作。 |
DRIVER_REINITIALIZE 在驱动程序的 DriverEntry 例程返回后,重新初始化例程会继续驱动程序和设备初始化。 |
DRIVER_STARTIO StartIo 例程启动 IRP 描述的 I/O 操作。 |
DRIVER_UNLOAD Unload 例程执行在系统卸载驱动程序之前所需的任何操作。 |
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 例程会销毁非分页的 lookaside 列表。 |
ExDeletePagedLookasideList ExDeletePagedLookasideList 例程会破坏分页外观列表。 |
ExDeleteResourceLite ExDeleteResourceLite 例程从系统的资源列表中删除给定资源。 |
ExDeleteTimer ExDeleteTimer 例程删除以前由 ExAllocateTimer 例程分配的计时器对象。 |
ExDestroyPool 定义 ExDestroyPool 函数。 |
ExEnterCriticalRegionAndAcquireResourceExclusive 详细了解 ExEnterCriticalRegionAndAcquireResourceExclusive 例程。 |
ExFlushLookasideListEx ExFlushLookasideListEx 例程刷新指定外观列表中的所有条目,并为每个条目释放分配的存储。 |
ExFreeCacheAwareRundownProtection 本主题介绍 ExFreeCacheAwareRundownProtection 函数。 |
ExFreePool ExFreePool 宏 (ntddk.h) 例程解除分配以前分配的指定池内存块。 |
ExFreePool ExFreePool 函数 (wdm.h) 解除分配以前分配的指定池内存块。 |
ExFreePool2 定义 ExFreePool2 函数。 |
ExFreePoolWithTag ExFreePoolWithTag 例程解除分配使用指定标记分配的池内存块。 |
ExFreeToLookasideListEx ExFreeToLookasideListEx 例程将条目插入到 lookaside 列表中,或者如果列表已满,则释放该条目的分配存储。 |
ExFreeToNPagedLookasideList ExFreeToNPagedLookasideList 例程返回给定的 lookaside 列表或非分页池的非分页条目。 |
ExFreeToPagedLookasideList ExFreeToPagedLookasideList 例程返回给定的 lookaside 列表或分页池的可分页条目。 |
ExGetExclusiveWaiterCount ExGetExclusiveWaiterCount 例程返回对给定资源的独占访问权限的等待程序数。 |
ExGetFirmwareEnvironmentVariable ExGetFirmwareEnvironmentVariable 例程获取指定系统固件环境变量的值。 |
ExGetFirmwareType 返回系统固件类型。 |
ExGetPreviousMode ExGetPreviousMode 例程返回当前线程的上一个处理器模式。 |
ExGetPrmInterface 检索指向 PRM 接口的指针。 |
ExGetSharedWaiterCount ExGetSharedWaiterCount 例程返回对给定资源的共享访问服务员数。 |
ExInitializeDeleteTimerParameters ExInitializeDeleteTimerParameters 例程初始化EXT_DELETE_PARAMETERS结构。 |
ExInitializeDeviceAts 描述 ExInitializeDeviceAts 函数。 |
ExInitializeDriverRuntime 了解以下内容的详细信息:ExInitializeDriverRuntime |
ExInitializeFastMutex ExInitializeFastMutex 例程初始化快速互斥变量,用于将一组线程相互排斥的访问同步到共享资源。 |
ExInitializeLookasideListEx ExInitializeLookasideListEx 例程初始化 lookaside 列表。 |
ExInitializeNPagedLookasideList ExInitializeNPagedLookasideList 例程初始化指定大小的非分页条目的 lookaside 列表。 |
ExInitializePagedLookasideList ExInitializePagedLookasideList 例程初始化指定大小的可分页条目的 lookaside 列表。 |
ExInitializePushLock 初始化推送锁变量。 |
ExInitializeResourceLite ExInitializeResourceLite 例程初始化资源变量。 |
ExInitializeRundownProtection ExInitializeRundownProtection 例程初始化共享对象的运行保护。 |
ExInitializeRundownProtectionCacheAware 本主题介绍 ExInitializeRundownProtectionCacheAware 函数。 |
ExInitializeRundownProtectionCacheAwareEx |
ExInitializeSetTimerParameters ExInitializeSetTimerParameters 例程初始化EXT_SET_PARAMETERS结构。 |
ExInterlockedAddLargeInteger ExInterlockedAddLargeInteger 例程将一个大整数值作为原子操作添加到指定的变量。 |
ExInterlockedAddLargeStatistic ExInterlockedAddLargeStatistic 例程对LARGE_INTEGER变量执行 ULONG 递增值的互锁添加。 |
ExInterlockedAddUlong ExInterlockedAddUlong 例程将无符号长值作为原子操作添加到给定无符号整数。 |
ExInterlockedCompareExchange64 ExInterlockedCompareExchange64 例程将一个整数变量与另一个整数变量进行比较,如果它们相等,请将第一个变量设置为调用方提供的值。 |
ExInterlockedFlushSList ExInterlockedFlushSList 例程以原子方式从已排序的单声链接列表中删除所有条目。 |
ExInterlockedInsertHeadList ExInterlockedInsertHeadList 例程以原子方式在LIST_ENTRY结构两次链接列表的开头插入一个条目。 |
ExInterlockedInsertTailList ExInterlockedInsertTailList 例程在LIST_ENTRY结构的双重链接列表的末尾插入一个条目。 |
ExInterlockedPopEntryList ExInterlockedPopEntryList 例程从SINGLE_LIST_ENTRY结构单一链接列表的开头删除一个条目。 |
ExInterlockedPopEntrySList ExInterlockedPopEntrySList 例程以原子方式从序列单选链接列表中删除第一个条目。 |
ExInterlockedPushEntryList ExInterlockedPushEntryList 例程以原子方式在SINGLE_LIST_ENTRY结构SINGLE_LIST_ENTRY列表的开头插入一个条目。 |
ExInterlockedPushEntrySList ExInterlockedPushEntrySList 例程以原子方式插入序列单行链接列表开头的条目。 |
ExInterlockedRemoveHeadList ExInterlockedRemoveHeadList 例程从LIST_ENTRY结构二次链接列表的开头删除一个条目。 |
ExIsProcessorFeaturePresent ExIsProcessorFeaturePresent 例程查询是否存在指定的处理器功能。 |
ExIsResourceAcquiredExclusiveLite ExIsResourceAcquiredExclusiveLite 例程返回当前线程是否对给定资源具有独占访问权限。 |
ExIsResourceAcquiredSharedLite ExIsResourceAcquiredSharedLite 例程返回当前线程是否有权访问给定资源(共享或独占)。 |
ExIsSoftBoot 确定系统是否已经过软重启。 |
ExLocalTimeToSystemTime ExLocalTimeToSystemTime 例程将当前时区的系统时间值转换为无偏置的 GreenGMT 值。 |
ExNotifyCallback ExNotifyCallback 例程会导致为给定对象注册的所有回调例程被调用。 |
EXPAND_STACK_CALLOUT ExpandedStackCall 例程以有保证的堆栈大小执行。 |
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 指向的输入值与 Compareand 的值进行比较。 |
InterlockedCompareExchange InterlockedCompareExchange 例程执行原子操作,将 Destination 指向的输入值与 Comperand 的值进行比较。 |
InterlockedCompareExchangePointer InterlockedCompareExchangePointer 例程执行原子操作,将 Destination 指向的输入指针值与指针值 Compareand 进行比较。 |
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 InterlockedOr 函数 (wdm.h) 以原子方式计算具有指定变量和指定值的按位 OR 运算。 |
InterlockedXor InterlockedXor 函数 (miniport.h) 以原子方式计算具有指定变量和指定值的按位排他 OR 运算。 |
InterlockedXor InterlockedXor 函数 (wdm.h) 以原子方式计算具有指定变量和指定值的按位排他 OR 运算。 |
IO_COMPLETION_ROUTINE IoCompletion 例程完成 I/O 操作的处理。 |
IO_CSQ_ACQUIRE_LOCK CsqAcquireLock 例程由系统用来获取驱动程序实现的、取消安全的 IRP 队列的锁。 |
IO_CSQ_COMPLETE_CANCELED_IRP 系统使用 CsqCompleteCanceledIrp 例程向驱动程序发出信号,指示它可以完成已取消的 IRP。 |
IO_CSQ_INSERT_IRP CsqInsertIrp 例程由系统用来将 IRP 插入到实现的、取消安全的 IRP 队列中。 |
IO_CSQ_INSERT_IRP_EX CsqInsertIrpEx 例程由系统用来将 IRP 插入到实现的、取消安全的 IRP 队列中。 |
IO_CSQ_PEEK_NEXT_IRP CsqPeekNextIrp 例程由系统用来查找驱动程序实现的、取消安全的 IRP 队列中的下一个匹配 IRP。 |
IO_CSQ_RELEASE_LOCK 系统使用 CsqReleaseLock 例程释放使用 CsqAcquireLock 获取的锁。 |
IO_CSQ_REMOVE_IRP CsqRemoveIrp 例程由系统用来从驱动程序实现的取消安全的 IRP 队列中删除指定的 IRP。 |
IO_DPC_ROUTINE 在 InterruptService 例程返回后,DpcForIsr 例程完成 I/O 操作的服务。 |
IO_SESSION_NOTIFICATION_FUNCTION IO_SESSION_NOTIFICATION_FUNCTION函数类型定义回调例程,驱动程序通过该例程接收有关驱动程序感兴趣的用户会话状态更改的通知。 |
IO_TIMER_ROUTINE IoTimer 例程是一个 DPC,如果已注册,则每秒调用一次。 |
IO_WORKITEM_ROUTINE WorkItem 例程对 IoQueueWorkItem 例程排队的工作项执行处理。 |
IO_WORKITEM_ROUTINE_EX WorkItemEx 例程执行由 IoQueueWorkItemEx 或 IoTryQueueWorkItem 例程排队的工作项的处理。 |
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 堆栈位置数,并且(可选)为调用方分配 IRP。 |
IoAllocateIrpEx IoAllocateIrpEx 从 分配 I/O 请求数据包(IRP) |
IoAllocateMdl 给定缓冲区的起始地址和长度,IoAllocateMdl 例程分配足够大的内存描述符列表(MDL)来映射缓冲区。 (可选)此例程将 MDL 与 IRP 相关联。 |
IoAllocateWorkItem IoAllocateWorkItem 例程分配工作项。 |
IoAssignArcName IoAssignArcName 例程在物理设备的 ARC 名称与创建相应设备对象的名称之间创建符号链接。 |
IoAttachDevice IoAttachDevice 例程将调用方的设备对象附加到命名目标设备对象,以便首先将目标设备的 I/O 请求路由到调用方。 |
IoAttachDeviceToDeviceStack IoAttachDeviceToDeviceStack 例程将调用方的设备对象附加到链中最高的设备对象,并返回指向以前最高的设备对象的指针。 |
IoBuildAsynchronousFsdRequest IoBuildAsynchronousFsdRequest 例程分配并设置要发送到较低级别的驱动程序的 IRP。 |
IoBuildDeviceIoControlRequest IoBuildDeviceIoControlRequest 例程分配并设置同步处理的设备控制请求的 IRP。 |
IoBuildPartialMdl IoBuildPartialMdl 例程生成新的内存描述符列表(MDL),该列表表示现有 MDL 描述的缓冲区的一部分。 |
IoBuildSynchronousFsdRequest IoBuildSynchronousFsdRequest 例程为同步处理的 I/O 请求分配并设置 IRP。 |
IoCallDriver IoCallDriver 例程将 IRP 发送到与指定设备对象关联的驱动程序。 |
IoCancelIrp IoCancelIrp 例程设置给定 IRP 中的取消位,并调用 IRP 的取消例程(如果有)。 |
IoCheckFileObjectOpenedAsCopyDestination 详细了解 IoCheckFileObjectOpenedAsCopyDestination 函数。 |
IoCheckFileObjectOpenedAsCopySource 详细了解 IoCheckFileObjectOpenedAsCopySource 函数。 |
IoCheckLinkShareAccess IoCheckLinkShareAccess 例程由文件系统驱动程序(FSD)或其他最高级别的驱动程序调用,以检查是否允许对文件对象的链接共享访问。 |
IoCheckShareAccess IoCheckShareAccess 例程由文件系统驱动程序(FSDs)或其他最高级别的驱动程序调用,以检查是否允许对文件对象的共享访问。 |
IoCheckShareAccessEx IoCheckShareAccessEx 例程由文件系统驱动程序(FSD)或其他最高级别的驱动程序调用,以检查是否允许对文件对象的共享访问。 |
IoClearActivityIdThread IoClearActivityIdThread 例程清除当前线程的活动 ID。 |
IoConnectInterrupt IoConnectInterrupt 例程注册设备驱动程序的 InterruptService 例程(ISR),以便在设备在任何一组指定处理器上中断时调用它。 |
IoConnectInterruptEx 有关详细信息,请参阅 WdmlibIoConnectInterruptEx 函数.#define IoConnectInterruptEx WdmlibIoConnectInterruptEx |
IoCopyCurrentIrpStackLocationToNext IoCopyCurrentIrpStackLocationToNext 例程将 IRP 堆栈参数从当前 I/O 堆栈位置复制到下一个较低驱动程序的堆栈位置。 |
IoCreateController IoCreateController 例程为控制器对象分配内存,并使用驱动程序确定大小的控制器扩展初始化控制器对象。 |
IoCreateDevice IoCreateDevice 例程创建设备对象供驱动程序使用。 |
IoCreateFile IoCreateFile 例程会导致创建新文件或目录,或者打开现有文件、设备、目录或卷,为调用方提供文件对象的句柄。 |
IoCreateNotificationEvent IoCreateNotificationEvent 例程创建或打开命名通知事件,用于通知一个或多个执行线程已发生事件。 |
IoCreateSymbolicLink IoCreateSymbolicLink 例程设置设备对象名称和设备用户可见名称之间的符号链接。 |
IoCreateSynchronizationEvent IoCreateSynchronizationEvent 例程创建或打开命名的同步事件,以便在两个其他无关驱动程序之间序列化访问硬件。 |
IoCreateSystemThread IoCreateSystemThread 例程创建在内核模式下执行的系统线程,并为线程提供句柄。 |
IoCreateUnprotectedSymbolicLink IoCreateUnprotectedSymbolicLink 例程设置设备对象名称和相应的 Win32 可见名称之间的未受保护的符号链接。 |
IoCsqInitialize IoCsqInitialize 例程初始化驱动程序的取消安全的 IRP 队列调度表。 |
IoCsqInitializeEx IoCsqInitializeEx 例程初始化取消安全的 IRP 队列的调度表。 |
IoCsqInsertIrp IoCsqInsertIrp 例程在驱动程序的取消安全 IRP 队列中插入 IRP。 |
IoCsqInsertIrpEx IoCsqInsertIrpEx 例程将 IRP 插入驱动程序的取消安全的 IRP 队列中。 |
IoCsqRemoveIrp IoCsqRemoveIrp 例程从队列中删除特定的 IRP。 |
IoCsqRemoveNextIrp IoCsqRemoveNextIrp 例程删除队列中的下一个匹配 IRP。 |
IoDeassignArcName IoDeassignArcName 例程删除了设备与命名设备对象的 ARC 名称之间的符号链接。 |
IoDecrementKeepAliveCount IoDecrementKeepAliveCount 例程会减少与特定设备上的 Windows 应用关联的引用计数。 |
IoDeleteController IoDeleteController 例程从系统中删除给定的控制器对象,例如,当创建它的驱动程序被卸载时。 |
IoDeleteDevice IoDeleteDevice 例程从系统中删除设备对象,例如,从系统中删除基础设备时。 |
IoDeleteSymbolicLink IoDeleteSymbolicLink 例程从系统中删除符号链接。 |
IoDetachDevice IoDetachDevice 例程释放调用方设备对象与较低驱动程序的设备对象之间的附件。 |
IoDisconnectInterrupt IoDisconnectInterrupt 例程在暂停或删除设备或卸载驱动程序时释放设备驱动程序的中断对象集。 |
IoDisconnectInterruptEx 有关详细信息,请参阅 WdmlibIoDisconnectInterruptEx 函数.#define IoDisconnectInterruptEx WdmlibIoDisconnectInterruptEx |
IoEnumerateKsrPersistentMemoryEx Microsoft保留 IoEnumerateKsrPersistentMemoryEx 函数供内部使用。 请勿在代码中使用此函数。 |
IofCallDriver 请改为 IoCallDriver。 将 IRP 发送到与指定设备对象关联的驱动程序。 |
IofCompleteRequest IoCompleteRequest 例程指示调用方已完成给定 I/O 请求的所有处理,并将给定的 IRP 返回到 I/O 管理器。 |
IoForwardIrpSynchronously IoForwardIrpSynchronously 例程将 IRP 发送到指定的驱动程序,并等待该驱动程序完成 IRP。 |
IoFreeController 当驱动程序完成 I/O 请求时,IoFreeController 例程会释放以前分配的控制器对象。 |
IoFreeErrorLogEntry IoFreeErrorLogEntry 例程释放了未使用的错误日志条目。 |
IoFreeIrp IoFreeIrp 例程从调用方 IoCompletion 例程释放调用方分配的 IRP。 |
IoFreeKsrPersistentMemory Microsoft保留 IoFreeKsrPersistentMemory 函数供内部使用。 请勿在代码中使用此函数。 |
IoFreeMdl IoFreeMdl 例程释放调用方分配的内存描述符列表(MDL)。 |
IoFreeWorkItem IoFreeWorkItem 例程释放 IoAllocateWorkItem 分配的工作项。 |
IoGetActivityIdIrp IoGetActivityIdIrp 例程检索与 IRP 关联的当前活动 ID。 |
IoGetActivityIdThread IoGetActivityIdThread 例程返回与当前线程关联的活动 ID。 |
IoGetAffinityInterrupt 有关详细信息,请参阅 WdmlibIoGetAffinityInterrupt 函数.#define IoGetAffinityInterrupt WdmlibIoGetAffinityInterrupt |
IoGetAttachedDeviceReference 详细了解 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 例程初始化设备对象的删除锁。 |
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 例程在初始化或重新初始化期间由驱动程序调用,以注册其重新初始化例程,该例程在驱动程序之前再次调用,并且系统可能已完成初始化。 |
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 中的状态值替换为指定的 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 及更高版本中已过时。 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 回调例程在中断服务返回线程 DPC 后执行操作,在 InterruptService 例程返回后,CustomDpc 例程完成 I/O 操作的服务。CustomThreadedDpc 例程执行线程 DPC 的操作。 当线程 DPC 运行时,系统会执行此例程。CustomTimerDpc 例程在计时器对象的时间间隔过期后执行。 |
KeAcquireGuardedMutex 详细了解 KeAcquireGuardedMutex 例程。 |
KeAcquireGuardedMutexUnsafe 详细了解 KeAcquireGuardedMutexUnsafe 函数。 |
KeAcquireInStackQueuedSpinLock 详细了解 KeAcquireInStackQueuedSpinLock 例程。 |
KeAcquireInStackQueuedSpinLockAtDpcLevel 详细了解 KeAcquireInStackQueuedSpinLockAtDpcLevel 例程。 |
KeAcquireInStackQueuedSpinLockForDpc 详细了解 KeAcquireInStackQueuedSpinLockForDpc 例程。 |
KeAcquireInterruptSpinLock 详细了解 KeAcquireInterruptSpinLock 例程。 |
KeAcquireSpinLock KeAcquireSpinLock 例程获取旋转锁,以便调用方可以通过引发 IRQL,以多处理器安全的方式同步对共享数据的访问。 |
KeAcquireSpinLockAtDpcLevel 当调用方已在 IRQL 上运行时,KeAcquireSpinLockAtDpcLevel 例程获取旋转锁 >= DISPATCH_LEVEL。 |
KeAcquireSpinLockForDpc 详细了解 KeAcquireSpinLockForDpc 例程。 |
KeAcquireSpinLockRaiseToDpc KeAcquireSpinLockRaiseToDpc 例程是 KeAcquireSpinLock 例程的更快版本。 |
KeAddTriageDumpDataBlock 将会审转储数据块添加到会审转储数据块数组。 |
KeAreAllApcsDisabled KeAreAllApcsDisabled 例程指示调用线程是位于受保护的区域中还是运行在 IRQL >= APC_LEVEL,这会禁用所有 APC 传递。 |
KeAreApcsDisabled KeAreApcsDisabled 函数 (ntddk.h) 返回一个值,该值指示调用线程是位于关键区域还是受保护的区域中。 |
KeAreApcsDisabled KeAreApcsDisabled 函数 (wdm.h) 返回一个值,该值指示调用线程是位于关键区域还是受保护的区域中。 |
KeBugCheck 当调用方发现无法恢复的不一致(如果调用方继续运行)时,KeBugCheck 例程会以受控方式关闭系统。 |
KeBugCheckEx 当调用方发现一个无法恢复的不一致(如果调用方继续运行)时,KeBugCheckEx 例程会以受控的方式关闭系统。 |
KeCancelTimer KeCancelTimer 例程在计时器间隔之前取消排队,如果已设置计时器对象,则过期。 |
KeClearEvent KeClearEvent 例程将事件设置为非信号状态。 |
KeConvertAuxiliaryCounterToPerformanceCounter KeConvertAuxiliaryCounterToPerformanceCounter 例程将指定的辅助计数器值转换为性能计数器值。 |
KeConvertPerformanceCounterToAuxiliaryCounter KeConvertPerformanceCounterToAuxiliaryCounter 例程将指定的性能计数器值转换为辅助计数器值。 |
KeDelayExecutionThread KeDelayExecutionThread 例程将当前线程置于指定间隔的可警报或不可运行等待状态。 |
KeDeregisterBoundCallback KeDeregisterBoundCallback 例程取消注册由 KeRegisterBoundCallback 注册的用户模式绑定异常回调。 |
KeDeregisterBugCheckCallback KeDeregisterBugCheckCallback 例程删除由 KeRegisterBugCheckCallback 注册的回调例程。 |
KeDeregisterBugCheckReasonCallback KeDeregisterBugCheckReasonCallback 例程删除由 KeRegisterBugCheckReasonCallback 注册的回调例程。 |
KeDeregisterNmiCallback KeDeregisterNmiCallback 例程取消注册由 KeRegisterNmiCallback 注册的不可屏蔽中断(NMI)回调。 |
KeDeregisterProcessorChangeCallback KeDeregisterProcessorChangeCallback 例程取消注册以前通过调用 KeRegisterProcessorChangeCallback 例程向操作系统注册的回调函数。 |
KeEnterCriticalRegion KeEnterCriticalRegion 函数 (ntddk.h) 暂时禁用正常内核 APC 的执行,但不阻止特殊内核 APC 运行。 |
KeEnterCriticalRegion KeEnterCriticalRegion 函数 (wdm.h) 暂时禁用正常内核 APC 的执行,但不阻止特殊内核 APC 运行。 |
KeEnterGuardedRegion KeEnterGuardedRegion 函数(ntddk.h)进入受保护的区域,这会禁用所有内核模式 APC 传送到当前线程。 |
KeEnterGuardedRegion KeEnterGuardedRegion 函数 (wdm.h) 进入受保护的区域,这会禁用所有内核模式 APC 传送到当前线程。 |
KeExpandKernelStackAndCallout KeExpandKernelStackAndCallout 例程调用具有保证堆栈空间量的例程。 |
KeExpandKernelStackAndCalloutEx 了解以下内容的详细信息:KeExpandKernelStackAndCalloutEx |
KeFlushIoBuffers KeFlushIoBuffers 例程从所有处理器的缓存中刷新 MDL 描述的内存区域。 |
KeFlushQueuedDpcs 执行所有处理器上所有排队的 DPC 后,KeFlushQueuedDpcs 例程将返回。 |
KefReleaseSpinLockFromDpcLevel KeReleaseSpinLockFromDpcLevel 例程释放执行旋转锁,而无需更改 IRQL。 |
KeGetCurrentIrql KeGetCurrentIrql 例程返回当前的 IRQL。 |
KeGetCurrentNodeNumber KeGetCurrentNodeNumber 函数 (ntddk.h) 返回调用方正在运行的逻辑处理器的 NUMA 节点编号。 |
KeGetCurrentNodeNumber KeGetCurrentNodeNumber 函数 (wdm.h) 返回调用方正在运行的逻辑处理器的 NUMA 节点编号。 |
KeGetCurrentProcessorIndex KeGetCurrentProcessorIndex 返回调用方正在运行的处理器的索引。 |
KeGetCurrentProcessorNumber KeGetCurrentProcessorNumber 例程返回调用方正在运行的当前处理器的系统分配编号。 |
KeGetCurrentProcessorNumberEx KeGetCurrentProcessorNumberEx 函数 (ntddk.h) 返回调用方正在运行的逻辑处理器的处理器编号。 |
KeGetCurrentProcessorNumberEx KeGetCurrentProcessorNumberEx 函数 (wdm.h) 返回调用方正在运行的逻辑处理器的处理器编号。 |
KeGetCurrentThread KeGetCurrentThread 例程标识当前线程。 |
KeGetProcessorIndexFromNumber ntifs.h 中的 KeGetProcessorIndexFromNumber 例程将组号和组相对处理器编号转换为系统范围的处理器索引。 |
KeGetProcessorIndexFromNumber wdm.h 中的 KeGetProcessorIndexFromNumber 例程将组号和组相对处理器编号转换为系统范围的处理器索引。 |
KeGetProcessorNumberFromIndex ntifs.h 中的 KeGetProcessorNumberFromIndex 例程将系统范围的处理器索引转换为组号和组相对处理器编号。 |
KeGetProcessorNumberFromIndex wdm.h 中的 KeGetProcessorNumberFromIndex 例程将系统范围的处理器索引转换为组号和组相对处理器编号。 |
KeGetRecommendedSharedDataAlignment KeGetRecommendedSharedDataAlignment 例程返回可由多个处理器访问的内存结构的首选对齐方式。 |
KeInitializeCrashDumpHeader KeInitializeCrashDumpHeader 例程提供系统对故障转储文件所需的标头信息。 |
KeInitializeCrashDumpHeader 了解 KeInitializeCrashDumpHeader 例程如何提供系统对故障转储文件所需的标头信息。 |
KeInitializeDeviceQueue KeInitializeDeviceQueue 例程将设备队列对象初始化为非忙状态。 |
KeInitializeDpc KeInitializeDpc 例程初始化 DPC 对象,并为该对象注册 CustomDpc 例程。 |
KeInitializeEvent KeInitializeEvent 例程将事件对象初始化为同步(单个服务员)或通知类型事件,并将其设置为已发出信号或未发出信号的状态。 |
KeInitializeGuardedMutex KeInitializeGuardedMutex 例程初始化受保护的互斥体。 |
KeInitializeMutex KeInitializeMutex 例程初始化互斥体对象,并将其设置为信号状态。 |
KeInitializeSemaphore KeInitializeSemaphore 例程使用指定的计数初始化信号灯对象,并指定计数可以达到的上限。 |
KeInitializeSpinLock KeInitializeSpinLock 例程初始化KSPIN_LOCK类型的变量。 |
KeInitializeThreadedDpc KeInitializeThreadedDpc 例程初始化线程 DPC 对象,并为该对象注册 CustomThreadedDpc 例程。 |
KeInitializeTimer KeInitializeTimer 例程初始化计时器对象。 |
KeInitializeTimerEx KeInitializeTimerEx 例程初始化扩展内核计时器对象。 |
KeInsertByKeyDeviceQueue KeInsertByKeyDeviceQueue 例程获取指定 DeviceQueue 的旋转锁,如果设备队列设置为忙碌状态,则根据指定的排序键值对条目进行排队。 |
KeInsertDeviceQueue KeInsertDeviceQueue 例程获取指定设备队列对象的旋转锁,如果设备队列设置为忙碌状态,则会将指定的条目排入队列。 |
KeInsertQueueDpc KeInsertQueueDpc 例程将 DPC 排队以供执行。 |
KeInvalidateAllCaches KeInvalidateAllCaches 例程刷新所有处理器缓存。 |
KeInvalidateRangeAllCaches KeInvalidateRangeAllCaches 例程从所有处理器缓存刷新指定的虚拟地址范围。 |
KePiGenericCall KePiGenericCall 例程导致指定例程同时在所有处理器上运行。 |
KeIsExecutingDpc 检查是否在当前处理器上执行 DPC。 |
KeLeaveCriticalRegion KeLeaveCriticalRegion 例程可重新启用通过上述对 KeEnterCriticalRegion 调用禁用的正常内核模式 APC 的传递。 |
KeLeaveCriticalRegion 了解 KeLeaveCriticalRegion 例程如何重新启用通过上述对 KeEnterCriticalRegion 调用禁用的正常内核模式 APC 的传递。 |
KeLeaveGuardedRegion KeLeaveGuardedRegion 例程退出 KeEnterGuardedRegion 输入的受保护的区域。 |
KeLeaveGuardedRegion 了解 KeLeaveGuardedRegion 例程如何退出 KeEnterGuardedRegion 输入的受保护的区域。 |
KeLowerIrql KeLowerIrql 例程将当前处理器上的 IRQL 还原为其原始值。 |
KeMemoryBarrier KeMemoryBarrier 例程在代码中的位置创建屏障,编译器和处理器无法移动任何操作。 |
KePulseEvent KePulseEvent 例程以原子方式将事件对象设置为信号状态,尝试满足尽可能多的等待,然后将事件对象重置为未发出信号的状态。 |
KeQueryActiveGroupCount KeQueryActiveGroupCount 例程返回多处理器系统中的活动处理器组数。 |
KeQueryActiveGroupCount 了解 KeQueryActiveGroupCount 例程如何返回多处理器系统中的活动处理器组数。 |
KeQueryActiveProcessorCount KeQueryActiveProcessorCount 例程返回当前活动处理器的数目。 |
KeQueryActiveProcessorCount 了解 KeQueryActiveProcessorCount 例程如何返回当前活动处理器的数目。 |
KeQueryActiveProcessorCountEx KeQueryActiveProcessorCountEx 例程返回多处理器系统或整个系统中指定组中的活动逻辑处理器数。 |
KeQueryActiveProcessorCountEx 了解 KeQueryActiveProcessorCountEx 例程如何返回多处理器系统或整个系统中指定组中的活动逻辑处理器数。 |
KeQueryActiveProcessors KeQueryActiveProcessors 例程返回当前活动处理器的位掩码。 |
KeQueryActiveProcessors 了解 KeQueryActiveProcessors 例程如何返回当前活动处理器的位掩码。 |
KeQueryAuxiliaryCounterFrequency KeQueryAuxiliaryCounterFrequency 例程以 Hz 为单位返回辅助计数器的频率。 |
KeQueryDpcWatchdogInformation KeQueryDpcWatchdogInformation 例程返回当前处理器的延迟过程调用 (DPC) 监视器计时器值。 |
KeQueryGroupAffinity KeQueryGroupAffinity 例程返回一个关联掩码,该掩码标识多处理器系统中指定组中的活动逻辑处理器。 |
KeQueryGroupAffinity 了解 KeQueryGroupAffinity 例程如何返回关联掩码,该掩码标识多处理器系统中指定组中的活动逻辑处理器。 |
KeQueryHardwareCounterConfiguration KeQueryHardwareCounterConfiguration 例程查询操作系统,以获取用于线程分析的硬件计数器列表。 |
KeQueryHighestNodeNumber KeQueryHighestNodeNumber 例程返回多处理器系统中具有非统一内存访问(NUMA)体系结构的最高节点数。 |
KeQueryHighestNodeNumber 了解 KeQueryHighestNodeNumber 例程如何返回多处理器系统中具有非统一内存访问(NUMA)体系结构的最高节点数。 |
KeQueryInterruptTime KeQueryInterruptTime 例程返回系统中断时间计数的当前值,准确性在系统时钟周期内。 |
KeQueryInterruptTimePrecise KeQueryInterruptTimePrecise 例程返回系统中断时间计数的当前值,准确度为微秒内。 |
KeQueryLogicalProcessorRelationship KeQueryLogicalProcessorRelationship 例程获取有关一个或多个处理器与多处理器系统中其他处理器的关系的信息。 |
KeQueryMaximumGroupCount KeQueryMaximumGroupCount 例程返回多处理器系统中的最大组数。 |
KeQueryMaximumGroupCount 了解 KeQueryMaximumGroupCount 例程如何返回多处理器系统中的最大组数。 |
KeQueryMaximumProcessorCount KeQueryMaximumProcessorCount 例程返回最大处理器数。 |
KeQueryMaximumProcessorCount 了解 KeQueryMaximumProcessorCount 例程如何返回最大处理器数。 |
KeQueryMaximumProcessorCountEx KeQueryMaximumProcessorCountEx 例程返回多处理器系统中指定组中的最大逻辑处理器数。 |
KeQueryMaximumProcessorCountEx 了解 KeQueryMaximumProcessorCountEx 例程如何返回多处理器系统中指定组中的最大逻辑处理器数。 |
KeQueryNodeActiveAffinity KeQueryNodeActiveAffinity 例程获取多处理器系统中具有非统一内存访问(NUMA)体系结构的指定节点的当前处理器关联。 |
KeQueryNodeActiveAffinity2 此例程返回给定 NUMA 节点的当前多组处理器相关性。 |
KeQueryNodeActiveProcessorCount 此例程返回给定 NUMA 节点中跨所有组的活动处理器数。 |
KeQueryNodeMaximumProcessorCount KeQueryNodeMaximumProcessorCount 例程返回非统一内存访问(NUMA)多处理器系统中指定节点可以包含的最大逻辑处理器数。 |
KeQueryNodeMaximumProcessorCount 了解 KeQueryNodeMaximumProcessorCount 例程如何返回非统一内存访问(NUMA)多处理器系统中指定节点可以包含的最大逻辑处理器数。 |
KeQueryPerformanceCounter wdm.h 中的 KeQueryPerformanceCounter 例程检索性能计数器的当前值和频率。 |
KeQueryPriorityThread KeQueryPriorityThread 例程返回特定线程的当前优先级。 |
KeQueryRuntimeThread KeQueryRuntimeThread 例程报告线程累积的内核模式和用户模式运行时(以时钟周期为单位)。 |
KeQuerySystemTime KeQuerySystemTime 例程获取当前系统时间。 |
KeQuerySystemTimePrecise KeQuerySystemTimePrecise 例程检索当前系统时间,并且比 KeQuerySystemTime 例程更精确。 |
KeQueryTickCount KeQueryTickCount 例程维护自系统启动以来发生的间隔计时器中断的计数。 |
KeQueryTickCount 了解 KeQueryTickCount 例程如何维护自系统启动以来发生的间隔计时器中断的计数。 |
KeQueryTimeIncrement KeQueryTimeIncrement 例程返回每次间隔时钟中断时添加到系统时间的 100 纳秒单位数。 |
KeQueryTotalCycleTimeThread KeQueryTotalCycleTimeThread 例程返回指定线程的累积周期时间。 |
KeQueryUnbiasedInterruptTime KeQueryUnbiasedInterruptTime 例程返回系统中断时间计数的当前值。 |
KeRaiseIrql KeRaiseIrql 例程将硬件优先级提升到指定的 IRQL 值,从而屏蔽当前处理器上等效或较低 IRQL 的中断。 |
KeRaiseIrqlToDpcLevel KeRaiseIrqlToDpcLevel 例程将硬件优先级提升为 IRQL = DISPATCH_LEVEL,从而屏蔽当前处理器上等效或较低 IRQL 的中断。 |
KeRaiseIrqlToDpcLevel 了解 KeRaiseIrqlToDpcLevel 例程如何将硬件优先级提升到 IRQL = DISPATCH_LEVEL,从而屏蔽当前处理器上等效或较低 IRQL 的中断。 |
KeReadStateEvent KeReadStateEvent 例程返回事件对象的当前状态(已发出信号或未发出信号)。 |
KeReadStateMutex KeReadStateMutex 例程返回指定互斥对象的当前状态(已发出信号或未发出信号)。 |
KeReadStateSemaphore KeReadStateSemaphore 例程返回指定信号量对象的当前状态(信号或未发出信号)。 |
KeReadStateTimer KeReadStateTimer 例程读取计时器对象的当前状态。 |
KeRegisterBoundCallback KeRegisterBoundCallback 例程注册在发生用户模式绑定异常时要调用的例程。 |
KeRegisterBugCheckCallback KeRegisterBugCheckCallback 例程注册 BugCheckCallback 例程,该例程在操作系统发出 bug 检查时执行。 |
KeRegisterBugCheckReasonCallback KeRegisterBugCheckReasonCallback 例程注册 KbCallbackDumpIo、KbCallbackSecondaryDumpData 或 KbCallbackAddPages 例程,该例程在操作系统发出 bug 检查时执行。 |
KeRegisterNmiCallback KeRegisterNmiCallback 例程注册一个每当发生不可掩码中断(NMI)时要调用的例程。 |
KeRegisterProcessorChangeCallback KeRegisterProcessorChangeCallback 例程向操作系统注册回调函数,以便在将新处理器添加到硬件分区时操作系统通知驱动程序。 |
KeReleaseGuardedMutex KeReleaseGuardedMutex 例程释放使用 KeAcquireGuardedMutex 或 KeTryToAcquireGuardedMutex 获取的受保护的互斥体。 |
KeReleaseGuardedMutexUnsafe KeReleaseGuardedMutexUnsafe 例程发布由 KeAcquireGuardedMutexUnsafe 收购的受保护的互斥体。 |
KeReleaseInStackQueuedSpinLock KeReleaseInStackQueuedSpinLock 例程释放由 KeAcquireInStackQueuedSpinLock 获取的排队旋转锁。 |
KeReleaseInStackQueuedSpinLockForDpc KeReleaseInStackQueuedSpinLockForDpc 例程释放通过调用 KeAcquireInStackQueuedSpinLockForDpc 获取的排队旋转锁。 |
KeReleaseInStackQueuedSpinLockFromDpcLevel KeReleaseInStackQueuedSpinLockFromDpcLevel 例程释放由 KeAcquireInStackQueuedSpinLockAtDpcLevel 获取的排队旋转锁。 |
KeReleaseInterruptSpinLock KeReleaseInterruptSpinLock 例程释放 KeAcquireInterruptSpinLock 获取的中断旋转锁。 |
KeReleaseMutex KeReleaseMutex 例程释放互斥体对象,并指定调用方是否在 KeReleaseMutex 返回控件后立即调用 KeWaitXxx 例程之一。 |
KeReleaseSemaphore KeReleaseSemaphore 例程释放指定的信号灯对象。 |
KeReleaseSpinLock KeReleaseSpinLock 例程释放旋转锁,并还原调用方运行的原始 IRQL。 |
KeReleaseSpinLockForDpc KeReleaseSpinLockForDpc 例程释放了通过调用 KeAcquireSpinLockForDpc 获取的旋转锁。 |
KeReleaseSpinLockFromDpcLevel 了解 KeReleaseSpinLockFromDpcLevel 例程如何释放执行旋转锁而不更改 IRQL。 |
KeRemoveByKeyDeviceQueue KeRemoveByKeyDeviceQueue 例程从指定的设备队列中删除根据排序键值选择的条目。 |
KeRemoveDeviceQueue KeRemoveDeviceQueue 例程从指定设备队列的头中删除条目。 |
KeRemoveEntryDeviceQueue KeRemoveEntryDeviceQueue 例程返回指定条目是否在设备队列中,并从设备队列中删除指定条目(如果已排队)。 |
KeRemoveQueueDpc KeRemoveQueueDpc 例程从系统 DPC 队列中删除指定的 DPC 对象。 |
KeResetEvent KeResetEvent 例程将指定的事件对象重置为非信号状态,并返回该事件对象的上一状态。 |
KeRestoreExtendedProcessorState KeRestoreExtendedProcessorState 例程还原以前保存的扩展处理器状态信息。 |
KeRestoreFloatingPointState KeRestoreFloatingPointState 例程还原由上述对 KeSaveFloatingPointState 的调用保存的非易失性浮点上下文。 |
KeRevertToUserAffinityThreadEx KeRevertToUserAffinityThreadEx 例程还原当前线程的先前关联。 |
KeRevertToUserGroupAffinityThread KeRevertToUserGroupAffinityThread 例程在创建线程时将调用线程的组关联还原为其原始值。 |
KeSaveExtendedProcessorState KeSaveExtendedProcessorState 例程保存扩展处理器状态信息。 |
KeSaveFloatingPointState KeSaveFloatingPointState 例程保存非易失浮点上下文,以便调用方可以执行浮点操作。 |
KeSetBasePriorityThread KeSetBasePriorityThread 例程为给定线程设置相对于当前进程的运行时优先级。 |
KeSetCoalescableTimer KeSetCoalescableTimer 例程设置计时器对象的初始过期时间和时间段,并指定在到期时间可以容忍多少延迟。 |
KeSetEvent 如果事件尚未发出信号,KeSetEvent 例程会将事件对象设置为信号状态,并返回事件对象的上一状态。 |
KeSetHardwareCounterConfiguration KeSetHardwareCounterConfiguration 例程指定要用于线程分析的硬件计数器列表。 |
KeSetImportanceDpc KeSetImportanceDpc 例程指定运行 DPC 例程的运行时间。 |
KeSetImportanceDpc 了解 KeSetImportanceDpc 例程如何指定 DPC 例程的运行时间。 |
KeSetKernelStackSwapEnable 详细了解 KeSetKernelStackSwapEnable 例程。 |
KeSetPriorityThread KeSetPriorityThread 例程设置驱动程序创建的线程的运行时优先级。 |
KeSetSystemAffinityThread KeSetSystemAffinityThread 例程设置当前线程的系统相关性。 |
KeSetSystemAffinityThreadEx KeSetSystemAffinityThreadEx 例程设置当前线程的系统相关性。 |
KeSetSystemGroupAffinityThread KeSetSystemGroupAffinityThread 例程更改调用线程的组号和相关性掩码。 |
KeSetTargetProcessorDpc KeSetTargetProcessorDpc 例程指定将运行 DPC 例程的处理器。 |
KeSetTargetProcessorDpc 了解 KeSetTargetProcessorDpc 例程如何指定运行 DPC 例程的处理器。 |
KeSetTargetProcessorDpcEx KeSetTargetProcessorDpcEx 例程指定运行 DPC 例程的处理器。 |
KeSetTimer KeSetTimer 例程设置计时器对象设置为信号状态的绝对或相对间隔,并且(可选)提供在该间隔过期时要执行的 CustomTimerDpc 例程。 |
KeSetTimerEx KeSetTimerEx 例程设置计时器对象设置为信号状态的绝对或相对间隔,可以选择提供在该间隔到期时要执行的 CustomTimerDpc 例程,并选择性地为计时器提供定期间隔。 |
KeShouldYieldProcessor 了解以下内容的详细信息:KeShouldYieldProcessor 函数 |
KeStallExecutionProcessor 详细了解 KeStallExecutionProcessor 例程。 |
KeStallExecutionProcessor wdm.h 中的 KeStallExecutionProcessor 例程将调用方在当前处理器上停止指定的时间间隔。 |
KeSynchronizeExecution KeSynchronizeExecution 例程将指定的例程的执行与分配给一个或多个中断对象的一组中断服务例程(ISR)同步。 |
KeTestSpinLock KeTestSpinLock 例程测试旋转锁的可用性。 |
KeTryToAcquireGuardedMutex KeTryToAcquireGuardedMutex 例程获取受保护的互斥体(如果可用)。 |
KeTryToAcquireSpinLockAtDpcLevel KeTryToAcquireSpinLockAtDpcLevel 例程尝试在DISPATCH_LEVEL获取旋转锁。 |
KeWaitForMultipleObjects KeWaitForMultipleObjects 例程将当前线程置于可警报或不可变的等待状态,直到将任何或所有调度程序对象设置为信号状态或(可选),直到等待超时。 |
KeWaitForSingleObject KeWaitForSingleObject 例程将当前线程置于等待状态,直到给定调度程序对象设置为信号状态或(可选)直到等待超时。 |
KIPI_BROADCAST_WORKER PiGenericCall 例程在所有处理器上同时运行。 |
KMESSAGE_SERVICE_ROUTINE InterruptMessageService 例程服务消息信号中断。 |
KSERVICE_ROUTINE 如果有必要,InterruptService 例程 (ISR) 可快速处理设备中断并计划接收数据的中断后处理。 |
KSTART_ROUTINE ThreadStart 例程为驱动程序创建的系统线程提供入口点。 |
KSYNCHRONIZE_ROUTINE SynchCritSection 例程用于访问与驱动程序的 InterruptService 例程共享的硬件资源或驱动程序数据。 |
KzLowerIrql 将当前处理器上的 IRQL 还原到其原始值。 |
KzRaiseIrql 将硬件优先级提升到指定的 IRQL 值,从而屏蔽当前处理器上等效或较低 IRQL 的中断。 |
MM_MDL_ROUTINE 通过调用 MmMapMdl 函数映射内存描述符列表(MDL)之后调用的驱动程序提供的回调例程。 |
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 描述的缓冲区的长度(以字节为单位)。 |
mmGetmdlByteOffset mmGetMdlByteOffset 宏 返回给定 MDL 描述的缓冲区的初始页内的字节偏移量。 |
mmGetMdlPfnArray MmGetMdlPfnArray 宏返回指向与内存描述符列表(MDL)关联的物理页码数组的开头的指针。 |
mmGetPhysicalAddress MmGetPhysicalAddress 例程返回与有效非分页虚拟地址对应的物理地址。 |
mmGetPhysicalMemoryRangesEx2 MmGetPhysicalMemoryRangesEx2 例程返回非分页池块的虚拟地址,其中包含系统中的物理内存范围。 |
mmGetSystemAddressForMdl MmGetSystemAddressForMdl 例程已过时。 请改用 MmGetSystemAddressForMdlSafe。 |
mmGetSystemRoutineAddress MmGetSystemRoutineAddress 例程返回指向 SystemRoutineName 指定的函数的指针。 |
mmGetSystemRoutineAddressEx MmGetSystemRoutineAddressEx 函数返回指定系统模块中指定函数的地址。 |
mmIsAddressValid MmIsAddressValid 例程检查是否在给定的虚拟地址处发生读取或写入操作的页面错误。警告我们不建议使用此函数。 |
mmIsDriverSuspectForVerifier MmIsDriverSuspectForVerifier 例程指示由指定驱动程序对象表示的驱动程序是否位于驱动程序验证程序选择的驱动程序列表中。 |
mmIsDriverVerifying MmIsDriverVerifying 例程指示是否正在验证由指定驱动程序对象标识的内核模式驱动程序,还是调用驱动程序验证程序正在验证的驱动程序。 |
mmIsDriverVerifyingByAddress MmIsDriverVerifyingByAddress 例程检查是否正在验证由指定映像地址标识的内核模式驱动程序,还是调用驱动程序验证程序正在验证的驱动程序。 |
mmIsThisAnNtAsSystem MmIsThisAnNtAsSystem 例程已过时,适用于 Windows XP 和更高版本的 Windows。 请改用 RtlGetVersion 或 RtlVerifyVersionInfo。 |
mmLockPagableCodeSection MmLockPagableCodeSection 例程将驱动程序代码的一部分锁在系统空间中,其中包含一组用特殊编译器指令标记的驱动程序例程。 |
mmLockPagableDataSection MmLockPagableDataSection 例程将驱动程序数据的整个部分锁定到系统空间中。 |
mmLockPagableSectionByHandle MmLockPagableSectionByHandle 例程通过将句柄上的引用计数递增到系统内存中,将可分页代码或数据节锁定到系统内存中。 |
mmMapIoSpace MmMapIoSpace 例程将给定的物理地址范围映射到非分页系统空间。 |
mmMapIoSpaceEx MmMapIoSpaceEx 例程使用指定的页面保护将给定的物理地址范围映射到非分页系统空间。 |
mmMapLockedPages MmMapLockedPages 例程已过时,适用于 Windows 2000 及更高版本的 Windows 以及 Windows Me。 |
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 了解 NtCreateSection 函数。 |
NtCreateSectionEx 创建节对象。 |
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;如果可以安全地进一步使用该对象,则返回 FALSE。 |
ObReferenceObjectWithTag ObReferenceObjectWithTag 例程递增指定对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。 |
ObRegisterCallbacks ObRegisterCallbacks 例程注册线程、进程和桌面句柄操作的回调例程列表。 |
ObReleaseObjectSecurity ObReleaseObjectSecurity 例程是 ObGetObjectSecurity 的对等。 |
ObUnRegisterCallbacks ObUnRegisterCallbacks 例程取消注册一组注册到 ObRegisterCallbacks 例程的回调例程。 |
PALLOCATE_ADAPTER_CHANNEL AllocateAdapterChannel 例程代表目标设备对象为 DMA 操作准备系统,然后调用驱动程序提供的 AdapterControl 例程来执行 DMA 操作。 |
PALLOCATE_ADAPTER_CHANNEL_EX AllocateAdapterChannelEx 例程分配执行 DMA 传输所需的资源,然后调用驱动程序提供的 AdapterControl 例程来启动 DMA 传输。 |
PALLOCATE_COMMON_BUFFER AllocateCommonBuffer 例程分配内存并映射内存,以便可从处理器和设备同时访问内存以供 DMA 操作。 |
PALLOCATE_COMMON_BUFFER_EX AllocateCommonBufferEx 例程为通用缓冲区分配内存并映射此内存,以便处理器和执行 DMA 操作的设备可以访问该内存。 |
PALLOCATE_COMMON_BUFFER_VECTOR 详细了解:PALLOCATE_COMMON_BUFFER_VECTOR回调函数 |
PALLOCATE_COMMON_BUFFER_WITH_BOUNDS 此回调函数分配公共缓冲区的内存并将其映射,以便主设备和 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 电源管理框架 (PoFx) 中的 ACPI 通知。 |
PEPCALLBACKNOTIFYACPI AcceptAcpiNotification 事件回调例程处理来自 Windows 电源管理框架(PoFx)的 ACPI 通知。 |
PEPCALLBACKNOTIFYDPM 了解 AcceptDeviceNotification 事件回调例程如何处理 Windows 电源管理框架(PoFx)中的设备电源管理(DPM)通知。 |
PEPCALLBACKNOTIFYDPM AcceptDeviceNotification 事件回调例程处理来自 Windows 电源管理框架(PoFx)的设备电源管理(DPM)通知。 |
PEPCALLBACKNOTIFYPPM 了解 AcceptProcessorNotification 事件回调例程如何处理 Windows 电源管理框架(PoFx)中的处理器电源管理(PPM)通知。 |
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 PINTERFACE_DEREFERENCE回调函数 (wdm.h) 会减少驱动程序定义的接口上的引用计数。 |
PINTERFACE_REFERENCE PINTERFACE_REFERENCE回调函数 (miniport.h) 递增驱动程序定义的接口上的引用计数。 |
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_EFFECTIVE_POWER_MODE_CALLBACK PO_EFFECTIVE_POWER_MODE_CALLBACK是有效的电源模式回调。 |
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 了解平台扩展插件 (PEP) 如何调用 UpdatePlatformIdleState 例程来更新指定平台空闲状态的属性。 |
POFXCALLBACKUPDATEPLATFORMIDLESTATE UpdatePlatformIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定平台空闲状态的属性。 |
POFXCALLBACKUPDATEPROCESSORIDLESTATE 了解平台扩展插件 (PEP) 如何调用 UpdateProcessorIdleState 例程以更新指定处理器空闲状态的属性。 |
POFXCALLBACKUPDATEPROCESSORIDLESTATE UpdateProcessorIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定处理器空闲状态的属性。 |
PoFxCompleteDevicePowerNotRequired PoFxCompleteDevicePowerNotRequired 例程通知电源管理框架(PoFx)调用驱动程序已完成对驱动程序 DevicePowerNotRequiredCallback 回调例程的调用的响应。 |
PoFxCompleteDirectedPowerDown 定向 Power Framework (DFx) 客户端驱动程序调用此函数以完成定向下电转换。 |
PoFxCompleteIdleCondition PoFxCompleteIdleCondition 例程通知电源管理框架(PoFx)指定组件已完成对空闲条件的挂起更改。 |
PoFxCompleteIdleState PoFxCompleteIdleState 例程通知电源管理框架(PoFx)指定组件已完成对 Fx 状态的挂起更改。 |
PoFxIdleComponent PoFxIdleComponent 例程会递减指定组件上的激活引用计数。 |
PoFxIssueComponentPerfStateChange PoFxIssueComponentPerfStateChange 例程提交请求以将设备组件置于特定性能状态。 |
PoFxIssueComponentPerfStateChangeMultiple PoFxIssueComponentPerfStateChangeMultiple 例程提交请求,以同时为设备组件更改多个性能状态集中的性能状态。 |
PoFxNotifySurprisePowerOn PoFxNotifySurprisePowerOn 例程通知电源管理框架(PoFx)设备已打开,作为向其他设备供电的副作用。 |
PoFxPowerControl PoFxPowerControl 例程向电源管理框架(PoFx)发送电源控制请求。 |
PoFxPowerOnCrashdumpDevice PoFxPowerOnCrashdumpDevice 例程请求启用故障转储设备。 |
PoFxQueryCurrentComponentPerfState PoFxQueryCurrentComponentPerfState 例程检索组件性能状态集中的活动性能状态。 |
PoFxRegisterComponentPerfStates PoFxRegisterComponentPerfStates 例程注册设备组件,用于电源管理框架(PoFx)的性能状态管理。 |
PoFxRegisterCoreDevice 了解 PoFxRegisterCoreDevice 例程如何将新的核心系统资源注册到 Windows 电源管理框架(PoFx)。 |
PoFxRegisterCoreDevice PoFxRegisterCoreDevice 例程向 Windows 电源管理框架(PoFx)注册新的核心系统资源。 |
PoFxRegisterCrashdumpDevice PoFxRegisterCrashdumpDevice 例程注册故障转储设备。 |
PoFxRegisterDevice PoFxRegisterDevice 例程向电源管理框架(PoFx)注册设备。 |
PoFxRegisterPlugin 了解 PoFxRegisterPlugin 例程如何将平台扩展插件(PEP)注册到 Windows 电源管理框架(PoFx)。 |
PoFxRegisterPlugin PoFxRegisterPlugin 例程向 Windows 电源管理框架(PoFx)注册平台扩展插件(PEP)。 |
PoFxRegisterPluginEx 了解 PoFxRegisterPluginEx 例程如何将平台扩展插件(PEP)注册到 Windows 电源管理框架(PoFx)。 |
PoFxRegisterPluginEx PoFxRegisterPluginEx 例程向 Windows 电源管理框架(PoFx)注册平台扩展插件(PEP)。 |
PoFxReportDevicePoweredOn PoFxReportDevicePoweredOn 例程通知电源管理框架(PoFx)设备完成到 D0(完全打开)电源状态的请求转换。 |
PoFxSetComponentLatency PoFxSetComponentLatency 例程指定在从空闲条件转换到指定组件中的活动条件时可以容忍的最大延迟。 |
PoFxSetComponentResidency PoFxSetComponentResidency 例程设置组件进入空闲条件后可能保持空闲状态的估计时间。 |
PoFxSetComponentWake PoFxSetComponentWake 例程指示驱动程序是否在组件进入空闲条件时将指定组件抱起唤醒。 |
PoFxSetDeviceIdleTimeout PoFxSetDeviceIdleTimeout 例程指定从设备最后一个组件进入空闲条件到电源管理框架(PoFx)调用驱动程序的 DevicePowerNotRequiredCallback 例程的最短时间间隔。 |
PoFxSetTargetDripsDevicePowerState 调用此例程以通知电源管理器针对 DRIPS 的设备目标设备电源状态。 驱动程序可以替代 PEP 提供的 DRIPS 约束。 |
PoFxStartDevicePowerManagement PoFxStartDevicePowerManagement 例程使用电源管理框架(PoFx)完成设备的注册,并启动设备电源管理。 |
PoFxUnregisterDevice PoFxUnregisterDevice 例程从电源管理框架(PoFx)中删除设备的注册。 |
PoGetSystemWake PoGetSystemWake 例程确定指定的 IRP 是否已标记为从睡眠状态唤醒系统。 |
PopEntryList PopEntryList 例程从SINGLE_LIST_ENTRY结构的单向链接列表中删除第一个条目。 |
PoQueryWatchdogTime 详细了解 PoQueryWatchdogTime 例程。 |
PoQueryWatchdogTime wdm.h 中的 PoQueryWatchdogTime 例程指示电源管理器是否为分配给设备堆栈的任何电源 IRP 启用了超时计数器。 |
PoRegisterDeviceForIdleDetection 详细了解 PoRegisterDeviceForIdleDetection 例程。 |
PoRegisterDeviceForIdleDetection wdm.h 中的 PoRegisterDeviceForIdleDetection 例程启用或禁用空闲检测,并设置设备的空闲超时值。 |
PoRegisterForEffectivePowerModeNotifications PoRegisterForEffectivePowerModeNotifications 函数注册回调以接收有效的电源模式更改通知。 |
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。 |
PoUnregisterFromEffectivePowerModeNotifications PoUnregisterFromEffectivePowerModeNotifications 函数从有效的电源模式更改通知中注销。 |
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 例程请求总线驱动程序恢复子设备。 |
PRM_INVOKE_HANDLER 调用特定的 PRM 处理程序 |
PRM_LOCK_MODULE 锁定 PRM 模块并阻止其卸载。 |
PRM_QUERY_HANDLER 查询是否存在特定的 PRM 处理程序。 |
PRM_UNLOCK_MODULE 解锁 PRM 模块并允许更新它。 |
ProbeForRead ProbeForRead 例程检查用户模式缓冲区是否实际驻留在地址空间的用户部分中,并且正确对齐。 |
ProbeForWrite ProbeForWrite 例程检查用户模式缓冲区是否实际驻留在地址空间的用户模式部分,可写且正确对齐。 |
PROCESSOR_HALT_ROUTINE 停止回调例程将处理器转换为空闲状态。 |
PsAllocateAffinityToken PsAllocateAffinityToken 函数分配线程关联令牌。 |
PsAllocSiloContextSlot 此例程分配可用于在所有接收器中插入、检索和删除对象的槽。 |
PsAttachSiloToCurrentThread 此例程将线程暂时置于指定的接收器中。 |
PsCreateSiloContext 此例程创建一个对象,该对象将插入到接收器中。 |
PsCreateSystemThread PsCreateSystemThread 例程创建一个系统线程,该线程在内核模式下执行,并返回线程的句柄。 |
PsDereferenceSiloContext 此例程递减对象上的引用计数。 |
PsDetachSiloFromCurrentThread 此例程从附加添加的接收器中删除线程。 有关附加的详细信息,请参阅 PsAttachSiloToCurrentThread 例程。 |
PsFreeAffinityToken PsFreeAffinityToken 函数释放由 PsAllocateAffinityToken 分配的关联令牌。 |
PsFreeSiloContextSlot 此例程释放指定的槽,并使它在系统中可用。 它会撤消 PsAllocSiloContextSlot 例程的效果。 |
PsGetCurrentProcessId PsGetCurrentProcessId 例程标识当前线程的进程。 |
PsGetCurrentServerSilo 此例程返回线程的有效服务器接收器。 |
PsGetCurrentSilo 此例程返回调用线程的当前接收器。 首先检查线程,以查看它是否已附加到接收器。 如果没有,则检查线程是否位于孤岛中。 |
PsGetCurrentThread PsGetCurrentThread 例程标识当前线程。 |
PsGetCurrentThread 了解 PsGetCurrentThread 例程如何标识当前线程。 |
PsGetCurrentThread 了解 PsGetCurrentThread 例程 (wdm.h) 如何标识当前线程。 |
PsGetCurrentThreadId PsGetCurrentThreadId 例程标识当前线程。 |
PsGetCurrentThreadTeb PsGetCurrentThreadTeb 例程返回当前线程的线程环境块(TEB)。 必须在内核模式下调用。 |
PsGetEffectiveServerSilo 此例程遍历接收器的父链,直到找到有效的服务器接收器或主机接收器。 |
PsGetHostSilo 此例程返回主机接收器。 |
PsGetJobServerSilo 此例程返回作业的有效 ServerSilo。 只要提供的 Job 对象保持引用,返回的指针就有效。 |
PsGetJobSilo 此例程返回层次结构中作为接收器的第一个作业。 只要提供的 Job 对象保持引用,返回的指针就有效。 |
PsGetParentSilo 检索给定作业对象的层次结构中最直接的父接收器。 |
PsGetPermanentSiloContext 此例程检索在接收器中插入的对象,而不递增引用计数。 |
PsGetProcessCreateTimeQuadPart PsGetProcessCreateTimeQuadPart 例程返回一个LONGLONG 值,该值表示创建进程的时间。 |
PsGetProcessExitStatus |
PsGetProcessId PsGetProcessId 例程返回与指定进程关联的进程标识符(进程 ID)。 |
PsGetProcessStartKey |
PsGetServerSiloActiveConsoleId 获取提供线程的当前服务器接收器上下文的活动控制台。 |
PsGetSiloContainerId 获取给定接收器的 ContainerId。 |
PsGetSiloContext 此例程从指定的接收器和槽中检索接收器上下文。 |
PsGetSiloMonitorContextSlot 此例程返回注册期间监视器分配的接收器上下文槽。 |
PsGetThreadCreateTime |
PsGetThreadExitStatus |
PsGetThreadId |
PsGetThreadProcessId PsGetThreadProcessId 例程返回与指定线程的进程关联的进程标识符。 |
PsGetThreadProperty |
PsGetThreadServerSilo 确定给定线程是否为孤岛。 |
PsGetVersion 此函数在 Windows XP 和更高版本的 Windows 操作系统中已过时。 请改用 RtlGetVersion。PsGetVersion 返回有关基于 NT 的操作系统的当前版本的调用方选择的信息。 |
PsInsertPermanentSiloContext 此例程在接收器的空槽中插入对象。 |
PsInsertSiloContext 了解此例程如何在接收器的空槽中插入对象。 |
PsIsHostSilo 此例程将检查提供的接收器是否为主机接收器。 |
PsIsSystemThread PsIsSystemThread 例程检查给定线程是否为系统线程。 |
PsMakeSiloContextPermanent 此例程使接收器实例中的槽处于只读状态,从而允许检索槽中的对象,而不会影响该对象的引用计数。 |
PsQueryTotalCycleTimeProcess PsQueryTotalCycleTimeProcess 例程返回指定进程的累积周期时间。 |
PsReferenceSiloContext 此例程递增对象上的引用计数。 |
PsRegisterSiloMonitor 此例程注册一个服务器接收器监视器,该监视器可以接收有关服务器接收器事件的通知。 |
PsRemoveCreateThreadNotifyRoutine PsRemoveCreateThreadNotifyRoutine 例程删除由 PsSetCreateThreadNotifyRoutine 例程注册的回调例程。 |
PsRemoveLoadImageNotifyRoutine PsRemoveLoadImageNotifyRoutine 例程删除由 PsSetLoadImageNotifyRoutine 例程注册的回调例程。 |
PsRemoveSiloContext 此例程删除在接收器中插入的对象。 |
PsReplaceSiloContext 此例程在接收器中插入对象。 |
PsRevertToUserMultipleGroupAffinityThread PsRevertToUserMultipleGroupAffinityThread 函数将当前线程还原为其以前的关联,如给定的关联令牌指示。 |
PsSetCreateProcessNotifyRoutine PsSetCreateProcessNotifyRoutine 例程向创建或删除进程时调用的例程列表添加驱动程序提供的回调例程或将其从中删除。 |
PsSetCreateProcessNotifyRoutineEx PsSetCreateProcessNotifyRoutineEx 例程注册或删除回调例程,在创建或退出进程时通知调用方。 |
PsSetCreateProcessNotifyRoutineEx2 PsSetCreateProcessNotifyRoutineEx2 例程注册或删除回调例程,在创建或删除进程时通知调用方。 |
PsSetCreateThreadNotifyRoutine PsSetCreateThreadNotifyRoutine 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。 |
PsSetCreateThreadNotifyRoutineEx PsSetCreateThreadNotifyRoutineEx 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。 |
PsSetLoadImageNotifyRoutine PsSetLoadImageNotifyRoutine 例程注册驱动程序提供的回调,每当加载映像(或映射到内存中)时,该回调随后都会收到通知。 |
PsSetLoadImageNotifyRoutineEx PsSetLoadImageNotifyRoutineEx 例程注册驱动程序提供的回调,该回调随后会在加载映像(或映射到内存)时收到通知。 |
PsSetSystemMultipleGroupAffinityThread PsSetSystemMultipleGroupAffinityThread 函数设置当前线程的多组系统相关性。 |
PsStartSiloMonitor 此例程尝试启动服务器接收器监视器。 |
PsTerminateServerSilo 此例程终止指定的接收器。 |
PsTerminateSystemThread PsTerminateSystemThread 例程终止当前系统线程。 |
PsUnregisterSiloMonitor 此例程取消注册服务器接收器监视器。 |
PTM_RM_NOTIFICATION 资源管理器的 ResourceManagerNotification 回调例程接收和处理事务通知。 |
PushEntryList PushEntryList 例程在SINGLE_LIST_ENTRY结构单一链接列表的开头插入一个条目。 |
READ_PORT_BUFFER_UCHAR READ_PORT_BUFFER_UCHAR函数(miniport.h)将指定端口地址中的字节数读取到缓冲区中。 |
READ_PORT_BUFFER_UCHAR READ_PORT_BUFFER_UCHAR函数(wdm.h)将指定端口地址中的字节数读取到缓冲区中。 |
READ_PORT_BUFFER_ULONG READ_PORT_BUFFER_ULONG函数(miniport.h)将指定端口地址中的多个 ULONG 值读取到缓冲区中。 |
READ_PORT_BUFFER_ULONG READ_PORT_BUFFER_ULONG函数 (wdm.h) 将指定端口地址中的多个 ULONG 值读取到缓冲区中。 |
READ_PORT_BUFFER_USHORT READ_PORT_BUFFER_USHORT函数(miniport.h)将指定端口地址中的许多 USHORT 值读取到缓冲区中。 |
READ_PORT_BUFFER_USHORT READ_PORT_BUFFER_USHORT函数 (wdm.h) 将指定端口地址中的许多 USHORT 值读取到缓冲区中。 |
READ_PORT_UCHAR READ_PORT_UCHAR函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。 |
READ_PORT_UCHAR READ_PORT_UCHAR函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。 |
READ_PORT_UCHAR READ_PORT_UCHAR函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。 |
READ_PORT_ULONG READ_PORT_ULONG函数(ioaccess.h)返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。 |
READ_PORT_ULONG READ_PORT_ULONG函数(miniport.h)返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。 |
READ_PORT_ULONG READ_PORT_ULONG函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。 |
READ_PORT_USHORT READ_PORT_USHORT函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。 |
READ_PORT_USHORT READ_PORT_USHORT函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。 |
READ_PORT_USHORT READ_PORT_USHORT函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。 |
READ_REGISTER_BUFFER_UCHAR READ_REGISTER_BUFFER_UCHAR函数 (miniport.h) 将指定寄存器地址中的字节数读取到缓冲区中。 |
READ_REGISTER_BUFFER_UCHAR READ_REGISTER_BUFFER_UCHAR函数 (wdm.h) 将指定寄存器地址中的字节数读取到缓冲区中。 |
READ_REGISTER_BUFFER_ULONG READ_REGISTER_BUFFER_ULONG函数(miniport.h)将指定寄存器地址中的多个 ULONG 值读取到缓冲区中。 |
READ_REGISTER_BUFFER_ULONG READ_REGISTER_BUFFER_ULONG函数 (wdm.h) 将指定寄存器地址中的多个 ULONG 值读取到缓冲区中。 |
READ_REGISTER_BUFFER_ULONG64 READ_REGISTER_BUFFER_ULONG64函数(wdm.h)将指定寄存器地址中的许多ULONG64值读取到缓冲区中。 |
READ_REGISTER_BUFFER_USHORT READ_REGISTER_BUFFER_USHORT函数(miniport.h)将指定寄存器地址中的许多 USHORT 值读取到缓冲区中。 |
READ_REGISTER_BUFFER_USHORT READ_REGISTER_BUFFER_USHORT函数 (wdm.h) 将指定寄存器地址中的许多 USHORT 值读取到缓冲区中。 |
READ_REGISTER_UCHAR READ_REGISTER_UCHAR函数 (ioaccess.h) 从驻留的映射设备内存中的指定寄存器地址返回字节读取。 |
READ_REGISTER_UCHAR READ_REGISTER_UCHAR函数 (miniport.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的字节。 |
READ_REGISTER_UCHAR READ_REGISTER_UCHAR函数 (wdm.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的字节。 |
READ_REGISTER_ULONG READ_REGISTER_ULONG函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 ULONG 值。 |
READ_REGISTER_ULONG READ_REGISTER_ULONG函数(miniport.h)返回从驻留的映射设备内存中的指定寄存器地址读取的 ULONG 值。 |
READ_REGISTER_ULONG READ_REGISTER_ULONG函数 (wdm.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 ULONG 值。 |
READ_REGISTER_ULONG64 READ_REGISTER_ULONG64函数 (wdm.h) 从指定的寄存器地址读取ULONG64值。 |
READ_REGISTER_USHORT READ_REGISTER_USHORT函数 (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),系统使用该标识符来表示安全特权。 |
RtlCopyDeviceMemory 在开发人员需要进一步确保访问设备内存时不会生成对齐错误的情况下,提供 RtlCopyVolatileMemory 行为。 |
RtlCopyMemory 了解 RtlCopyMemory 例程如何将源内存块的内容复制到目标内存块。 |
RtlCopyMemoryNonTemporal 此函数使用不污染缓存的非时态移动从一个缓冲区复制到另一个缓冲区。 缓冲区不应重叠。 |
RtlCopyString RtlCopyString 例程将源字符串复制到目标字符串。 |
RtlCopyUnicodeString RtlCopyUnicodeString 例程将源字符串复制到目标字符串。 |
RtlCopyVolatileMemory 在开发人员需要确保复制操作发生的情况下,提供 RtlCopyMemory 行为。 |
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。 |
RtlFillDeviceMemory 在开发人员需要进一步确保访问设备内存时不会生成对齐错误的情况下,提供 RtlFillVolatileMemory 行为。 |
RtlFillMemory RtlFillMemory 例程使用指定的填充值填充内存块。 |
RtlFillMemoryNonTemporal 此函数使用不污染缓存的非时态移动,使用指定的填充值填充内存块。 |
RtlFillVolatileMemory 在开发人员需要确保设置操作发生的情况下,提供 RtlFillMemory 行为。 |
RtlFindClearBits RtlFindClearBits 例程搜索位图中请求大小的一系列明位。 |
RtlFindClearBitsAndSet RtlFindClearBitsAndSet 例程搜索位图中请求大小的清除位范围,并在找到位图时设置该区域中的所有位。 |
RtlFindClearRuns RtlFindClearRuns 例程查找给定位图中指定数量的清除位运行。 |
RtlFindFirstRunClear RtlFindFirstRunClear 例程搜索给定位图中初始连续的明位范围。 |
RtlFindLastBackwardRunClear 从指定的索引位置开始,RtlFindLastBackwardRunClear 例程将搜索给定位图中前面的明文位运行。 |
RtlFindLeastSignificantBit RtlFindLeastSignificantBit 例程在其参数中返回最小有效非零位的从零开始的位置。 |
RtlFindLongestRunClear RtlFindLongestRunClear 例程搜索给定位图中最大连续的清除位范围。 |
RtlFindMostSignificantBit RtlFindMostSignificantBit 例程在其参数中返回最重要非零位的从零开始的位置。 |
RtlFindNextForwardRunClear 从指定的索引位置开始,RtlFindNextForwardRunClear 例程将搜索给定位图变量以查找下一个明确的位数运行。 |
RtlFindSetBits RtlFindSetBits 例程搜索位图中请求大小的一系列集位。 |
RtlFindSetBitsAndClear RtlFindSetBitsAndClear 例程搜索位图中请求大小的集位范围,并在找到位时清除该区域中的所有位。 |
RtlFreeAnsiString RtlFreeAnsiString 例程释放由 RtlUnicodeStringToAnsiString 分配的存储。 |
RtlFreeUnicodeString RtlFreeUnicodeString 例程释放由 RtlAnsiStringToUnicodeString 或 RtlUpcaseUnicodeString 分配的存储。 |
RtlFreeUTF8String RtlFreeUTF8String 函数释放由 RtlUnicodeStringToUTF8String 分配的存储。 |
RtlGetEnabledExtendedFeatures RtlGetEnabledExtendedFeatures 例程返回系统启用的扩展处理器功能的掩码。 |
RtlGetPersistedStateLocation 从重定向映射中检索指定 SourceID 的重定向位置。 |
RtlGetVersion RtlGetVersion 例程返回有关当前正在运行的操作系统的版本信息。 |
RtlGUIDFromString RtlGUIDFromString 例程以二进制格式将给定的 Unicode 字符串转换为 GUID。 |
RtlHashUnicodeString RtlHashUnicodeString 例程从给定的 Unicode 字符串和哈希算法创建哈希值。 |
RtlIncrementCorrelationVector 递增指定的关联向量。 对于形式的 X.i 的相关向量,递增值为 X.(i+1)。 |
RtlInitAnsiString RtlInitAnsiString 例程初始化 ANSI 字符的计数字符串。 |
RtlInitializeBitMap RtlInitializeBitMap 例程初始化位图变量的标头。 |
RtlInitializeCorrelationVector 使用提供的 GUID 初始化指定的关联向量。 |
RtlInitString RtlInitString 例程初始化计数的 8 位字符字符串。 |
RtlInitStringEx ntifs.h 中的 RtlInitStringEx 例程初始化 8 位字符的计数字符串。 RtlInitStringEx 不会更改源字符串。 |
RtlInitStringEx wdm.h 中的 RtlInitStringEx 例程初始化计数的 8 位字符字符串。 RtlInitStringEx 不会更改源字符串。 |
RtlInitUnicodeString 有关详细信息,请参阅 WdmlibRtlInitUnicodeStringEx 函数。 |
RtlInitUTF8String RtlInitUTF8String 函数初始化 UTF-8 字符的计数字符串。 |
RtlInitUTF8StringEx RtlInitUTF8StringEx 例程初始化 UTF-8 字符的计数字符串。 |
RtlInt64ToUnicodeString RtlInt64ToUnicodeString 例程将指定的无符号 64 位整数值转换为表示指定基中的值的 Unicode 字符串。 |
RtlInt8Add 添加 INT8 类型的两个值。 |
RtlInt8Mult 将 INT8 类型的一个值乘以另一个值。 |
RtlInt8Sub 从另一个值中减去 INT8 类型的一个值。 |
RtlInt8ToUChar 将 INT8 类型的值转换为 UCHAR 类型的值。 |
RtlInt8ToUInt 将 INT8 类型的值转换为 UINT 类型的值。 |
RtlInt8ToUInt8 将 INT8 类型的值转换为 UINT8 类型的值。 |
RtlInt8ToUIntPtr 将 INT8 类型的值转换为UINT_PTR类型的值。 |
RtlInt8ToULong 将 INT8 类型的值转换为 ULONG 类型的值。 |
RtlInt8ToULongLong 将 INT8 类型的值转换为 ULONGLONG 类型的值。 |
RtlInt8ToULongPtr 将 INT8 类型的值转换为ULONG_PTR类型的值。 |
RtlInt8ToUShort 将 INT8 类型的值转换为 USHORT 类型的值。 |
RtlIntAdd 添加 INT 类型的两个值。 |
RtlIntegerToUnicodeString RtlIntegerToUnicodeString 例程将无符号整数值转换为指定基数中一个或多个 Unicode 字符的以 null 结尾的字符串。 |
RtlIntMult 将 INT 类型的一个值乘以另一个值。 |
RtlIntPtrAdd 添加INT_PTR类型的两个值。 |
RtlIntPtrMult 将INT_PTR类型的一个值相乘另一个值。 |
RtlIntPtrSub 从另一个值减去类型INT_PTR的一个值。 |
RtlIntPtrToChar 将类型INT_PTR的值转换为 CHAR 类型的值。 |
RtlIntPtrToInt 将类型INT_PTR的值转换为 INT 类型的值。 |
RtlIntPtrToInt8 将类型INT_PTR的值转换为 INT8 类型的值。 |
RtlIntPtrToLong 将类型INT_PTR的值转换为 LONG 类型的值。 |
RtlIntPtrToLongPtr 将类型INT_PTR的值转换为类型LONG_PTR的值。 |
RtlIntPtrToShort 将类型INT_PTR的值转换为 SHORT 类型的值。 |
RtlIntPtrToUChar 将类型INT_PTR的值转换为 UCHAR 类型的值。 |
RtlIntPtrToUInt 将类型INT_PTR的值转换为 UINT 类型的值。 |
RtlIntPtrToUInt8 将类型INT_PTR的值转换为 UINT8 类型的值。 |
RtlIntPtrToUIntPtr 将类型INT_PTR的值转换为UINT_PTR类型的值。 |
RtlIntPtrToULong 将类型INT_PTR的值转换为 ULONG 类型的值。 |
RtlIntPtrToULongLong 将类型INT_PTR的值转换为 ULONGLONG 类型的值。 |
RtlIntPtrToULongPtr 将类型INT_PTR的值转换为ULONG_PTR类型的值。 |
RtlIntPtrToUnicodeString RtlIntPtrToUnicodeString 例程将指定的ULONG_PTR值转换为 Unicode 字符串,该字符串表示指定基中的值。 |
RtlIntPtrToUShort 将类型INT_PTR的值转换为 USHORT 类型的值。 |
RtlIntSub 从另一个 INT 类型减去一个值。 |
RtlIntToChar 将 INT 类型的值转换为 CHAR 类型的值。 |
RtlIntToInt8 将 INT 类型的值转换为 INT8 类型的值。 |
RtlIntToShort 将 INT 类型的值转换为 SHORT 类型的值。 |
RtlIntToUChar 将 INT 类型的值转换为 UCHAR 类型的值。 |
RtlIntToUInt 将 INT 类型的值转换为 UINT 类型的值。 |
RtlIntToUInt8 将 INT 类型的值转换为 UINT8 类型的值。 |
RtlIntToULong 将 INT 类型的值转换为 ULONG 类型的值。 |
RtlIntToULongLong 将 INT 类型的值转换为 ULONGLONG 类型的值。 |
RtlIntToUShort 将 INT 类型的值转换为 USHORT 类型的值。 |
RtlIoDecodeMemIoResource RtlIoDecodeMemIoResource 例程提供了描述内存或 I/O 端口地址范围的IO_RESOURCE_DESCRIPTOR结构中包含的地址信息。 |
RtlIoEncodeMemIoResource RtlIoEncodeMemIoResource 例程更新IO_RESOURCE_DESCRIPTOR结构,以描述一系列内存或 I/O 端口地址。 |
RtlIsNtDdiVersionAvailable RtlIsNtDdiVersionAvailable 例程确定Microsoft Windows 设备驱动程序接口(DDI)的指定版本是否可用。 |
RtlIsServicePackVersionInstalled RtlIsServicePackVersionInstalled 例程确定是否安装了Microsoft Windows 设备驱动程序接口(DDI)的指定 Service Pack 版本。 |
RtlIsStateSeparationEnabled 检查当前上下文的 SKU 是否支持多个会话。 |
RtlIsZeroMemory 此例程检查未对齐内存块是否全部为零。 |
RtlLengthSecurityDescriptor RtlLengthSecurityDescriptor 例程返回给定安全描述符的大小。 |
RtlLongAdd 添加 LONG 类型的两个值。 |
RtlLongLongAdd 添加 LONGLONG 类型的两个值。 |
RtlLongLongMult 将 LONGLONG 类型的一个值乘以另一个值。 |
RtlLongLongSub 从另一个值中减去 LONGLONG 类型的一个值。 |
RtlLongLongToChar 将 LONGLONG 类型的值转换为 CHAR 类型的值。 |
RtlLongLongToInt 将 LONGLONG 类型的值转换为 INT 类型的值。 |
RtlLongLongToInt8 将 LONGLONG 类型的值转换为 INT8 类型的值。 |
RtlLongToIntPtr 将 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 类型的值。 |
RtlLongLongToULongLong 将 LONGLONG 类型的值转换为 LONGLONG 类型的值。 |
RtlLongLongToUShort 将 LONGLONG 类型的值转换为 USHORT 类型的值。 |
RtlLongMult 将 LONG 类型的一个值乘以另一个值。 |
RtlLongPtrAdd LONG_PTR类型的两个值相加。 |
RtlLongPtrMult 将LONG_PTR类型的一个值相乘另一个值。 |
RtlLongPtrSub 从另一个值减去类型LONG_PTR的一个值。 |
RtlLongPtrToChar 将类型LONG_PTR的值转换为 CHAR 类型的值。 |
RtlLongPtrToInt 将类型LONG_PTR的值转换为 INT 类型的值。 |
RtlLongPtrToInt8 将类型LONG_PTR的值转换为 INT8 类型的值。 |
RtlLongPtrToIntPtr 将类型LONG_PTR的值转换为INT_PTR类型的值。 |
RtlLongPtrToLong 将类型LONG_PTR的值转换为 LONG 类型的值。 |
RtlLongPtrToShort 将类型LONG_PTR的值转换为 SHORT 类型的值。 |
RtlLongPtrToUChar 将类型LONG_PTR的值转换为 UCHAR 类型的值。 |
RtlLongPtrToUInt 将类型LONG_PTR的值转换为 UINT 类型的值。 |
RtlLongPtrToUInt8 将类型为 LONG_PTR 的值转换为 UINT8 类型的值。 |
RtlLongPtrToUIntPtr 将类型LONG_PTR的值转换为UINT_PTR类型的值。 |
RtlLongPtrToULong 将类型LONG_PTR的值转换为 ULONG 类型的值。 |
RtlLongPtrToULongLong 将类型LONG_PTR的值转换为 ULONGLONG 类型的值。 |
RtlLongPtrToULongPtr 将类型LONG_PTR的值转换为ULONG_PTR类型的值。 |
RtlLongPtrToUShort 将类型LONG_PTR的值转换为 USHORT 类型的值。 |
RtlLongSub 从另一个值中减去 LONG 类型的一个值。 |
RtlLongToChar 将 LONG 类型的值转换为 CHAR 类型的值。 |
RtlLongToInt 将 LONG 类型的值转换为 INT 类型的值。 |
RtlLongToInt8 将 LONG 类型的值转换为 INT8 类型的值。 |
RtlLongToIntPtr 将 LONG 类型的值转换为INT_PTR类型的值。 |
RtlLongToShort 将 LONG 类型的值转换为 SHORT 类型的值。 |
RtlLongToUChar 将 LONG 类型的值转换为 UCHAR 类型的值。 |
RtlLongToUInt 将 LONG 类型的值转换为 UINT 类型的值。 |
RtlLongToUInt8 将 LONG 类型的值转换为 UINT8 类型的值。 |
RtlLongToUIntPtr 将 LONG 类型的值转换为UINT_PTR类型的值。 |
RtlLongToULong 将 LONG 类型的值转换为 ULONG 类型的值。 |
RtlLongToULongLong 将 LONG 类型的值转换为 ULONGLONG 类型的值。 |
RtlLongToULongPtr 将 LONG 类型的值转换为ULONG_PTR类型的值。 |
RtlLongToUShort 将 LONG 类型的值转换为 USHORT 类型的值。 |
RtlMapGenericMask RtlMapGenericMask 例程确定由ACCESS_MASK指定的非泛型访问权限。 |
RtlMoveMemory RtlMoveMemory 例程将源内存块的内容复制到目标内存块,并支持重叠的源和目标内存块。 |
RtlMoveVolatileMemory 在开发人员需要确保复制操作发生的情况下提供 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 例程以保证安全的方式使用零填充内存块。 |
RtlSecureZeroMemory2 提供 RtlFillVolatileMemory 周围的便利包装器,与 RtlZeroVolatileMemory 相同。 |
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 类型的两个值。 |
RtlUlongByteSwap RtlUlongByteSwap 例程反转 64 位无符号整数值中的 8 个字节的顺序。 |
RtlULongLongMult 将 ULONGLONG 类型的一个值乘以另一个值。 |
RtlULongLongSub 从另一个值中减去 ULONGLONG 类型的一个值。 |
RtlULongLongToChar 将 ULONGLONG 类型的值转换为 CHAR 类型的值。 |
RtlULongToInt 将 ULONGLONG 类型的值转换为 INT 类型的值。 |
RtlULongToInt8 将 ULONGLONG 类型的值转换为 INT8 类型的值。 |
RtlULongLongToLong 将 ULONGLONG 类型的值转换为 LONG 类型的值。 |
RtlULongLongToLongLong 将 ULONGLONG 类型的值转换为 LONGLONG 类型的值。 |
RtlULongLongToLongPtr 将 ULONGLONG 类型的值转换为LONG_PTR类型的值。 |
RtlULongLongToShort 将 ULONGLONG 类型的值转换为 SHORT 类型的值。 |
RtlULongToUChar 将 ULONGLONG 类型的值转换为 UCHAR 类型的值。 |
RtlULongToUInt 将 ULONGLONG 类型的值转换为 UINT 类型的值。 |
RtlULongToUInt8 将 ULONGLONG 类型的值转换为 UINT8 类型的值。 |
RtlULongToUIntPtr 将 ULONGLONG 类型的值转换为UINT_PTR类型的值。 |
RtlULongLongToULong 将 ULONGLONG 类型的值转换为 ULONG 类型的值。 |
RtlULongLongToULongPtr 将 ULONGLONG 类型的值转换为ULONG_PTR类型的值。 |
RtlULongToUShort 将 ULONGLONG 类型的值转换为 USHORT 类型的值。 |
RtlULongMult 将 ULONG 类型的一个值乘以另一个值。 |
RtlULongPtrAdd ULONG_PTR类型的两个值相加。 |
RtlULongPtrMult 将类型ULONG_PTR的一个值相乘另一个值。 |
RtlULongPtrSub 从另一个值减去类型ULONG_PTR的一个值。 |
RtlULongPtrToChar 将类型ULONG_PTR的值转换为 CHAR 类型的值。 |
RtlULongPtrToInt 将类型ULONG_PTR的值转换为 INT 类型的值。 |
RtlULongPtrToInt8 将类型ULONG_PTR的值转换为 INT8 类型的值。 |
RtlULongPtrToIntPtr 将类型ULONG_PTR的值转换为INT_PTR类型的值。 |
RtlULongPtrToLong 将类型ULONG_PTR的值转换为 LONG 类型的值。 |
RtlULongPtrToLongLong 将类型ULONG_PTR的值转换为 LONGLONG 类型的值。 |
RtlULongPtrToLongPtr 将类型ULONG_PTR的值转换为LONG_PTR类型的值。 |
RtlULongPtrToShort 将类型ULONG_PTR的值转换为 SHORT 类型的值。 |
RtlULongPtrToUChar 将类型ULONG_PTR的值转换为 UCHAR 类型的值。 |
RtlULongPtrToUInt 将类型ULONG_PTR的值转换为 UINT 类型的值。 |
RtlULongPtrToUInt8 将类型ULONG_PTR的值转换为 UINT8 类型的值。 |
RtlULongPtrToUIntPtr 将类型ULONG_PTR的值转换为UINT_PTR类型的值。 |
RtlULongPtrToULong 将类型ULONG_PTR的值转换为 ULONG 类型的值。 |
RtlULongPtrToUShort 将类型ULONG_PTR的值转换为 USHORT 类型的值。 |
RtlULongSub 从另一个 ULONG 类型减去一个值。 |
RtlULongToChar 将 ULONG 类型的值转换为 CHAR 类型的值。 |
RtlULongToInt 将 ULONG 类型的值转换为 INT 类型的值。 |
RtlULongToInt8 将 ULONG 类型的值转换为 INT8 类型的值。 |
RtlULongToIntPtr 将 ULONG 类型的值转换为INT_PTR类型的值。 |
RtlULongToLong 将 ULONG 类型的值转换为 LONG 类型的值。 |
RtlULongToLongPtr 将 ULONG 类型的值转换为LONG_PTR类型的值。 |
RtlULongToShort 将 ULONG 类型的值转换为 SHORT 类型的值。 |
RtlULongToUChar 将 ULONG 类型的值转换为 UCHAR 类型的值。 |
RtlULongToUInt 将 ULONG 类型的值转换为 UINT 类型的值。 |
RtlULongToUInt8 了解此函数如何将类型ULONG_PTR的值转换为 UINT8 类型的值。 |
RtlULongToUIntPtr 了解此方法如何将类型ULONG_PTR的值转换为UINT_PTR类型的值。 |
RtlULongToUShort 将 ULONG 类型的值转换为 USHORT 类型的值。 |
RtlUnalignedStringCbLengthW RtlUnalignedStringCbLengthW 函数是 RtlStringCbLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。 |
RtlUnalignedStringCchLengthW RtlUnalignedStringCchLengthW 函数是 RtlStringCchLength 函数的版本,该函数接受指向 Unicode 字符字符串的未对齐指针。 |
RtlUnicodeStringCat RtlUnicodeStringCat 函数连接UNICODE_STRING结构中包含的两个字符串。 |
RtlUnicodeStringCatEx RtlUnicodeStringCatEx 函数连接UNICODE_STRING结构中包含的两个字符串。 |
RtlUnicodeStringCatString 当目标字符串包含在UNICODE_STRING结构中时,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 输入字符串为 null 时,UTF-8 输出才会终止。 |
RtlUnicodeToUTF8N wdm.h 中的 RtlUnicodeToUTF8N 例程将 Unicode 字符串转换为 UTF-8 字符串。 仅当 Unicode 输入字符串为 null 时,UTF-8 输出才会终止。 |
RtlUpcaseUnicodeChar RtlUpcaseUnicodeChar 例程将指定的 Unicode 字符转换为大写。 |
RtlUpcaseUnicodeString RtlUpcaseUnicodeString 例程将源字符串的副本转换为大写,并在目标缓冲区中写入转换后的字符串。 |
RtlUpperChar RtlUpperChar 例程将指定的字符转换为大写。 |
RtlUpperString RtlUpperString 例程将给定的 SourceString 复制到 DestinationString 缓冲区,并将其转换为大写。 |
RtlUShortAdd 添加 USHORT 类型的两个值。 |
RtlUshortByteSwap RtlUshortByteSwap 例程反转 16 位无符号整数值中的两个字节的顺序。 |
RtlUShortMult 将 USHORT 类型的一个值乘以另一个值。 |
RtlUShortSub 从另一个值中减去 USHORT 类型的一个值。 |
RtlUShortToChar 将 USHORT 类型的值转换为 CHAR 类型的值。 |
RtlUShortToInt8 将 USHORT 类型的值转换为 INT8 类型的值。 |
RtlUShortToShort 将 USHORT 类型的值转换为 SHORT 类型的值。 |
RtlUShortToUChar 将 USHORT 类型的值转换为 UCHAR 类型的值。 |
RtlUShortToUInt8 将 USHORT 类型的值转换为 UINT8 类型的值。 |
RtlUTF8StringToUnicodeString RtlUTF8StringToUnicodeString 函数根据当前系统区域设置信息将指定的 UTF8 源字符串转换为 Unicode 字符串。 |
RtlUTF8ToUnicodeN ntifs.h 中的 RtlUTF8ToUnicodeN 例程将 UTF-8 字符串转换为 Unicode 字符串。 仅当 UTF-8 输入字符串为 null 时,Unicode 输出才以 null 结尾。 |
RtlUTF8ToUnicodeN wdm.h 中的 RtlUTF8ToUnicodeN 例程将 UTF-8 字符串转换为 Unicode 字符串。 仅当 UTF-8 输入字符串为 null 时,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 字符串所需的字节数。 |
RtlZeroDeviceMemory 提供 RtlFillDeviceMemory 周围的便利包装器。 |
RtlZeroMemory RtlZeroMemory 宏 (wdm.h) 用零填充内存块,给定指向块的指针以及要填充的长度(以字节为单位)。 |
RtlZeroVolatileMemory 提供 RtlFillVolatileMemory 周围的便利包装器。 |
SeAccessCheck SeAccessCheck 例程确定是否可以向受安全描述符和对象所有者保护的对象授予请求的访问权限。 |
SeAssignSecurity SeAssignSecurity 例程为新对象生成一个自相对安全描述符,给定其父目录的安全描述符和最初请求该对象的安全性。 |
SeAssignSecurityEx 根据以下可选参数:_a对象的父目录的安全描述符、对象的显式安全描述符和对象类型,SeAssignSecurityEx 例程为新对象生成自相关安全描述符。 |
SeDeassignSecurity SeDeassignSecurity 例程解除分配与使用 SeAssignSecurity 分配的安全描述符关联的内存。 |
SeFreePrivileges SeFreePrivileges 例程释放 SeAccessCheck 返回的特权集。 |
SeSinglePrivilegeCheck SeSinglePrivilegeCheck 例程检查当前线程上下文中传递的特权值。 |
SET_D3COLD_SUPPORT SetD3ColdSupport 例程启用或禁用到 D3cold 设备电源状态的转换。 |
SeValidSecurityDescriptor SeValidSecurityDescriptor 例程返回给定的安全描述符是否在结构上有效。 |
SILO_CONTEXT_CLEANUP_CALLBACK 当上下文对象达到引用计数为零时,将调用此回调。 |
SILO_MONITOR_CREATE_CALLBACK 创建新接收器时会调用此回调。 |
SILO_MONITOR_TERMINATE_CALLBACK 终止接收器时会调用此回调。 |
TmCommitComplete TmCommitComplete 例程通知 KTM 调用资源管理器已完成提交事务。 |
TmCommitEnlistment TmCommitEnlistment 例程为指定的登记事务启动提交操作。 |
TmCommitTransaction TmCommitTransaction 例程为指定的事务启动提交操作。 |
TmCreateEnlistment TmCreateEnlistment 例程为事务创建新的登记对象。 |
TmDereferenceEnlistmentKey TmDereferenceEnlistmentKey 例程递减指定登记对象的键的引用计数。 |
TmEnableCallbacks TmEnableCallbacks 例程支持接收事务通知的回调例程。 |
TmGetTransactionId TmGetTransactionId 例程检索事务对象的工作单位(UOW)标识符。 |
TmInitializeTransactionManager TmInitializeTransactionManager 例程初始化事务管理器对象。 |
TmIsTransactionActive TmIsTransactionActive 例程指示指定的事务是否处于其活动状态。 |
TmPrepareComplete TmPrepareComplete 例程通知 KTM 调用资源管理器已完成事务数据准备。 |
TmPrepareEnlistment TmPrepareEnlistment 例程为指定的登记事务启动准备操作。 |
TmPrepareComplete 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 函数取消注册由先前调用 WdmlibIoConnectInterruptEx 函数注册的中断服务例程(ISR)。 |
WdmlibIoGetAffinityInterrupt WdmlibIoGetAffinityInterrupt 函数获取中断对象的组相关性。 |
WdmlibIoValidateDeviceIoControlAccess WdmlibIoValidateDeviceIoControlAccess 函数验证IRP_MJ_DEVICE_CONTROL或IRP_MJ_FILE_SYSTEM_CONTROL IRP 的发送方是否具有对设备对象的指定访问权限。 |
WdmlibProcgrpInitialize WdmlibProcgrpInitialize 函数初始化处理器组(ProcGrp)兼容性库。 |
WdmlibRtlInitUnicodeStringEx WdmlibRtlInitUnicodeStringEx 函数初始化 Unicode 字符的计数字符串。 |
WheaAdd2Ptr 本主题介绍 WheaAdd2Ptr 宏。 |
WheaErrorRecordBuilderAddPacket 此例程将数据包添加到错误记录中。 |
WheaErrorRecordBuilderAddSection WheaErrorRecordBuilderAddSection 函数查找下一部分,初始化其描述符,并返回一个指针供调用方填充数据。 |
WheaErrorRecordBuilderInit WheaErrorRecordBuilderInit 函数初始化记录生成器帮助程序函数的错误记录。 |
WheaRegisterErrorSourceOverride 本主题介绍 WheaRegisterErrorSourceOverride 函数。 |
WheaSignalHandlerOverride 本主题介绍 WheaSignalHandlerOverride 函数。 |
WheaUnregisterErrorSourceOverride 本主题介绍 WheaUnregisterErrorSourceOverride 函数。 |
WMI_EXECUTE_METHOD_CALLBACK DpWmiExecuteMethod 例程执行与数据块关联的方法。 此例程是可选的。 |
WMI_FUNCTION_CONTROL_CALLBACK DpWmiFunctionControl 例程启用或禁用事件通知,并为驱动程序注册为成本高昂的数据块启用或禁用数据收集。 此例程是可选的。 |
WMI_QUERY_DATABLOCK_CALLBACK DpWmiQueryDataBlock 例程返回单个实例或数据块的所有实例。 此例程是必需的。 |
WMI_QUERY_REGINFO_CALLBACK DpWmiQueryReginfo 例程提供有关驱动程序要注册的数据块和事件块的信息。 此例程是必需的。 |
WMI_SET_DATABLOCK_CALLBACK DpWmiSetDataBlock 例程更改数据块的单个实例中的所有数据项。 此例程是可选的。 |
WMI_SET_DATAITEM_CALLBACK DpWmiSetDataItem 例程更改数据块实例中的单个数据项。 此例程是可选的。 |
WmiCompleteRequest WmiCompleteRequest 例程指示驱动程序已完成处理 DpWmiXxx 例程中的 WMI 请求。 |
WmiFireEvent WmiFireEvent 例程将事件发送到 WMI,以便传递给已请求事件通知的数据使用者。 |
WmiQueryTraceInformation WmiQueryTraceInformation 例程返回有关 WMI 事件跟踪的信息。 |
WmiSystemControl WmiSystemControl 例程是使用 WMI 库支持例程来处理 WMI IRP 的驱动程序的调度例程。 |
WmiTraceMessage WmiTraceMessage 例程将消息添加到 WPP 软件跟踪会话的输出日志。 |
WmiTraceMessageVa WmiTraceMessageVa 例程将消息添加到 WPP 软件跟踪会话的输出日志。 |
WRITE_PORT_BUFFER_UCHAR WRITE_PORT_BUFFER_UCHAR函数 (miniport.h) 将缓冲区中的字节数写入指定端口。 |
WRITE_PORT_BUFFER_UCHAR WRITE_PORT_BUFFER_UCHAR函数 (wdm.h) 将缓冲区中的字节数写入指定端口。 |
WRITE_PORT_BUFFER_ULONG WRITE_PORT_BUFFER_ULONG函数(miniport.h)将多个 ULONG 值从缓冲区写入指定的端口地址。 |
WRITE_PORT_BUFFER_ULONG WRITE_PORT_BUFFER_ULONG函数 (wdm.h) 将缓冲区中的多个 ULONG 值写入指定的端口地址。 |
WRITE_PORT_BUFFER_USHORT WRITE_PORT_BUFFER_USHORT函数 (miniport.h) 将多个 USHORT 值从缓冲区写入指定的端口地址。 |
WRITE_PORT_BUFFER_USHORT WRITE_PORT_BUFFER_USHORT函数 (wdm.h) 将多个 USHORT 值从缓冲区写入指定的端口地址。 |
WRITE_PORT_UCHAR WRITE_PORT_UCHAR函数(ioaccess.h)将字节写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_UCHAR WRITE_PORT_UCHAR函数(miniport.h)将字节写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_UCHAR WRITE_PORT_UCHAR函数 (wdm.h) 将字节写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_ULONG WRITE_PORT_ULONG函数(ioaccess.h)将 ULONG 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_ULONG WRITE_PORT_ULONG函数(miniport.h)将 ULONG 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_ULONG WRITE_PORT_ULONG函数 (wdm.h) 将 ULONG 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_USHORT WRITE_PORT_USHORT函数 (ioaccess.h) 将 USHORT 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_USHORT WRITE_PORT_USHORT函数(miniport.h)将 USHORT 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_USHORT WRITE_PORT_USHORT函数 (wdm.h) 将 USHORT 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_REGISTER_BUFFER_UCHAR WRITE_REGISTER_BUFFER_UCHAR函数(miniport.h)将缓冲区中的字节数写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_UCHAR WRITE_REGISTER_BUFFER_UCHAR函数 (wdm.h) 将缓冲区中的字节数写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_ULONG WRITE_REGISTER_BUFFER_ULONG函数(miniport.h)将缓冲区中的多个 ULONG 值写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_ULONG WRITE_REGISTER_BUFFER_ULONG函数 (wdm.h) 将缓冲区中的多个 ULONG 值写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_ULONG64 WRITE_REGISTER_BUFFER_ULONG64函数(wdm.h)将缓冲区中的许多ULONG64值写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_USHORT WRITE_REGISTER_BUFFER_USHORT函数(miniport.h)将许多 USHORT 值从缓冲区写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_USHORT WRITE_REGISTER_BUFFER_USHORT函数 (wdm.h) 将多个 USHORT 值从缓冲区写入指定的寄存器。 |
WRITE_REGISTER_UCHAR WRITE_REGISTER_UCHAR函数 (ioaccess.h) 将字节写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_UCHAR WRITE_REGISTER_UCHAR函数(miniport.h)将字节写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_UCHAR WRITE_REGISTER_UCHAR函数(wdm.h)将字节写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG WRITE_REGISTER_ULONG函数(ioaccess.h)将 ULONG 值写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG WRITE_REGISTER_ULONG函数(miniport.h)将 ULONG 值写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG WRITE_REGISTER_ULONG函数 (wdm.h) 将 ULONG 值写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG64 WRITE_REGISTER_ULONG64函数(wdm.h)将ULONG64值写入指定的寄存器地址。 |
WRITE_REGISTER_USHORT WRITE_REGISTER_USHORT函数(ioaccess.h)将 USHORT 值写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_USHORT WRITE_REGISTER_USHORT函数(miniport.h)将 USHORT 值写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_USHORT WRITE_REGISTER_USHORT函数 (wdm.h) 将 USHORT 值写入驻留的映射设备内存中的指定寄存器地址。 |
WriteInt32NoFence 本主题介绍 WriteInt32NoFence 函数。 |
WriteInt32NoFence WriteInt32NoFence 函数... |
WriteInt32Raw 本主题介绍 WriteInt32Raw 函数。 |
WriteInt32Raw WriteInt32Raw 函数... |
WriteInt32Release 本主题介绍 WriteInt32Release 函数。 |
WriteInt32Release WriteInt32Release 函数... |
WriteUInt32NoFence 本主题介绍 WriteUInt32NoFence 函数。 |
WriteUInt32NoFence WriteUInt32NoFence 函数... |
WriteUInt32Raw 本主题介绍 WriteUInt32Raw 函数。 |
WriteUInt32Raw WriteUInt32Raw 函数... |
WriteUInt32Release 本主题介绍 WriteUInt32Release 函数。 |
WriteUInt32Release WriteUInt32Release 函数... |
ZwAllocateLocallyUniqueId ZwAllocateLocallyUniqueId 例程分配本地唯一标识符(LUID)。 |
ZwAllocateVirtualMemory ZwAllocateVirtualMemory 例程保留、提交或同时保留指定进程的用户模式虚拟地址空间中的页面区域。 |
ZwClose wdm.h 中的 ZwClose 例程关闭对象句柄。 ZwClose 是一个对任何类型的对象进行操作的泛型例程。 |
ZwCommitComplete 了解 ZwCommitComplete 例程如何通知 KTM 调用资源管理器已完成提交事务的数据。 |
ZwCommitEnlistment 了解 ZwCommitEnlistment 例程如何为指定的登记事务启动提交操作。 |
ZwCommitTransaction 了解 ZwCommitTransaction 例程如何为指定的事务启动提交操作。 |
ZwCreateDirectoryObject ZwCreateDirectoryObject 例程创建或打开对象目录对象。 |
ZwCreateEnlistment 了解 ZwCreateEnlistment 例程如何为事务创建新的登记对象。 |
ZwCreateEvent ZwCreateEvent 例程创建事件对象,将事件的初始状态设置为指定值,并打开具有指定所需访问权限的对象句柄。 |
ZwCreateFile ZwCreateFile 例程创建一个新文件或打开现有文件。 |
ZwCreateKey ZwCreateKey 例程创建新的注册表项或打开现有注册表项。 |
ZwCreateKeyTransacted ZwCreateKeyTransacted 例程创建新的注册表项或打开现有注册表项,并将密钥与事务相关联。 |
ZwCreateResourceManager 了解 ZwCreateResourceManager 例程如何创建资源管理器对象。 |
ZwCreateSection wdm.h 中的 ZwCreateSection 例程创建节对象。 指向的句柄不再使用后,驱动程序必须关闭它。 |
ZwCreateTransaction 了解 ZwCreateTransaction 例程如何创建事务对象。 |
ZwCreateTransactionManager 了解 ZwCreateTransactionManager 例程如何创建新的事务管理器对象。 |
ZwDeleteFile 详细了解 ZwDeleteFile 函数。 |
ZwDeleteKey ZwDeleteKey 例程从注册表中删除打开的键。 |
ZwDeleteValueKey ZwDeleteValueKey 例程从注册表中的打开键中删除与名称匹配的值项。 如果不存在此类条目,则返回错误。 |
ZwDeviceIoControlFile 此例程将控制代码直接发送到指定的设备驱动程序,从而导致相应的驱动程序执行指定的操作。 |
ZwDeviceIoControlFile 了解 ZwDeviceIoControlFile 例程如何将控制代码直接发送到指定的设备驱动程序,从而导致相应的驱动程序执行指定的操作。 |
ZwDuplicateObject ZwDuplicateObject 例程创建一个与指定源句柄重复的句柄。 |
ZwDuplicateToken 详细了解 ZwDuplicateToken 函数。 |
ZwEnumerateKey ZwEnumerateKey 例程返回有关打开的注册表项的子项的信息。 |
ZwEnumerateTransactionObject 了解 ZwEnumerateTransactionObject 例程如何枚举计算机上的 KTM 对象。 |
ZwEnumerateValueKey ZwEnumerateValueKey 例程获取有关打开键的值条目的信息。 |
ZwFlushBuffersFile ZwFlushBuffersFile 例程由文件系统筛选器驱动程序调用,以将指定文件的刷新请求发送到文件系统。 |
ZwFlushBuffersFileEx ZwFlushBuffersFileEx 例程由文件系统筛选器驱动程序调用,以向文件系统发送给定文件的刷新请求。 可以设置可选的刷新操作标志来控制如何将文件数据写入存储。 |
ZwFlushKey ZwFlushKey 例程强制将注册表项提交到磁盘。 |
ZwFlushVirtualMemory ZwFlushVirtualMemory 例程在指定进程的虚拟地址空间中刷新一系列虚拟地址,这些地址映射到数据文件(如果修改了数据文件)。 |
ZwFreeVirtualMemory ZwFreeVirtualMemory 例程发布、取消提交或同时释放指定进程的虚拟地址空间中的页面区域。 |
ZwFsControlFile ZwFsControlFile 例程将控制代码直接发送到指定的文件系统或文件系统筛选器驱动程序,从而导致相应的驱动程序执行指定的操作。 |
ZwGetNotificationResourceManager 了解 ZwGetNotificationResourceManager 例程如何从指定的资源管理器通知队列中检索下一个事务通知。 |
ZwLoadDriver ZwLoadDriver 例程将驱动程序加载到系统中。 |
ZwLockFile 详细了解 ZwLockFile 例程。 |
ZwMakeTemporaryObject ZwMakeTemporaryObject 例程更改对象的属性,使其成为临时属性。 |
ZwMapViewOfSection ZwMapViewOfSection 例程将分区的视图映射到主题进程的虚拟地址空间。 |
ZwMapViewOfSectionEx |
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 了解 ZwPrepareComplete 例程如何通知 KTM 调用资源管理器已完成事务数据的初步准备。 |
ZwPrepareEnlistment 了解 ZwPrepareEnlistment 例程如何为指定的登记事务启动预准备操作。 |
ZwQueryDirectoryFile ZwQueryDirectoryFile 例程返回有关给定文件句柄指定的目录中文件的各种信息。 |
ZwQueryDirectoryFileEx 详细了解 ZwQueryDirectoryFileEx 函数。 |
ZwQueryEaFile 详细了解 ZwQueryEaFile 函数。 |
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 函数。 |
ZwSetEvent ZwSetEvent 例程将事件对象设置为 Signaled 状态,并尝试满足尽可能多的等待。 |
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 _CM_EISA_FUNCTION_INFORMATION结构(miniport.h)定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。 |
CM_EISA_FUNCTION_INFORMATION _CM_EISA_FUNCTION_INFORMATION结构(wdm.h)定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。 |
CM_EISA_SLOT_INFORMATION _CM_EISA_SLOT_INFORMATION结构(miniport.h)定义 HalGetBusData 或 HalGetBusDataByOffset 返回的 EISA 配置标头信息。 |
CM_EISA_SLOT_INFORMATION _CM_EISA_SLOT_INFORMATION结构(wdm.h)定义 HalGetBusData 或 HalGetBusDataByOffset 返回的 EISA 配置标头信息。 |
CM_FLOPPY_DEVICE_DATA CM_FLOPPY_DEVICE_DATA结构定义存储在软盘控制器的 \Registry\Machine\Hardware\Description 树中(如果系统可以在启动过程中收集此信息)的设备类型特定的数据记录。 |
CM_FULL_RESOURCE_DESCRIPTOR CM_FULL_RESOURCE_DESCRIPTOR结构指定一组不同类型的系统硬件资源,这些资源分配给连接到特定总线的设备。 此结构包含在CM_RESOURCE_LIST结构中。 |
CM_INT13_DRIVE_PARAMETER CM_INT13_DRIVE_PARAMETER结构定义存储在磁盘控制器的 \Registry\Machine\Hardware\Description 树中(如果系统可以在启动过程中收集此信息)的设备类型特定的数据记录。 |
CM_KEYBOARD_DEVICE_DATA 如果系统可以在启动过程中收集此信息,CM_KEYBOARD_DEVICE_DATA结构定义存储在键盘外围设备的 \Registry\Machine\Hardware\Description 树中的特定于设备类型的数据记录。 |
CM_MCA_POS_DATA _CM_MCA_POS_DATA结构(miniport.h)已过时。 它定义槽的 IBM 兼容的 MCA POS 配置信息。 |
CM_MCA_POS_DATA _CM_MCA_POS_DATA结构(wdm.h)已过时。 它定义槽的 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 了解以下内容的详细信息: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 接口结构的扩展版本,允许设备驱动程序调用执行设备域操作的回调函数。 |
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 _GROUP_AFFINITY结构(miniport.h)指定组号和该组中的处理器相关性。 |
HAL_DISPATCH 本主题介绍HAL_DISPATCH结构。 |
HARDWARE_COUNTER HARDWARE_COUNTER结构包含有关硬件计数器的信息。 |
HWPROFILE_CHANGE_NOTIFICATION HWPROFILE_CHANGE_NOTIFICATION结构描述与硬件配置文件配置更改相关的事件。 |
IMAGE_INFO 由驱动程序的加载映像例程(PLOAD_IMAGE_NOTIFY_ROUTINE)用来指定图像信息。 |
IMAGE_INFO_EX IMAGE_INFO_EX是IMAGE_INFO加载映像信息结构的扩展版本。 |
IMAGE_POLICY_ENTRY 不支持_IMAGE_POLICY_ENTRY结构。 |
IMAGE_POLICY_METADATA 不支持_IMAGE_POLICY_METADATA结构。 |
INPUT_MAPPING_ELEMENT 包含设备的输入映射 ID。 |
接口 _INTERFACE结构(miniport.h)描述由驱动程序导出以供其他驱动程序使用的接口。 |
接口 _INTERFACE结构(wdm.h)描述由驱动程序导出以供其他驱动程序使用的接口。 |
IO_CONNECT_INTERRUPT_PARAMETERS IO_CONNECT_INTERRUPT_PARAMETERS结构包含驱动程序提供给 IoConnectInterruptEx 例程以注册中断服务例程(ISR)的参数。 |
IO_DISCONNECT_INTERRUPT_PARAMETERS 使用 IoDisconnectInterruptEx 注销中断处理例程时,IO_DISCONNECT_INTERRUPT_PARAMETERS结构描述了参数。 |
IO_ERROR_LOG_PACKET IO_ERROR_LOG_PACKET结构充当错误日志条目的标头。 |
IO_FOEXT_SHADOW_FILE 本主题介绍IO_FOEXT_SHADOW_FILE结构。 |
IO_INTERRUPT_MESSAGE_INFO IO_INTERRUPT_MESSAGE_INFO结构描述驱动程序的消息信号中断。 |
IO_INTERRUPT_MESSAGE_INFO_ENTRY IO_INTERRUPT_MESSAGE_INFO_ENTRY结构描述单个消息信号中断的属性。 |
IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS结构包含已注册的中断服务例程(ISR)的连接上下文,该例程由之前对 IoConnectInterruptEx 例程的调用连接到中断或中断。 |
IO_RESOURCE_DESCRIPTOR _IO_RESOURCE_DESCRIPTOR结构(miniport.h)描述了设备可以使用的一系列原始硬件资源。 |
IO_RESOURCE_DESCRIPTOR _IO_RESOURCE_DESCRIPTOR结构(wdm.h)描述了一系列原始硬件资源,一种类型可供设备使用。 |
IO_RESOURCE_LIST _IO_RESOURCE_LIST结构(miniport.h)描述了设备可以使用的各种原始硬件资源。 |
IO_RESOURCE_LIST _IO_RESOURCE_LIST结构(wdm.h)描述了设备可以使用的各种原始硬件资源。 |
IO_RESOURCE_REQUIREMENTS_LIST _IO_RESOURCE_REQUIREMENTS_LIST结构(miniport.h)描述了表示设备使用的原始资源类型的资源配置集。 |
IO_RESOURCE_REQUIREMENTS_LIST _IO_RESOURCE_REQUIREMENTS_LIST结构(wdm.h)描述表示设备使用的原始资源类型的资源配置集。 |
IO_SECURITY_CONTEXT IO_SECURITY_CONTEXT结构表示IRP_MJ_CREATE请求的安全上下文。 |
IO_SESSION_CONNECT_INFO IO_SESSION_CONNECT_INFO结构提供有关用户会话的信息。 |
IO_SESSION_STATE_INFORMATION IO_SESSION_STATE_INFORMATION结构包含有关用户会话状态的信息。 |
IO_SESSION_STATE_NOTIFICATION IO_SESSION_STATE_NOTIFICATION结构包含内核模式驱动程序在驱动程序注册以接收会话事件的通知时提供给 IoRegisterContainerNotification 例程的信息。 |
IO_STACK_LOCATION IO_STACK_LOCATION结构定义 I/O 堆栈位置,该位置是 I/O 堆栈中与每个 IRP 关联的条目。 |
IO_STATUS_BLOCK 驱动程序设置 IRP 的 I/O 状态块,以指示 I/O 请求的最终状态,然后再调用 IRP 的 IoCompleteRequest。 |
IO_STATUS_BLOCK64 IO_STATUS_BLOCK64结构... |
IOMMU_DEVICE_CREATION_CONFIGURATION IOMMU_DEVICE_CREATION_CONFIGURATION描述要用作创建和初始化IOMMU_DMA_DEVICE的一部分的配置或配置列表。 |
IOMMU_DEVICE_CREATION_CONFIGURATION_ACPI IOMMU_DEVICE_CREATION_CONFIGURATION_ACPI提供IOMMU_DEVICE_CREATION_CONFIGURATION结构的 ACPI 特定配置参数,用于创建 ACPI 类型IOMMU_DMA_DEVICE。 |
IOMMU_DMA_DOMAIN_CREATION_FLAGS 了解以下内容的详细信息:IOMMU_DMA_DOMAIN_CREATION_FLAGS |
IOMMU_DMA_LOGICAL_ADDRESS_TOKEN IOMMU_DMA_LOGICAL_ADDRESS_TOKEN表示由IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE创建的保留连续逻辑地址范围。 |
IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT 了解以下内容的详细信息:IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT |
IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG结构包含配置逻辑分配器所需的信息。 |
IOMMU_DMA_RESERVED_REGION IOMMU_DMA_RESERVED_REGION结构描述需要在创建域期间标记为保留的内存区域。 |
IOMMU_INTERFACE_STATE_CHANGE 了解以下内容的详细信息:IOMMU_INTERFACE_STATE_CHANGE |
IOMMU_INTERFACE_STATE_CHANGE_FIELDS 详细了解IOMMU_INTERFACE_STATE_CHANGE_FIELDS |
IOMMU_MAP_PHYSICAL_ADDRESS IOMMU_MAP_PHYSICAL_ADDRESS表示要映射到逻辑地址的物理地址。 |
IRP IRP 结构是表示 I/O 请求数据包的部分不透明结构。 |
KBUGCHECK_ADD_PAGES KBUGCHECK_ADD_PAGES结构描述由 KbCallbackAddPages 回调例程写入到故障转储文件的一个或多个驱动程序提供的数据页。 |
KBUGCHECK_DATA KBUGCHECK_DATA结构包含 bug 检查参数。 |
KBUGCHECK_DUMP_IO KBUGCHECK_DUMP_IO结构描述故障转储文件的 I/O 操作。 |
KBUGCHECK_SECONDARY_DUMP_DATA KBUGCHECK_SECONDARY_DUMP_DATA结构描述了由 KbCallbackSecondaryDumpData 例程写入到故障转储文件的驱动程序提供的数据部分。 |
KDPC_WATCHDOG_INFORMATION KDPC_WATCHDOG_INFORMATION结构包含有关当前延迟过程调用(DPC)的超时信息。 |
KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT结构描述将新处理器动态添加到硬件分区时传递给已注册回调函数的通知上下文。 |
KERNEL_CET_CONTEXT 仅保留供系统使用。 请勿使用。 |
KERNEL_SOFT_RESTART_NOTIFICATION 详细了解:KERNEL_SOFT_RESTART_NOTIFICATION结构 |
KEY_BASIC_INFORMATION KEY_BASIC_INFORMATION结构定义可用于注册表项的完整信息的子集。 |
KEY_CACHED_INFORMATION KEY_CACHED_INFORMATION结构包含可用于注册表项或子项的缓存信息。 |
KEY_FULL_INFORMATION KEY_FULL_INFORMATION结构定义注册表项可用的信息,包括有关其子项的信息及其名称和值项的最大长度。 |
KEY_NAME_INFORMATION KEY_NAME_INFORMATION结构保存密钥的名称和名称长度。 |
KEY_NODE_INFORMATION KEY_NODE_INFORMATION结构定义注册表(子)键可用的基本信息。 |
KEY_VALUE_BASIC_INFORMATION KEY_VALUE_BASIC_INFORMATION结构定义可用于注册表项值项的完整信息的子集。 |
KEY_VALUE_ENTRY REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION结构使用KEY_VALUE_ENTRY结构来描述注册表项的单个值项。 |
KEY_VALUE_FULL_INFORMATION KEY_VALUE_FULL_INFORMATION结构定义可用于注册表项的值项的信息。 |
KEY_VALUE_PARTIAL_INFORMATION KEY_VALUE_PARTIAL_INFORMATION结构定义可用于注册表项值项的值信息的子集。 |
KEY_VIRTUALIZATION_INFORMATION KEY_VIRTUALIZATION_INFORMATION结构定义可用于注册表项或子项的基本信息。 |
KEY_WRITE_TIME_INFORMATION 系统使用KEY_WRITE_TIME_INFORMATION结构为注册表项设置上次写入时间。 |
KMUTANT 了解以下内容的详细信息:KMUTANT 结构 |
KTMOBJECT_CURSOR 当组件调用 ZwEnumerateTransactionObject 时,KTMOBJECT_CURSOR结构接收有关 KTM 对象的枚举信息。 |
KUSER_SHARED_DATA 本主题介绍KUSER_SHARED_DATA结构。 |
LINK_SHARE_ACCESS 文件系统仅用于链接文件的共享访问结构。 |
MAILSLOT_CREATE_PARAMETERS Windows 子系统使用MAILSLOT_CREATE_PARAMETERS来创建 mailslot。 |
MDL MDL 结构是表示内存描述符列表(MDL)的部分不透明结构。 |
MEM_EXTENDED_PARAMETER 详细了解:MEM_EXTENDED_PARAMETER结构 |
MEMORY_BASIC_INFORMATION 包含有关进程虚拟地址空间中一系列页面的信息。 |
MEMORY_PARTITION_DEDICATED_MEMORY_OPEN_INFORMATION 定义MEMORY_PARTITION_DEDICATED_MEMORY_OPEN_INFORMATION结构。 |
MM_COPY_ADDRESS MM_COPY_ADDRESS结构包含虚拟内存地址或物理内存地址。 |
MM_PHYSICAL_ADDRESS_LIST MM_PHYSICAL_ADDRESS_LIST结构指定一系列物理地址。 |
NAMED_PIPE_CREATE_PARAMETERS Windows 子系统使用NAMED_PIPE_CREATE_PARAMETERS结构来创建命名管道。 |
NOTIFY_USER_POWER_SETTING 本主题介绍NOTIFY_USER_POWER_SETTING结构。 |
OB_CALLBACK_REGISTRATION 当 ObRegisterCallbacks 例程注册 ObjectPreCallback 和 ObjectPostCallback 回调例程时,OB_CALLBACK_REGISTRATION结构指定参数。 |
OB_OPERATION_REGISTRATION OB_OPERATION_REGISTRATION结构指定 ObjectPreCallback 和 ObjectPostCallback 回调例程以及调用例程的操作类型。 |
OB_POST_CREATE_HANDLE_INFORMATION OB_POST_CREATE_HANDLE_INFORMATION结构向 ObjectPostCallback 例程提供有关已打开的线程或进程句柄的信息。 |
OB_POST_DUPLICATE_HANDLE_INFORMATION OB_POST_DUPLICATE_HANDLE_INFORMATION结构向 ObjectPostCallback 例程提供有关已复制的线程或进程句柄的信息。 |
OB_POST_OPERATION_INFORMATION OB_POST_OPERATION_INFORMATION结构提供有关 ObjectPostCallback 例程的进程或线程句柄操作的信息。 |
OB_POST_OPERATION_PARAMETERS OB_POST_OPERATION_PARAMETERS联合描述 ObjectPostCallback 例程的操作特定参数。 |
OB_PRE_CREATE_HANDLE_INFORMATION OB_PRE_CREATE_HANDLE_INFORMATION结构提供有关正在打开的线程或进程句柄的 ObjectPreCallback 例程的信息。 |
OB_PRE_DUPLICATE_HANDLE_INFORMATION OB_PRE_DUPLICATE_HANDLE_INFORMATION结构向 ObjectPreCallback 例程提供有关正在复制的线程或进程句柄的信息。 |
OB_PRE_OPERATION_INFORMATION OB_PRE_OPERATION_INFORMATION结构提供有关 ObjectPreCallback 例程的进程或线程句柄操作的信息。 |
OB_PRE_OPERATION_PARAMETERS OB_PRE_OPERATION_PARAMETERS联合描述 ObjectPreCallback 例程的操作特定参数。 |
OSVERSIONINFOEXW RTL_OSVERSIONINFOEXW结构包含操作系统版本信息。 |
OSVERSIONINFOW RTL_OSVERSIONINFOW结构包含操作系统版本信息。 |
PCI_ATS_INTERFACE 定义PCI_ATS_INTERFACE结构。 |
PCI_COMMON_CONFIG T _PCI_COMMON_CONFIG结构(miniport.h)已过时。 它定义标准 PCI 配置信息。 |
PCI_COMMON_CONFIG _PCI_COMMON_CONFIG结构(wdm.h)定义标准 PCI 配置信息。 |
PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER 描述PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER联合。 |
PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER 本主题介绍PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER联合。 |
PCI_EXPRESS_LINK_CONTROL_2_REGISTER 描述PCI_EXPRESS_LINK_CONTROL_2_REGISTER联合。 |
PCI_EXPRESS_LINK_CONTROL_2_REGISTER 本主题介绍PCI_EXPRESS_LINK_CONTROL_2_REGISTER联合。 |
PCI_EXPRESS_LINK_STATUS_2_REGISTER 描述PCI_EXPRESS_LINK_STATUS_2_REGISTER联合。 |
PCI_EXPRESS_LINK_STATUS_2_REGISTER 本主题介绍PCI_EXPRESS_LINK_STATUS_2_REGISTER联合。 |
PCI_MSIX_TABLE_CONFIG_INTERFACE PCI_MSIX_TABLE_CONFIG_INTERFACE结构使设备驱动程序能够修改其 MSI-X 中断设置。 此结构描述GUID_MSIX_TABLE_CONFIG_INTERFACE接口。 |
PCI_SECURITY_INTERFACE2 定义PCI_SECURITY_INTERFACE2结构。 |
PCI_SEGMENT_BUS_NUMBER Microsoft保留PCI_SEGMENT_BUS_NUMBER结构以供内部使用。 请勿在代码中使用此结构。 |
PCI_SLOT_NUMBER _PCI_SLOT_NUMBER结构(miniport.h)已过时。 它将 Slot 参数的格式定义为过时的 HalXxxBusData 例程。 |
PCI_SLOT_NUMBER _PCI_SLOT_NUMBER结构(wdm.h)已过时。 它将 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 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中如何使用此方法(如果PEP_NOTIFY_PPM_QUERY_CAPABILITIES通知指示对离散性能状态的支持)。 . |
PEP_PPM_QUERY_DISCRETE_PERF_STATES 如果PEP_NOTIFY_PPM_QUERY_CAPABILITIES通知指示对离散性能状态的支持,则用于存储 PEP 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中。 . |
PEP_PPM_QUERY_DOMAIN_INFO 了解如何在查询性能域信息的PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO通知中使用此方法。 . |
PEP_PPM_QUERY_DOMAIN_INFO 在查询性能域信息的PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO通知中使用。 . |
PEP_PPM_QUERY_FEEDBACK_COUNTERS 了解PEP_PPM_QUERY_FEEDBACK_COUNTERS结构(pep_x.h)如何描述平台扩展插件(PEP)支持的特定处理器的所有处理器性能计数器。 |
PEP_PPM_QUERY_FEEDBACK_COUNTERS PEP_PPM_QUERY_FEEDBACK_COUNTERS结构描述了平台扩展插件(PEP)支持的特定处理器的所有处理器性能计数器。 |
PEP_PPM_QUERY_IDLE_STATES PEP_PPM_QUERY_IDLE_STATES结构描述特定处理器的空闲状态。 |
PEP_PPM_QUERY_IDLE_STATES_V2 了解在处理器初始化期间如何使用PEP_PPM_QUERY_IDLE_STATES_V2结构来查询平台扩展插件(PEP),以获取处理器支持的处理器空闲状态列表。 |
PEP_PPM_QUERY_IDLE_STATES_V2 PEP_PPM_QUERY_IDLE_STATES_V2结构用于在处理器初始化期间查询平台扩展插件(PEP),以获取处理器支持的处理器空闲状态列表。 |
PEP_PPM_QUERY_LP_SETTINGS PEP_PPM_QUERY_LP_SETTINGS结构包含注册表项的内核句柄,其中包含平台扩展插件(PEP)为每个电源方案定义的电源优化设置。 |
PEP_PPM_QUERY_PERF_CAPABILITIES 了解PEP_PPM_QUERY_PERF_CAPABILITIES结构如何描述指定处理器性能域中处理器的性能功能。 |
PEP_PPM_QUERY_PERF_CAPABILITIES PEP_PPM_QUERY_PERF_CAPABILITIES结构描述指定处理器性能域中处理器的性能功能。 |
PEP_PPM_QUERY_PLATFORM_STATE 了解PEP_PPM_QUERY_PLATFORM_STATE结构如何包含有关平台空闲状态的信息。 |
PEP_PPM_QUERY_PLATFORM_STATE PEP_PPM_QUERY_PLATFORM_STATE结构包含有关平台空闲状态的信息。 |
PEP_PPM_QUERY_PLATFORM_STATES 了解PEP_PPM_QUERY_PLATFORM_STATES结构如何指定硬件平台支持的平台空闲状态数。 |
PEP_PPM_QUERY_PLATFORM_STATES PEP_PPM_QUERY_PLATFORM_STATES结构指定硬件平台支持的平台空闲状态数。 |
PEP_PPM_QUERY_STATE_NAME 了解PEP_PPM_QUERY_STATE_NAME结构如何包含有关特定协调或平台空闲状态的信息。 |
PEP_PPM_QUERY_STATE_NAME PEP_PPM_QUERY_STATE_NAME结构包含有关特定协调状态或平台空闲状态的信息。 |
PEP_PPM_QUERY_VETO_REASON 了解PEP_PPM_QUERY_VETO_REASON结构如何提供一个宽字符、以 null 结尾的字符串,该字符串包含一个描述性的、可读的名称(出于否决原因)。 |
PEP_PPM_QUERY_VETO_REASON PEP_PPM_QUERY_VETO_REASON结构提供一个宽字符的、以 null 结尾的字符串,该字符串包含描述性、可读名称(出于否决原因)。 |
PEP_PPM_QUERY_VETO_REASONS 了解PEP_PPM_QUERY_VETO_REASONS结构如何指定 PEP 在调用 ProcessorIdleVeto 和 PlatformIdleVeto 例程时使用的否决原因总数。 |
PEP_PPM_QUERY_VETO_REASONS PEP_PPM_QUERY_VETO_REASONS结构指定 PEP 在调用 ProcessorIdleVeto 和 PlatformIdleVeto 例程时使用的否决原因总数。 |
PEP_PPM_RESUME_FROM_SYSTEM_STATE 了解PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE通知如何使用此方法,通知 PEP 系统刚刚从系统电源状态恢复。 |
PEP_PPM_RESUME_FROM_SYSTEM_STATE 由PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE通知使用,通知 PEP 系统刚刚从系统电源状态恢复。 |
PEP_PPM_TEST_IDLE_STATE 了解PEP_PPM_TEST_IDLE_STATE结构如何包含有关处理器是否可以立即进入处理器空闲状态的信息。 |
PEP_PPM_TEST_IDLE_STATE PEP_PPM_TEST_IDLE_STATE结构包含有关处理器是否可以立即进入处理器空闲状态的信息。 |
PEP_PREPARE_DEVICE 了解PEP_PREPARE_DEVICE结构如何标识必须启动的设备,以便为操作系统的使用做准备。 |
PEP_PREPARE_DEVICE PEP_PREPARE_DEVICE结构标识必须启动的设备,以便为操作系统的使用做准备。 |
PEP_PROCESSOR_FEEDBACK_COUNTER 了解PEP_PROCESSOR_FEEDBACK_COUNTER结构如何描述操作系统的反馈计数器。 |
PEP_PROCESSOR_FEEDBACK_COUNTER PEP_PROCESSOR_FEEDBACK_COUNTER结构描述操作系统的反馈计数器。 |
PEP_PROCESSOR_IDLE_CONSTRAINTS PEP_PROCESSOR_IDLE_CONSTRAINTS结构指定 PEP 用于选择处理器空闲状态的一组约束。 |
PEP_PROCESSOR_IDLE_DEPENDENCY 了解PEP_PROCESSOR_IDLE_DEPENDENCY结构如何指定指定指定处理器上平台空闲状态的依赖项。 |
PEP_PROCESSOR_IDLE_DEPENDENCY PEP_PROCESSOR_IDLE_DEPENDENCY结构指定指定指定处理器上平台空闲状态的依赖项。 |
PEP_PROCESSOR_IDLE_STATE PEP_PROCESSOR_IDLE_STATE结构描述处理器空闲状态的功能。 |
PEP_PROCESSOR_IDLE_STATE_UPDATE 了解PEP_PROCESSOR_IDLE_STATE_UPDATE结构如何包含处理器空闲状态的更新属性。 |
PEP_PROCESSOR_IDLE_STATE_UPDATE PEP_PROCESSOR_IDLE_STATE_UPDATE结构包含处理器空闲状态的更新属性。 |
PEP_PROCESSOR_IDLE_STATE_V2 了解PEP_PROCESSOR_IDLE_STATE_V2结构如何描述平台扩展插件(PEP)支持的处理器空闲状态。 |
PEP_PROCESSOR_IDLE_STATE_V2 PEP_PROCESSOR_IDLE_STATE_V2结构描述平台扩展插件(PEP)支持的处理器空闲状态。 |
PEP_PROCESSOR_PARK_PREFERENCE 了解PEP_PROCESSOR_PARK_PREFERENCE结构如何指示操作系统和平台扩展插件(PEP)的首选项,即是否应将指定的处理器停在一起以减少能耗。 |
PEP_PROCESSOR_PARK_PREFERENCE PEP_PROCESSOR_PARK_PREFERENCE结构指示操作系统和平台扩展插件(PEP)的首选项,即是否应将指定的处理器停在一起以减少能耗。 |
PEP_PROCESSOR_PARK_STATE 了解PEP_PROCESSOR_PARK_STATE结构如何描述单个处理器的停车状态。 |
PEP_PROCESSOR_PARK_STATE PEP_PROCESSOR_PARK_STATE结构描述单个处理器的停车状态。 |
PEP_PROCESSOR_PERF_STATE 了解如何在PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用此方法。 此结构描述单个性能状态的属性。 . |
PEP_PROCESSOR_PERF_STATE 在PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用。 此结构描述单个性能状态的属性。 . |
PEP_QUERY_COMPONENT_PERF_CAPABILITIES 了解PEP_QUERY_COMPONENT_PERF_CAPABILITIES结构如何指定为组件定义的性能状态集数(P 状态)。 |
PEP_QUERY_COMPONENT_PERF_CAPABILITIES PEP_QUERY_COMPONENT_PERF_CAPABILITIES结构指定为组件定义的性能状态(P 状态)集的数目。 |
PEP_QUERY_COMPONENT_PERF_SET 了解PEP_QUERY_COMPONENT_PERF_SET结构如何包含有关组件一组性能状态值(P 状态集)的查询信息。 |
PEP_QUERY_COMPONENT_PERF_SET PEP_QUERY_COMPONENT_PERF_SET结构包含有关组件一组性能状态值(P 状态集)的查询信息。 |
PEP_QUERY_COMPONENT_PERF_SET_NAME 了解PEP_QUERY_COMPONENT_PERF_SET_NAME结构如何包含有关组件一组性能状态值(P 状态集)的查询信息。 |
PEP_QUERY_COMPONENT_PERF_SET_NAME PEP_QUERY_COMPONENT_PERF_SET_NAME结构包含有关组件一组性能状态值(P 状态集)的查询信息。 |
PEP_QUERY_COMPONENT_PERF_STATES 了解PEP_QUERY_COMPONENT_PERF_STATES结构如何包含指定 P 状态集的离散性能状态(P 状态)值列表。 |
PEP_QUERY_COMPONENT_PERF_STATES PEP_QUERY_COMPONENT_PERF_STATES结构包含指定 P 状态集的离散性能状态(P 状态)值列表。 |
PEP_QUERY_CURRENT_COMPONENT_PERF_STATE 了解PEP_QUERY_CURRENT_COMPONENT_PERF_STATE结构如何包含有关指定 P 状态集中当前 P 状态的信息。 |
PEP_QUERY_CURRENT_COMPONENT_PERF_STATE PEP_QUERY_CURRENT_COMPONENT_PERF_STATE结构包含有关指定 P 状态集中当前 P 状态的信息。 |
PEP_QUERY_SOC_SUBSYSTEM 了解PEP_DPM_QUERY_SOC_SUBSYSTEM通知如何使用PEP_QUERY_SOC_SUBSYSTEM结构收集有关芯片(SoC)子系统上特定系统的基本信息。 |
PEP_QUERY_SOC_SUBSYSTEM PEP_DPM_QUERY_SOC_SUBSYSTEM通知使用PEP_QUERY_SOC_SUBSYSTEM结构收集有关芯片(SoC)子系统上特定系统的基本信息。 |
PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME PEP_DPM_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME通知使用PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME结构(pep_x.h)收集有关芯片(SoC)子系统上特定系统的阻塞持续时间的详细信息。 |
PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME PEP_DPM_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME通知使用PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME结构(pepfx.h)收集有关芯片(SoC)子系统上特定系统的阻塞持续时间的详细信息。 |
PEP_QUERY_SOC_SUBSYSTEM_COUNT 了解PEP_QUERY_SOC_SUBSYSTEM_COUNT结构如何用于告知 OS PEP 是否支持芯片(SoC)子系统上的系统,该子系统将考虑给定平台空闲状态。 |
PEP_QUERY_SOC_SUBSYSTEM_COUNT PEP_QUERY_SOC_SUBSYSTEM_COUNT结构用于告知 OS PEP 是否支持芯片(SoC)子系统上的系统,该子系统占给定平台空闲状态。 |
PEP_QUERY_SOC_SUBSYSTEM_METADATA 了解PEP_QUERY_SOC_SUBSYSTEM_METADATA结构如何与PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知一起使用,以收集有关芯片(SoC)子系统上系统(SoC)的可选元数据,其阻塞时间刚刚被查询。 |
PEP_QUERY_SOC_SUBSYSTEM_METADATA PEP_QUERY_SOC_SUBSYSTEM_METADATA结构与PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知一起使用,收集有关芯片(SoC)子系统上系统(SoC)的可选元数据,其阻塞时间刚刚被查询。 |
PEP_REGISTER_COMPONENT_PERF_STATES 了解PEP_REGISTER_COMPONENT_PERF_STATES结构如何描述指定组件的性能状态(P 状态)。 |
PEP_REGISTER_COMPONENT_PERF_STATES PEP_REGISTER_COMPONENT_PERF_STATES结构描述指定组件的性能状态(P 状态)。 |
PEP_REGISTER_CRASHDUMP_DEVICE 了解PEP_REGISTER_CRASHDUMP_DEVICE结构如何提供回调例程来打开故障转储设备。 |
PEP_REGISTER_CRASHDUMP_DEVICE PEP_REGISTER_CRASHDUMP_DEVICE结构提供回调例程来打开故障转储设备。 |
PEP_REGISTER_DEBUGGER 了解PEP_REGISTER_DEBUGGER结构如何标识已注册的设备,该设备是提供调试器传输的核心系统资源。 |
PEP_REGISTER_DEBUGGER PEP_REGISTER_DEBUGGER结构标识已注册的设备,该设备是提供调试器传输的核心系统资源。 |
PEP_REGISTER_DEVICE_V2 了解PEP_REGISTER_DEVICE_V2结构如何描述驱动程序堆栈刚刚注册到 Windows 电源管理框架(PoFx)的设备。 |
PEP_REGISTER_DEVICE_V2 PEP_REGISTER_DEVICE_V2结构描述了驱动程序堆栈刚刚注册到 Windows 电源管理框架(PoFx)的设备。 |
PEP_REQUEST_COMPONENT_PERF_STATE 了解PEP_REQUEST_COMPONENT_PERF_STATE结构如何包含 Windows 电源管理框架(PoFx)请求的性能状态(P 状态)更改列表,以及有关平台扩展插件(PEP)处理这些请求的状态信息。 |
PEP_REQUEST_COMPONENT_PERF_STATE PEP_REQUEST_COMPONENT_PERF_STATE结构包含 Windows 电源管理框架(PoFx)请求的性能状态(P 状态)更改列表,以及有关平台扩展插件(PEP)处理这些请求的状态信息。 |
PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING 了解如何将PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING结构作为PEP_DPM_RESET_SOC_SUBSYSTEM_ACCOUNTING通知的一部分提供给平台扩展插件(PEP)。 |
PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING结构作为PEP_DPM_RESET_SOC_SUBSYSTEM_ACCOUNTING通知的一部分提供给平台扩展插件(PEP)。 |
PEP_SOC_SUBSYSTEM_METADATA 了解PEP_SOC_SUBSYSTEM_METADATA结构如何包含键值对,这些键值对包含芯片 (SoC) 子系统上的系统的元数据。 它在发送到平台扩展插件(PEP)的PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知的上下文中使用。 |
PEP_SOC_SUBSYSTEM_METADATA PEP_SOC_SUBSYSTEM_METADATA结构包含键值对,这些键值对包含芯片 (SoC) 子系统上的系统的元数据。 它在发送到平台扩展插件(PEP)的PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知的上下文中使用。 |
PEP_SYSTEM_LATENCY 了解PEP_SYSTEM_LATENCY结构如何指定系统延迟容错的新值。 |
PEP_SYSTEM_LATENCY PEP_SYSTEM_LATENCY结构指定系统延迟容错的新值。 |
PEP_UNMASKED_INTERRUPT_FLAGS 了解PEP_UNMASKED_INTERRUPT_FLAGS联合如何指示未屏蔽的中断源是主中断还是辅助中断。 |
PEP_UNMASKED_INTERRUPT_FLAGS PEP_UNMASKED_INTERRUPT_FLAGS联合指示未屏蔽的中断源是主中断还是辅助中断。 |
PEP_UNMASKED_INTERRUPT_INFORMATION 了解PEP_UNMASKED_INTERRUPT_INFORMATION结构如何包含有关中断源的信息。 |
PEP_UNMASKED_INTERRUPT_INFORMATION PEP_UNMASKED_INTERRUPT_INFORMATION结构包含有关中断源的信息。 |
PEP_UNREGISTER_DEVICE 了解PEP_UNREGISTER_DEVICE结构如何标识从 Windows 电源管理框架(PoFx)中删除其注册的设备。 |
PEP_UNREGISTER_DEVICE PEP_UNREGISTER_DEVICE结构标识要从 Windows 电源管理框架(PoFx)中删除其注册的设备。 |
PEP_WORK 了解PEP_WORK结构如何指示 PEP 是否具有提交到 Windows 电源管理框架(PoFx)的工作请求。 |
PEP_WORK PEP_WORK结构指示 PEP 是否具有提交到 Windows 电源管理框架(PoFx)的工作请求。 |
PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE 了解PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE结构如何包含由平台扩展插件(PEP)异步评估的 ACPI 控制方法的结果。 |
PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE结构包含由平台扩展插件(PEP)异步评估的 ACPI 控制方法的结果。 |
PEP_WORK_ACPI_NOTIFY 了解PEP_WORK_ACPI_NOTIFY结构如何包含已生成硬件事件的设备的 ACPI 通知代码。 |
PEP_WORK_ACPI_NOTIFY PEP_WORK_ACPI_NOTIFY结构包含已生成硬件事件的设备的 ACPI 通知代码。 |
PEP_WORK_ACTIVE_COMPLETE PEP_WORK_ACTIVE_COMPLETE结构标识当前处于活动状态的组件。 |
PEP_WORK_COMPLETE_IDLE_STATE 了解PEP_WORK_COMPLETE_IDLE_STATE结构如何标识平台扩展插件(PEP)已准备好转换为新的 Fx 电源状态的组件。 |
PEP_WORK_COMPLETE_IDLE_STATE PEP_WORK_COMPLETE_IDLE_STATE结构标识平台扩展插件(PEP)已准备转换为新的 Fx 电源状态的组件。 |
PEP_WORK_COMPLETE_PERF_STATE 了解PEP_WORK_COMPLETE_PERF_STATE结构如何描述以前请求的更新的完成状态,这些更新分配给性能状态(P 状态)集的列表。 |
PEP_WORK_COMPLETE_PERF_STATE PEP_WORK_COMPLETE_PERF_STATE结构描述以前请求的更新的完成状态,这些更新分配给性能状态(P 状态)集的列表。 |
PEP_WORK_DEVICE_IDLE PEP_WORK_DEVICE_IDLE结构指示是否忽略指定设备的空闲超时。 |
PEP_WORK_DEVICE_POWER PEP_WORK_DEVICE_POWER结构描述了指定设备的新电源要求。 |
PEP_WORK_IDLE_STATE PEP_WORK_IDLE_STATE结构包含将组件转换为 Fx 电源状态的请求。 |
PEP_WORK_INFORMATION 了解PEP_WORK_INFORMATION结构如何描述 PEP 提交到 Windows 电源管理框架(PoFx)的工作项。 |
PEP_WORK_INFORMATION PEP_WORK_INFORMATION结构描述了 PEP 提交到 Windows 电源管理框架(PoFx)的工作项。 |
PEP_WORK_POWER_CONTROL 了解PEP_WORK_POWER_CONTROL结构如何包含平台扩展插件(PEP)直接发送到处理器驱动程序的电源控制请求的参数。 |
PEP_WORK_POWER_CONTROL PEP_WORK_POWER_CONTROL结构包含平台扩展插件(PEP)直接发送到处理器驱动程序的电源控制请求的参数。 |
PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION结构描述平台上事件缓冲区的配置。 |
PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构描述平台上可用的计数器资源。 |
PHYSICAL_COUNTER_RESOURCE_LIST PHYSICAL_COUNTER_RESOURCE_LIST结构描述PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构的数组。 |
PLUGPLAY_NOTIFICATION_HEADER 每个 PnP 通知结构的开头包括PLUGPLAY_NOTIFICATION_HEADER结构,例如DEVICE_INTERFACE_CHANGE_NOTIFICATION结构。 |
PNP_BUS_INFORMATION PNP_BUS_INFORMATION结构描述总线。 |
PNP_LOCATION_INTERFACE PNP_LOCATION_INTERFACE结构描述GUID_PNP_LOCATION_INTERFACE接口。 |
PO_FX_COMPONENT_IDLE_STATE PO_FX_COMPONENT_IDLE_STATE结构指定设备中组件的 Fx 电源状态的属性。 |
PO_FX_COMPONENT_PERF_INFO PO_FX_COMPONENT_PERF_INFO结构描述了设备中单个组件的所有性能状态集。 |
PO_FX_COMPONENT_PERF_SET PO_FX_COMPONENT_PERF_SET结构表示设备中单个组件的性能状态集。 |
PO_FX_COMPONENT_V1 PO_FX_COMPONENT结构描述设备中组件的电源状态属性。 |
PO_FX_COMPONENT_V2 了解PO_FX_COMPONENT结构如何描述设备中组件的电源状态属性。 |
PO_FX_CORE_DEVICE 了解PO_FX_CORE_DEVICE结构如何包含有关核心系统资源中组件电源状态属性的信息,并提供用于管理这些组件的软件接口。 |
PO_FX_CORE_DEVICE PO_FX_CORE_DEVICE结构包含有关核心系统资源中组件电源状态属性的信息,并提供用于管理这些组件的软件接口。 |
PO_FX_DEVICE_V1 PO_FX_DEVICE结构描述设备到电源管理框架(PoFx)的电源属性。 |
PO_FX_DEVICE_V2 了解PO_FX_DEVICE结构如何描述设备的电源属性到电源管理框架(PoFx)。 |
PO_FX_DEVICE_V3 详细了解:PO_FX_DEVICE_V3结构 |
PO_FX_PERF_STATE PO_FX_PERF_STATE结构表示设备中单个组件的性能状态。 |
PO_FX_PERF_STATE_CHANGE PO_FX_PERF_STATE_CHANGE结构包含有关通过调用 PoFxIssueComponentPerfStateChange 或 PoFxIssueComponentPerfStateChangeMultiple 例程请求的性能状态更改的信息。 |
PO_SPR_ACTIVE_SESSION_DATA 允许驱动程序注册/注销 SPR 活动会话开始和结束通知。 |
POOL_CREATE_EXTENDED_PARAMS 定义POOL_CREATE_EXTENDED_PARAMS结构。 |
POOL_EXTENDED_PARAMETER 了解以下内容的详细信息:POOL_EXTENDED_PARAMETER |
POOL_EXTENDED_PARAMS_SECURE_POOL 定义POOL_EXTENDED_PARAMS_SECURE_POOL结构。 |
POWER_MONITOR_INVOCATION |
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结构指定一组安全特权。 |
PRM_INTERFACE 提供一组指向控制 PRM 接口操作的函数的指针。 |
PROCESS_MEMBERSHIP_INFORMATION 本主题介绍PROCESS_MEMBERSHIP_INFORMATION结构。 |
PROCESS_MITIGATION_CHILD_PROCESS_POLICY 存储有关创建子进程的策略信息。 |
PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY 存储有关进程缓解策略的信息。 |
PROCESS_MITIGATION_SEHOP_POLICY 描述PROCESS_MITIGATION_SEHOP_POLICY结构。 |
PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY 不支持此结构。 |
PROCESS_MITIGATION_USER_POINTER_AUTH_POLICY 本主题介绍PROCESS_MITIGATION_USER_POINTER_AUTH_POLICY结构。 |
PROCESS_SYSCALL_PROVIDER_INFORMATION 描述PROCESS_SYSCALL_PROVIDER_INFORMATION结构。 |
PROCESSOR_NUMBER _PROCESSOR_NUMBER结构(miniport.h)按处理器的组号和组相对处理器编号来标识处理器。 |
PS_CREATE_NOTIFY_INFO PS_CREATE_NOTIFY_INFO结构提供有关新创建的流程的信息。 |
PTM_CONTROL_INTERFACE 保留PTM_CONTROL_INTERFACE。 请勿使用。 |
REENUMERATE_SELF_INTERFACE_STANDARD REENUMERATE_SELF_INTERFACE_STANDARD接口结构使驱动程序能够请求其父总线驱动程序重新连接驱动程序的设备。 此结构定义GUID_REENUMERATE_SELF_INTERFACE_STANDARD接口。 |
REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION结构包含驱动程序的 RegistryCallback 例程可用于释放驱动程序以前为与注册表对象关联的上下文分配的资源的信息。 |
REG_CREATE_KEY_INFORMATION 已过时,请改用REG_CREATE_KEY_INFORMATION_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 此结构指定一个服务器接收器监视器,该监视器可以接收有关服务器接收器事件的通知。 |
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请求。 |