内核
标准驱动程序例程必须由驱动程序实现。 驱动程序支持例程是 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
- vpci.h
- wdm.h
- wdmsec.h
- wmidata.h
- wmilib.h
- wmistr.h
有关编程指南,请参阅 Windows 内核。
初始化和卸载
本部分汇总了驱动程序可从其 DriverEntry、AddDevice、Reinitialize 或 Unload 例程调用的内核模式支持例程。
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
- HalAcquireDisplayOwnership
- HalAllocateAdapterChannel。 请改用 AllocateAdapterChannel。
- HalAllocateCrashDumpRegisters
- HalAllocateMapRegisters
- HalGetScatterGatherList。 请改用 GetScatterGatherList。
- HalMakeBeep
- HalPutDmaAdapter。 请改用 PutDmaAdapter。
- HalPutScatterGatherList。 请改用 PutScatterGatherList。
导出以下过时例程仅支持现有驱动程序:
已过时的例程 | Replacement |
---|---|
HalAllocateCommonBuffer | 请改为参阅 AllocateCommonBuffer 。 |
HalAssignSlotResources | PnP 设备的驱动程序由 PnP 管理器分配资源,该管理器会随每个IRP_MN_START_DEVICE请求一起传递资源列表。 必须支持无法由 PnP 管理器枚举的旧设备的驱动程序应使用 IoReportDetectedDevice 和 IoReportResourceForDetection。 |
HalFreeCommonBuffer | 请改为参阅 FreeCommonBuffer 。 |
HalGetAdapter | 请改为参阅 IoGetDmaAdapter 。 |
HalGetBusData | 请改用 IRP_MN_QUERY_INTERFACE 查询 GUID_BUS_INTERFACE_STANDARD 接口。 此查询请求返回指向 GetBusData 的函数指针,该指针可用于从给定设备的配置空间进行读取。 |
HalGetBusDataByOffset | 请改用 IRP_MN_QUERY_INTERFACE 查询 GUID_BUS_INTERFACE_STANDARD 接口。 此查询请求返回指向 GetBusData 的函数指针,该指针可用于从给定设备的配置空间进行读取。 |
HalGetDmaAlignmentRequirement | 请改为参阅 GetDmaAlignment。 |
HalGetInterruptVector | PnP 设备的驱动程序由 PnP 管理器分配资源,该管理器会随每个IRP_MN_START_DEVICE请求一起传递资源列表。 必须支持无法由 PnP 管理器枚举的旧设备的驱动程序应使用 IoReportDetectedDevice 和 IoReportResourceForDetection。 |
HalReadDmaCounter | 请改为参阅 ReadDmaCounter。 |
HalSetBusData | 请改用 IRP_MN_QUERY_INTERFACE 查询 GUID_BUS_INTERFACE_STANDARD 接口。 此查询请求返回一个指向 SetBusData 的函数指针,该指针可用于写入给定设备的配置空间。 |
HalSetBusDataByOffset | 请改用 IRP_MN_QUERY_INTERFACE 查询 GUID_BUS_INTERFACE_STANDARD 接口。 此查询请求返回一个指向 SetBusData 的函数指针,该指针可用于写入给定设备的配置空间。 |
HalTranslateBusAddress | PnP 管理器在其IIRP_MN_START_DEVICE请求中为每个设备传递原始和已翻译资源的列表。 因此,在大多数情况下,无需转换总线地址。 但是,如果需要转换,请使用 IRP_MN_QUERY_INTERFACE 查询GUID_BUS_INTERFACE_STANDARD接口。 查询请求返回一个指向 TranslateBusAddress 的函数指针,该指针可用于将父总线上的地址转换为逻辑地址。 |
这些过时的例程包含在 Ntddk.h 头文件中。
以下例程不受支持,不应使用:
- HalReturnToFirmware
Windows 执行 PCI 总线资源的资源均衡,以打开已插入设备的地址区域。 重新平衡操作会导致某些驱动程序设备的总线数据在IRP_MN_STOP_DEVICE和IRP_MN_START_DEVICE调用) 之间动态移动 (。 因此,驱动程序不得直接访问总线数据。 相反,驱动程序必须将其向下传递到较低的总线驱动程序,因为它知道设备的位置。
有关详细信息,请参阅 停止设备以重新平衡资源。
注册表
用于获取和报告配置信息,以及用于在注册表中注册接口。
函数 | 说明 |
---|---|
IoGetDeviceProperty | 从注册表中检索设备设置信息。 使用此例程(而不是直接访问注册表)使驱动程序不受不同平台差异和注册表结构中可能更改的影响。 |
IoOpenDeviceInterfaceRegistryKey | 返回注册表项的句柄,用于存储有关特定设备接口的信息。 |
IoOpenDeviceRegistryKey | 为特定设备实例返回特定于设备的注册表项或特定于驱动程序的注册表项的句柄。 |
IoRegisterDeviceInterface | (设备接口注册设备功能,) 驱动程序将启用该接口供应用程序或其他系统组件使用。 I/O 管理器为设备接口创建注册表项。 驱动程序可以使用 IoOpenDeviceInterfaceRegistryKey 访问此密钥下的永久性存储。 |
IoSetDeviceInterfaceState | 启用或禁用以前注册的设备接口。 应用程序和其他系统组件只能打开已启用的接口。 |
RtlCheckRegistryKey | 如果注册表中存在一个键沿给定的相对路径,则返回STATUS_SUCCESS。 |
RtlCreateRegistryKey | 在注册表中沿给定相对路径添加键对象。 |
RtlQueryRegistryValues | 在为回调例程提供控制权后,为驱动程序提供的回调提供对注册表中指定值名称的条目的只读访问权限,以及指定的相对路径。 |
RtlWriteRegistryValue | 将调用方提供的数据沿给定值名称处的指定相对路径写入注册表。 |
RtlDeleteRegistryValue | 从注册表中删除指定值名称 (,以及) 给定相对路径的关联值条目。 |
InitializeObjectAttributes | 为后续调用 ZwCreateXxx 或 ZwOpenXxx 例程设置OBJECT_ATTRIBUTES类型的参数。 |
ZwCreateKey | 使用给定对象的属性、允许的访问和创建选项在注册表中创建一个新项, (例如,在启动系统) 时是否再次创建密钥。 或者,打开现有密钥并返回键对象的句柄。 |
ZwOpenKey | 返回注册表中某个项的句柄,给定对象的属性 (该属性必须包含) 项的名称和对对象的所需访问权限。 |
ZwQueryKey | 返回有关键的类及其子项的数量和大小的信息。 例如,此信息包括子项名称的长度和值条目的大小。 |
ZwEnumerateKey | 返回注册表中打开的项的子项的指定信息(由从零开始的索引选择)。 |
ZwEnumerateValueKey | 返回有关注册表中打开的项的从零开始的索引选择的子项的值条目的指定信息。 |
ZwQueryValueKey | 返回注册表中打开的项的值条目。 |
ZwSetValueKey | 替换 (或) 注册表中打开的项的值项创建。 |
ZwFlushKey | 强制 ZwCreateKey 或 ZwSetValueKey 对打开的密钥对象所做的更改写入磁盘。 |
ZwDeleteKey | 关闭密钥后,立即从注册表中删除键及其值条目。 |
ZwClose | 释放已打开对象的句柄,导致句柄无效并递减对象句柄的引用计数。 |
对象和资源
用于设置和释放驱动程序可能使用的对象和资源。
函数 | 说明 |
---|---|
IoCreateDevice | 初始化设备对象,该对象表示驱动程序要加载到系统中的物理、虚拟或逻辑设备。 然后,它为与设备对象关联的驱动程序定义的设备扩展分配空间。 |
IoDeleteDevice | 从系统中删除基础设备时,从系统中删除设备对象。 |
IoGetDeviceObjectPointer | 请求访问命名设备对象,并返回指向该设备对象的指针(如果已授予请求的访问权限)。 此外,返回指向命名设备对象引用的文件对象的指针。 实际上,此例程在调用方与下一个较低级别的驱动程序之间建立连接。 |
IoAttachDeviceToDeviceStack | 将调用方的设备对象附加到驱动程序链中最高的设备对象,并返回指向以前最高的设备对象的指针。 绑定到目标设备的 I/O 请求首先路由到调用方。 |
IoGetAttachedDeviceReference | 返回指向驱动程序堆栈中最高级别设备对象的指针,并递增该对象的引用计数。 |
IoDetachDevice | 释放调用方设备对象与目标驱动程序的设备对象之间的附件。 |
IoAllocateDriverObjectExtension | 使用给定的唯一标识符分配每个驱动程序的上下文区域。 |
IoGetDriverObjectExtension | 检索以前分配的每个驱动程序上下文区域。 |
IoRegisterDeviceInterface | (设备接口注册设备功能,) 驱动程序将启用该接口供应用程序或其他系统组件使用。 I/O 管理器为设备接口创建注册表项。 驱动程序可以通过调用 IoOpenDeviceInterfaceRegistryKey 访问此密钥下的持久存储。 |
IoIsWdmVersionAvailable | 检查操作系统是否支持给定的 WDM 版本。 |
IoDeleteSymbolicLink | 释放设备对象名称和用户可见名称之间的符号链接。 |
IoAssignArcName | 在命名设备对象 ((如磁带、软盘或 CD-ROM) )与设备的相应 ARC 名称之间设置符号链接。 |
IoDeassignArcName | 释放通过调用 IoAssignArcName 创建的符号链接。 |
IoSetShareAccess | 设置允许访问表示设备的给定文件对象。 (只有最高级别的驱动程序才能调用此例程。) |
IoConnectInterrupt | 注册驱动程序的中断处理例程。 驱动程序应改用 IoConnectInterruptEx。 |
IoDisconnectInterrupt | 注销 IoConnectInterrupt 注册的中断处理例程。 |
IoConnectInterruptEx | 注册驱动程序的中断处理例程。 驱动程序可以为基于行的中断注册 InterruptService 例程,也可以注册用于消息信号中断的 InterruptMessageService 例程。 |
IoDisconnectInterruptEx | 注销 IoConnectInterruptEx 注册的中断处理例程。 |
IoInitializeDpcRequest | 将驱动程序提供的 DpcForIsr 例程与给定的设备对象相关联,以便 DpcForIsr 例程可以完成中断驱动的 I/O 操作。 |
IoReadPartitionTable | 返回具有给定扇区大小的磁盘上的分区列表。 |
IoSetPartitionInformation | 设置) 分区 (磁盘的分区类型和编号。 |
IoWritePartitionTable | 为磁盘写入分区表,给定表示磁盘的设备对象、扇区大小和指向包含驱动器布局结构的缓冲区的指针。 |
IoCreateController | 初始化一个控制器对象,该对象表示物理设备控制器,该控制器由具有相同驱动程序的两个或多个相似设备共享,并指定控制器扩展的大小。 |
IoDeleteController | 从系统中删除控制器对象。 |
KeInitializeSpinLock | 初始化 KSPIN_LOCK 类型的变量。 |
KeInitializeDpc | 初始化 DPC 对象,设置驱动程序提供的 CustomDpc 例程,该例程可使用给定上下文调用。 |
KeInitializeTimer | 将通知计时器对象初始化为 Not-Signaled 状态。 |
KeInitializeTimerEx | 将通知或同步计时器对象初始化为 Not-Signaled 状态。 |
KeInitializeEvent | 将事件对象初始化为 (单个服务员) 或通知 (多个服务员) 类型事件的同步,并设置其初始状态 (“已信号”或“未发出信号) ”。 |
ExInitializeFastMutex | 初始化一个快速互斥变量,该变量用于同步一组线程对共享资源的互斥访问。 |
KeInitializeMutex | 初始化设置为“已信号”状态的互斥对象。 |
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 电源管理框架的 ACPI 通知 (PoFx) 。 |
AcceptDeviceNotification | AcceptDeviceNotification 事件回调例程处理设备电源管理 (DPM) 来自 Windows 电源管理框架的通知 (PoFx) 。 |
AcceptProcessorNotification | AcceptProcessorNotification 事件回调例程处理来自 Windows 电源管理框架的处理器电源管理 (PPM) 通知 (PoFx) 。 |
PO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK | EnumerateInterruptSource 回调例程提供平台扩展插件 (PEP) 有关中断源的信息。 |
PROCESSOR_HALT_ROUTINE | Halt 回调例程将处理器转换为空闲状态。 |
PowerOnDumpDeviceCallback | PowerOnDumpDeviceCallback 回调例程会打开故障转储设备。 |
Power Management Framework (PoFx) 例程
一些其他 PoFx 例程和结构很可能最终出现在 Kernel-Mode 驱动程序体系结构文档集的电源管理部分中。
初始化函数 | 说明 |
---|---|
PoFxRegisterPlugin | PoFxRegisterPlugin 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterPluginEx | PoFxRegisterPluginEx 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterCoreDevice | PoFxRegisterCoreDevice 例程将新的核心系统资源注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterCrashdumpDevice | PoFxRegisterCrashdumpDevice 例程注册故障转储设备。 |
PoFxPowerOnCrashdumpDevice | PoFxPowerOnCrashdumpDevice 例程请求启用故障转储设备。 |
回调函数 | 说明 |
---|---|
POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS | EnumerateUnmaskedInterrupts 例程枚举中断已取消屏蔽并启用的中断源。 |
POFXCALLBACKPLATFORMIDLEVETO | PlatformIdleVeto 例程递增或递减平台空闲状态的否决代码的否决计数。 |
POFXCALLBACKPROCESSORHALT | ProcessorHalt 例程准备要停止的处理器。 |
POFXCALLBACKPROCESSORIDLEVETO | ProcessorIdleVeto 例程递增或递减处理器空闲状态的否决代码的否决计数。 |
POFXCALLBACKREQUESTCOMMON | RequestCommon 例程是泛型请求处理程序。 |
POFXCALLBACKREQUESTINTERRUPT | RequestInterrupt 例程请求操作系统重播边缘触发的中断,该中断可能在硬件平台处于低功耗状态时丢失。 |
POFXCALLBACKREQUESTWORKER | 平台扩展插件 (PEP) 调用 RequestWorker 例程,以通知 Windows 电源管理框架 (PoFx) 平台扩展插件 (PEP) 具有要代表指定设备提交的工作请求。 |
POFXCALLBACKCRITICALRESOURCE | TransitionCriticalResource 例程更改核心系统组件的主动/非活动状态。 |
POFXCALLBACKUPDATEPLATFORMIDLESTATE | UpdatePlatformIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定平台空闲状态的属性。 |
POFXCALLBACKUPDATEPROCESSORIDLESTATE | 平台扩展插件 (PEP) 调用 UpdateProcessorIdleState 例程,以更新指定处理器空闲状态的属性。 |
ComponentCriticalTransitionCallback | ComponentCriticalTransitionCallback 回调例程处理指定组件在完全) 和低功耗 Fx 组件电源状态上 F0 (之间的转换。 |
Configuration Manager 例程
配置管理器例程使用 CmXxx 命名约定。
- CmCallbackGetKeyObjectID
- CmCallbackGetKeyObjectIDEx
- CmCallbackReleaseKeyObjectIDEx
- CmGetBoundTransaction
- CmGetCallbackVersion
- CmRegisterCallback
- CmRegisterCallbackEx
- CmSetCallbackObjectContext
- CmUnRegisterCallback
内核事务管理器 (KTM) 例程
本部分介绍内核事务管理器 (KTM) 提供的例程、结构和枚举。
事务管理器对象例程
本节包括下列主题:
- TmRecoverTransactionManager
- ZwCreateTransactionManager
- ZwOpenTransactionManager
- ZwQueryInformationTransactionManager
- ZwRecoverTransactionManager
- ZwRollforwardTransactionManager
事务对象例程
本节包括下列主题:
- TmCommitTransaction
- TmGetTransactionId
- TmIsTransactionActive
- TmRollbackTransaction
- ZwCommitTransaction
- ZwCreateTransaction
- ZwEnumerateTransactionObject
- ZwOpenTransaction
- ZwQueryInformationTransaction
- ZwRollbackTransaction
- ZwSetInformationTransaction
登记对象例程
本节包括下列主题:
- TmCommitComplete
- TmCommitEnlistment
- TmCreateEnlistment
- TmDereferenceEnlistmentKey
- TmPrepareComplete
- TmPrepareComplete
- TmPrepareEnlistment
- TmPrepareEnlistment
- TmReadOnlyEnlistment
- TmRecoverEnlistment
- TmReferenceEnlistmentKey
- TmRequestOutcomeEnlistment
- TmRollbackComplete
- TmRollbackEnlistment
- TmSinglePhaseReject
- ZwCommitComplete
- ZwCommitEnlistment
- ZwCreateEnlistment
- ZwOpenEnlistment
- ZwPrepareComplete
- ZwPrepareComplete
- ZwPrepareEnlistment
- ZwPrepareEnlistment
- ZwQueryInformationEnlistment
- ZwReadOnlyEnlistment
- ZwRecoverEnlistment
- ZwRollbackComplete
- ZwRollbackEnlistment
- ZwSetInformationEnlistment
- ZwSinglePhaseReject
资源管理器对象例程
本节包括下列主题:
- ResourceManagerNotification
- TmEnableCallbacks
- TmRecoverResourceManager
- ZwCreateResourceManager
- ZwGetNotificationResourceManager
- ZwOpenResourceManager
- ZwQueryInformationResourceManager
- ZwRecoverResourceManager
- ZwSetInformationResourceManager
安全参考监视器例程
通常,较高级别的驱动程序(尤其是网络驱动程序)调用这些例程。
对 SeXxx 例程的引用按字母顺序排列。
- SeAccessCheck
- SeAssignSecurity
- SeAssignSecurityEx
- SeDeassignSecurity
- SeFreePrivileges
- SeSinglePrivilegeCheck
- SeValidSecurityDescriptor
核心内核库支持例程
除视频和 SCSI 微型端口驱动程序和 NDIS 驱动程序之外的所有内核模式驱动程序都可能调用至少一些 KeXxx 例程。
本部分按字母顺序介绍 KeXxx 例程的引用。
有关这些例程功能的概述,请参阅 Kernel-Mode 支持例程摘要。
保留以下例程供系统使用:
- KeAcquireSpinLockRaiseToSynch
- KeBreakinBreakpoint
- KeEnterKernelDebugger
- KeFlushWriteBuffer
- KeGetBugMessageText
- KeRaiseIrqlToSynchLevel
- KeRemoveByKeyDeviceQueueIfBusy
- KeSetTimeUpdateNotifyRoutine
执行库支持例程
本部分介绍执行库支持例程。 这些例程使用 ExXxx 命名约定,并按字母顺序列出。
保留以下执行支持例程供系统使用。 请勿在驱动程序中使用它们。
例程所返回的值 | Replacement |
---|---|
ExAcquireSpinLock | 请改用 KeAcquireSpinLock。 |
ExAcquireSpinLockAtDpcLevel | 请改用 KeAcquireSpinLockAtDpcLevel。 |
ExfInterlockedDecrementLong | 请改用 InterlockedDecrement。 |
ExfInterlockedExchangeUlong | 请改用 InterlockedExchange。 |
ExfInterlockedIncrementLong | 请改用 InterlockedIncrement。 |
ExfInterlockedPopEntryList | 请改用 ExInterlockedPopEntryList。 |
ExfInterlockedPushEntryList | 请改用 ExInterlockedPushEntryList。 |
ExReleaseSpinLock | 请改用 KeReleaseSpinLock。 |
ExReleaseSpinLockFromDpcLevel | 请改用 KeReleaseSpinLockFromDpcLevel。 |
ExVerifySuite |
CLFS 库例程
本部分包含由通用日志文件系统 (CLFS) 实现的例程的参考页。 有关 CLFS 管理例程的列表,请参阅 CLFS 管理库例程。 有关 CLFS 的概念性讨论,请参阅本文档设计指南部分中的通用日志文件系统。 有关 CLFS 文档中使用的关键术语的定义,请参阅 CLFS 术语。
回调函数 | 说明 |
---|---|
ClfsAddLogContainer | ClfsAddLogContainer 例程将容器添加到 CLFS 日志。 |
ClfsAddLogContainerSet | ClfsAddLogContainerSet 例程以原子方式将一组容器添加到 CLFS 日志。 |
ClfsAdvanceLogBase | ClfsAdvanceLogBase 例程设置 CLFS 流的基 LSN。 |
ClfsAlignReservedLog | ClfsAlignReservedLog 例程计算必须为指定记录集保留的空间大小。 大小计算包括标头所需的空间和扇区对齐所需的空间。 |
ClfsAllocReservedLog | ClfsAllocReservedLog 例程在封送区域中为一组记录保留空间。 |
ClfsCloseAndResetLogFile | ClfsCloseAndResetLogFile 例程释放对指定日志文件对象的所有引用,并将其关联的流标记为重置。 |
ClfsCloseLogFileObject | ClfsCloseLogFileObject 例程释放对日志文件对象的所有引用。 |
ClfsCreateLogFile | ClfsCreateLogFile 例程创建或打开 CLFS 流。 如有必要,ClfsCreateLogFile 还会创建保存流记录的基础物理日志。 |
ClfsCreateMarshallingArea | ClfsCreateMarshallingArea 例程为 CLFS 流创建封送区域,并返回指向表示新封送处理区域的不透明上下文的指针。 |
ClfsCreateScanContext | ClfsCreateScanContext 例程创建可用于循环访问指定 CLFS 日志的容器的扫描上下文。 |
ClfsDeleteLogByPointer | ClfsDeleteLogByPointer 例程标记要删除的 CLFS 流。 |
ClfsDeleteLogFile | ClfsDeleteLogFile 例程标记要删除的 CLFS 流。 |
ClfsDeleteMarshallingArea | ClfsDeleteMarshallingArea 例程删除封送区域。 |
ClfsFlushBuffers | ClfsFlushBuffers 例程强制指定封送区域中的所有日志 I/O 块进入稳定存储。 |
ClfsFlushToLsn | ClfsFlushToLsn 例程强制将 LSN 小于或等于指定 LSN 的所有记录强制到稳定的存储。 |
ClfsGetContainerName | ClfsGetContainerName 例程返回指定容器的路径名称。 |
ClfsGetIoStatistics | ClfsGetIoStatistics 例程返回指定 CLFS 日志的 I/O 统计信息。 |
ClfsLsnBlockOffset | ClfsLsnBlockOffset 例程返回指定 LSN 中包含的扇区对齐块偏移量。 |
ClfsLsnContainer | ClfsLsnContainer 例程返回包含在指定 LSN 中的逻辑容器标识符。 |
ClfsLsnCreate | ClfsLsnCreate 例程在给定容器标识符、块偏移量和记录序列号的情况下, (LSN) 创建日志序列号。 |
ClfsLsnEqual | ClfsLsnEqual 例程确定来自同一流的两个 LSN 是否相等。 |
ClfsLsnGreater | ClfsLsnGreater 例程确定一个 LSN 是否大于另一个 LSN。 这两个 LSN 必须来自同一流。 |
ClfsLsnLess | ClfsLsnLess 例程确定一个 LSN 是否小于另一个 LSN。 这两个 LSN 必须来自同一流。 |
ClfsLsnNull | ClfsLsnNull 例程确定指定的 LSN 是否等于可能的最小 LSN,CLFS_LSN_NULL。 |
ClfsLsnRecordSequence | ClfsLsnRecordSequence 例程返回指定 LSN 中包含的记录序列号。 |
ClfsQueryLogFileInformation | ClfsQueryLogFileInformation 例程返回指定 CLFS 流或其基础物理日志的元数据和状态信息或两者。 |
ClfsReadLogRecord | ClfsReadLogRecord 例程读取 CLFS 流中的目标记录,并返回一个读取上下文,调用方可以使用该上下文读取流中之前或之后的记录。 |
ClfsReadNextLogRecord | ClfsReadNextLogRecord 例程相对于读取上下文中的当前记录,按顺序读取下一条记录。 |
ClfsReadPreviousRestartArea | ClfsReadPreviousRestartArea 例程相对于读取上下文中的当前记录读取以前的重启记录。 |
ClfsReadRestartArea | ClfsReadRestartArea 例程读取最近写入指定 CLFS 流的重启记录。 |
ClfsRemoveLogContainer | ClfsRemoveLogContainer 例程从 CLFS 日志中删除容器。 |
ClfsRemoveLogContainerSet | ClfsRemoveLogContainerSet 例程以原子方式从 CLFS 日志中删除一组容器。 |
ClfsReserveAndAppendLog | ClfsReserveAndAppendLog 例程在封送处理区域中保留空间,或将记录追加到封送处理区域,或者以原子方式执行这两种操作。 |
ClfsReserveAndAppendLogAligned | ClfsReserveAndAppendLogAligned 例程在封送处理区域中保留空间,或将记录追加到封送处理区域,或者以原子方式执行这两种操作。 记录的数据在指定的边界上对齐。 |
ClfsScanLogContainers | ClfsScanLogContainers 例程检索属于特定 CLFS 日志的容器序列的描述性信息。 |
ClfsSetArchiveTail | ClfsSetArchiveTail 例程将 CLFS 日志的存档尾部设置为指定的 LSN。 |
ClfsSetEndOfLog | ClfsSetEndOfLog 例程截断 CLFS 流。 |
ClfsSetLogFileInformation | ClfsSetLogFileInformation 例程设置指定流及其基础物理日志的元数据和状态信息。 |
ClfsTerminateReadLog | ClfsTerminateReadLog 例程在释放与上下文关联的资源后使指定的读取上下文失效。 |
ClfsWriteRestartArea | ClfsWriteRestartArea 例程以原子方式将新的重启记录追加到 CLFS 流,将重启记录刷新到稳定存储,并选择性地更新流的基本 LSN。 |
IRP
Microsoft Windows 使用 I/O 请求数据包 (IRP) 将消息发送到设备驱动程序。 IRP 是包含用于传达事件状态的特定信息的数据结构。 有关 IRP 数据结构的详细信息,请参阅 IRP 和 IRP 主要函数代码。
驱动程序可以使用 System-Supplied 驱动程序接口将 IRP 发送到其他驱动程序。
除了标准 IRP 代码外,还有三种适用于特定技术的附加 IRP 类型:
即插即用 IRP,请参阅 即插即用次要 IRP
电源管理 IRP,请参阅 电源管理次要 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,指定主要函数代码 (IRP_MJ_PNP、IRP_MJ_READ、IRP_MJ_WRITE、IRP_MJ_SHUTDOWN或IRP_MJ_FLUSH_BUFFERS) ,并指向:应在其中进行 I/O 的较低驱动程序设备对象。 将包含要读取的数据或包含要写入的数据的缓冲区。 缓冲区的长度(以字节为单位)。 媒体上的起始偏移量。 在请求的操作完成时要设置为“已信号”状态的事件对象。 I/O 状态块,调用的驱动程序可以返回状态信息,调用方 IoCompletion 例程可以访问它。 返回指向 IRP 的指针,以便调用方可以设置任何必要的次要函数代码,并在将 IRP 发送到目标驱动程序之前设置其 IoCompletion 例程。 |
IoBuildDeviceIoControlRequest | 分配和设置一个 IRP,指定 (具有可选输入或输出缓冲区IRP_MJ_INTERNAL_DEVICE_CONTROL或IRP_MJ_DEVICE_CONTROL) 的主要函数代码;指向较低驱动程序的设备对象的指针;在请求的操作完成时要设置为“已信号”状态的事件;以及要由接收 IRP 的驱动程序设置的 I/O 状态块。 返回指向 IRP 的指针,以便调用方可以在将 IRP 发送到下一个较低级别的驱动程序之前设置适当的IOCTL_XXX。 |
PoRequestPowerIrp | 使用主函数代码IRP_MJ_POWER分配和初始化 IRP,然后将 IRP 发送到指定设备对象的设备堆栈中的顶级驱动程序。 |
IoSizeOfIrp | 返回具有给定 I/O 堆栈位置计数的 IRP 所需的大小(以字节为单位)。 |
IoAllocateIrp | 为调用方分配 i/O 堆栈位置数(可选 (),但至少为调用方) 下分层的每个驱动程序分配一个 IRP,以及是否向调用方收取配额。 如果成功,则返回指向非分页系统空间中的 IRP 的指针;否则,返回 NULL。 |
IoInitializeIrp | 初始化 IRP,给定指向已分配的 IRP 的指针、其长度(以字节为单位)及其 I/O 堆栈位置数。 |
IoSetNextIrpStackLocation | 将当前 IRP 堆栈位置设置为调用方在 IRP 中的位置。 堆栈位置必须由之前对 IoAllocateIrp 的调用分配,该调用指定了足以为调用方提供其自己的堆栈位置的堆栈大小参数。 |
IoAllocateMdl | 分配足以映射调用方提供的起始地址和长度的 MDL;(可选)将 MDL 与给定的 IRP 相关联。 |
IoBuildPartialMdl | 从给定源 MDL 为指定的起始虚拟地址和长度(以字节为单位)生成 MDL。 将大型传输请求拆分为多个较小传输的驱动程序可以调用此例程。 |
IoFreeMdl | 释放调用方分配的给定 MDL。 |
IoMakeAssociatedIrp | 分配并初始化要与发送到最高级别驱动程序的主 IRP 关联的 IRP,从而允许驱动程序“拆分”原始请求,并将关联的 IRP 发送到较低级别的驱动程序或设备。 |
IoSetCompletionRoutine | 向给定的 IRP 注册驱动程序提供的 IoCompletion 例程,以便在较低级别的驱动程序完成请求时调用 IoCompletion 例程。 IoCompletion 例程允许调用方释放它使用 IoAllocateIrp 或 IoBuildAsynchronousFsdRequest 分配的 IRP;释放为较低驱动程序设置 IRP 而分配的任何其他资源;和 ,以执行任何必要的 I/O 完成处理。 |
IoSetCompletionRoutineEx | 与 IoSetCompletionRoutine 相同,只是它保证在 IoCompletion 例程退出之前不会卸载非即插即用驱动程序。 |
IoCallDriver | 将 IRP 发送到较低级别的驱动程序。 |
IoFreeIrp | 释放调用方分配的 IRP。 |
IoReuseIrp | 重新初始化以便重复使用以前由 IoAllocateIrp 分配的 IRP。 |
文件对象
函数 | 说明 |
---|---|
InitializeObjectAttributes | 初始化类型为 OBJECT_ATTRIBUTES 的参数,以便后续调用 ZwCreateXxx 或 ZwOpenXxx 例程。 |
ZwCreateFile | 创建或打开表示物理、逻辑或虚拟设备、目录、数据文件或卷的文件对象。 |
ZwQueryInformationFile | 返回有关打开的文件的状态或属性的信息。 |
IoGetFileObjectGenericMapping | 返回有关文件对象的通用访问权限与特定访问权限之间的映射的信息。 |
ZwReadFile | 从打开的文件返回数据。 |
ZwSetInformationFile | 更改有关打开的文件的状态或属性的信息。 |
ZwWriteFile | 将数据传输到打开的文件。 |
ZwClose | 释放已打开对象的句柄,导致句柄无效并递减对象句柄的引用计数。 |
Silo DDI
本部分介绍 silo DDI。 这些 DDI 使内核组件能够了解计算机上创建和销毁的服务器接收器。 组件注册以接收这些事件的通知,并选择性地存储与每个 silo 关联的状态。
上下文管理
这些 DDI 提供在 silo 对象上分配和检索上下文结构的功能。 这样,驱动程序就可以为每个接收器附加每个接收器的信息。
- PsAllocSiloContextSlot
- PsFreeSiloContextSlot
- PsCreateSiloContext
- PsInsertSiloContext
- PsReplaceSiloContext
- PsInsertPermanentSiloContext
- PsGetPermanentSiloContext
- PsMakeSiloContextPermanent
- PsGetSiloContext
- PsRemoveSiloContext
- PsReferenceSiloContext
- PsDereferenceSiloContext
- SILO_CONTEXT_CLEANUP_CALLBACK
线程
这些 DDI 提供设置和检索当前线程的 silo 的功能。
- PsAttachSiloToCurrentThread
- PsDetachSiloFromCurrentThread
- PsGetCurrentSilo
- PsGetCurrentServerSilo
监视
这些 DDI 使驱动程序能够接收有关 silo 创建和终止事件的通知。
- PsRegisterSiloMonitor
- PsUnregisterSiloMonitor
- PsStartSiloMonitor
- PsGetSiloMonitorContextSlot
- SILO_MONITOR_CREATE_CALLBACK
- SILO_MONITOR_TERMINATE_CALLBACK
帮助程序
这些 DDI 有助于处理 silo 对象。
- PsGetJobSilo
- PsGetJobServerSilo
- PsGetEffectiveServerSilo
- PsIsHostSilo
- PsGetHostSilo
- PsTerminateServerSilo
同步
本部分介绍驱动程序可以调用的内核模式支持例程:
将自己的标准驱动程序例程的执行同步 (驱动程序例程和 I/O 对象) 。
暂时更改当前 IRQL,以便调用支持例程或返回当前 IRQL (IRQL) 。
使用旋转锁同步对资源的访问,或者在不使用旋转锁 (旋转锁和互锁) 执行互锁操作。
管理超时或确定系统时间 (计时器) 。
使用系统线程或管理非比特线程上下文中的同步, (驱动程序线程、调度程序对象和资源) 。
驱动程序例程和 I/O 对象
函数 | 说明 |
---|---|
KeSynchronizeExecution | 在给定指向中断对象的指针的情况下,将驱动程序提供的 SynchCritSection 例程的执行与与一组中断对象关联的 ISR 的执行同步。 |
IoRequestDpc | 将驱动程序提供的 DpcForIsr 例程排队,以在较低的 IRQL 处完成中断驱动的 I/O 处理。 |
KeInsertQueueDpc | 在处理器的 IRQL 低于 DISPATCH_LEVEL 时,立即将要执行的 DPC 排队;如果 DPC 对象已排队,则返回 FALSE。 |
KeRemoveQueueDpc | 从 DPC 队列中删除给定的 DPC 对象;如果对象不在队列中,则返回 FALSE。 |
KeSetImportanceDpc | 控制特定 DPC 排队的方式,以及在某种程度上运行 DPC 例程的方式。 |
KeSetTargetProcessorDpc | 控制特定 DPC 随后将排队的处理器。 |
KeFlushQueuedDpcs | 调用此例程以等待所有排队的 DPC 执行。 |
AllocateAdapterChannel | 将设备对象连接到适配器对象,并调用驱动程序提供的 AdapterControl 例程,以在适当的 DMA 通道和任何必要的映射寄存器可用后立即通过系统 DMA 控制器或总线主适配器执行 I/O 操作。 (此例程保留对指定设备的 DMA 通道和映射寄存器的独占访问权限。) |
FreeAdapterChannel | 释放表示系统 DMA 通道的适配器对象,并根据需要释放映射寄存器(如果已分配)。 |
FreeMapRegisters | 在 IoMapTransfer 使用寄存器并且总线主 DMA 传输完成之后,释放从调用 AllocateAdapterChannel 保存的一组映射寄存器。 |
IoAllocateController | 将设备对象连接到控制器对象,并调用驱动程序提供的 ControllerControl 例程,以在控制器不繁忙时立即对设备控制器执行 I/O 操作。 (此例程保留对指定设备的硬件控制器的独占访问权限。) |
IoFreeController | 释放控制器对象,前提是排队到控制器的当前 IRP 的所有设备操作都已完成。 |
IoStartTimer | 为给定设备对象启用计时器,然后每秒调用一次驱动程序提供的 IoTimer 例程。 |
IoStopTimer | 禁用给定设备对象的计时器,以便除非驱动程序重新启用计时器,否则不会调用驱动程序提供的 IoTimer 例程。 |
KeSetTimer | 设置计时器对象将设置为“已信号”状态的绝对间隔或相对间隔,并选择性地提供计时器 DPC,该间隔到期后要执行。 |
KeSetTimerEx | 设置计时器对象将设置为“已信号”状态的绝对或相对间隔,可以选择提供计时器 DPC,以便在间隔过期时执行,并选择性地为计时器提供定期间隔。 |
KeCancelTimer | 在传递给 KeSetTimer 的间隔过期之前取消计时器对象;在计时器间隔(如果有已设置)过期之前取消对计时器 DPC 的排队。 |
KeReadStateTimer | 返回给定的计时器对象是否设置为“已信号”状态。 |
IoStartPacket | 使用给定设备对象的给定 IRP 调用驱动程序的 StartIo 例程,或者在设备已忙时将 IRP 插入设备队列,指定 IRP 是否可取消。 |
IoStartNextPacket | 为给定设备对象取消下一个 IRP 排队,指定 IRP 是否可取消,并调用驱动程序的 StartIo 例程。 |
IoStartNextPacketByKey | 根据指定的排序键值为给定设备对象取消下一个 IRP 排队。 指定 IRP 是否可取消并调用驱动程序的 StartIo 例程。 |
IoSetCompletionRoutine | 向给定的 IRP 注册驱动程序提供的 IoCompletion 例程,以便在下一个较低级别的驱动程序通过以下方式完成请求的操作时调用 IoCompletion 例程:成功、出现错误或取消 IRP。 |
IoSetCompletionRoutineEx | 与 IoSetCompletionRoutine 相同,只是它保证在 IoCompletion 例程退出之前不会卸载非即插即用驱动程序。 |
IoSetCancelRoutine | 设置或清除 IRP 中的 Cancel 例程。 设置 Cancel 例程会使 IRP 可取消。 |
KeStallExecutionProcessor | 在当前处理器上 (给定时间间隔内停止调用方) 设备驱动程序。 |
ExAcquireResourceExclusiveLite | 获取由调用线程进行独占访问的初始化资源,并选择性地等待获取资源。 |
ExAcquireResourceSharedLite | 获取由调用线程进行共享访问的初始化资源,并选择性地等待获取资源。 |
ExAcquireSharedStarveExclusive | 获取给定资源进行共享访问,而无需等待任何挂起的尝试来获取对同一资源的独占访问权限。 |
ExAcquireSharedWaitForExclusive | 获取给定资源进行共享访问,可以选择等待任何挂起的独占服务员先获取并释放资源。 |
ExReleaseResourceForThreadLite | 释放给定线程获取的给定资源。 |
ZwReadFile | 从打开的文件读取数据。 如果调用方使用某些参数打开了文件对象,则调用方可以等待返回文件句柄以完成 I/O。 |
ZwWriteFile | 将数据写入打开的文件。 如果调用方使用某些参数打开了文件对象,则调用方可以等待返回文件句柄以完成 I/O。 |
IRQL
函数 | 说明 |
---|---|
KeRaiseIrql | 将硬件优先级提高到给定的 IRQL 值,从而屏蔽当前处理器上等效或更低 IRQL 的中断。 |
KeRaiseIrqlToDpcLevel | 将硬件优先级提高到 IRQL DISPATCH_LEVEL,从而屏蔽当前处理器上等效或更低 IRQL 的中断。 |
KeLowerIrql | 将当前处理器上的 IRQL 还原到其原始值。 |
KeGetCurrentIrql | 返回当前硬件优先级 IRQL 值。 |
旋转锁和互锁
函数 | 说明 |
---|---|
IoAcquireCancelSpinLock | 以多处理器安全方式同步 IRP 的可取消状态转换。 |
IoSetCancelRoutine | 在可取消状态转换期间,在 IRP 中设置或清除取消例程。 设置 Cancel 例程会使 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 | 如果给定的计时器对象设置为“已信号”状态,则返回 TRUE。 |
KeQuerySystemTime | 返回当前系统时间。 |
KeQueryRuntimeThread | 返回累积的内核模式和用户模式运行时间。 |
KeQueryTickCount | 返回自系统启动以来发生的间隔计时器中断数。 |
KeQueryTimeIncrement | 返回在每次间隔计时器中断时添加到系统时间的 100 纳秒单位数。 |
KeQueryInterruptTime | 返回系统中断时间计数的当前值(以 100 纳秒为单位),精确到系统时钟周期内。 |
KeQueryInterruptTimePrecise | 以 100 纳秒为单位返回系统中断时间计数的当前值,精度在微秒内。 |
KeQueryPerformanceCounter | 以赫兹为单位返回系统性能计数器值。 |
驱动程序线程、调度程序对象和资源
函数 | 说明 |
---|---|
KeDelayExecutionThread | 在给定的时间间隔内,将当前线程置于可警报或不可更改的等待状态。 |
ExInitializeResourceLite | 初始化调用方为其提供存储的资源,该资源由一组线程 (共享读取器、独占编写器) 进行同步。 |
ExReinitializeResourceLite | 重新初始化现有资源变量。 |
ExAcquireResourceExclusiveLite | 获取由调用线程进行独占访问的初始化资源,并选择性地等待获取该资源。 |
ExAcquireResourceSharedLite | 获取由调用线程进行共享访问的初始化资源,并选择性地等待获取资源。 |
ExAcquireSharedStarveExclusive | 获取给定资源进行共享访问,而无需等待任何挂起的尝试获取对同一资源的独占访问权限。 |
ExAcquireSharedWaitForExclusive | 获取用于共享访问的给定资源,可以选择等待任何挂起的独占等待者先获取并释放资源。 |
ExIsResourceAcquiredExclusiveLite | 返回调用线程是否具有对给定资源的独占访问权限。 |
ExIsResourceAcquiredSharedLite | 返回调用线程获取对给定资源的共享访问权限的次数。 |
ExGetExclusiveWaiterCount | 返回当前等待获取给定资源进行独占访问的线程数。 |
ExGetSharedWaiterCount | 返回当前等待获取共享访问的给定资源的线程数。 |
ExConvertExclusiveToSharedLite | 将给定资源从获取的独占访问转换为获取共享访问。 |
ExGetCurrentResourceThread | 返回当前线程的线程 ID。 |
ExReleaseResourceForThreadLite | 释放给定线程获取的给定资源。 |
ExDeleteResourceLite | 从系统的资源列表中删除调用方初始化的资源。 |
IoQueueWorkItem | 将初始化的工作队列项排队,以便在系统工作线程获得控制权时调用驱动程序提供的例程。 |
KeSetTimer | 设置计时器对象将设置为信号状态的绝对或相对间隔,并选择性地提供计时器 DPC,以在间隔到期时执行。 |
KeSetTimerEx | 设置计时器对象设置为“已信号”状态的绝对或相对间隔。 (可选)提供计时器 DPC,以便在间隔过期时执行,并提供计时器的重复间隔。 |
KeCancelTimer | 在传递给 KeSetTimer 的时间间隔过期之前取消计时器对象。 如果有任何) 过期,在计时器间隔 (之前将计时器 DPC 取消排队。 |
KeReadStateTimer | 如果给定的计时器对象设置为“已发出信号”状态,则返回 TRUE。 |
KeSetEvent | 返回给定事件对象的先前状态,并将事件 ((如果尚未发出信号) )设置为“已发出信号”状态。 |
KeClearEvent | 将事件重置为 Not-Signaled 状态。 |
KeResetEvent | 返回事件对象的先前状态,并将事件重置为 Not-Signaled 状态。 |
KeReadStateEvent | 返回给定事件对象的当前状态 (非零,对于“已发出信号”) 返回零。 |
ExAcquireFastMutex | 获取初始化的快速互斥体(可能在将调用方置于等待状态后,直到获取它),并在禁用 APC 的情况下授予调用线程所有权。 |
ExTryToAcquireFastMutex | 立即为禁用 APC 的调用方获取给定的快速互斥,或返回 FALSE。 |
ExReleaseFastMutex | 释放通过 ExAcquireFastMutex 或 ExTryToAcquireFastMutex 获取的快速互斥锁的所有权。 |
ExAcquireFastMutexUnsafe | 获取初始化的快速互斥体,可能在将调用方置于等待状态后,直到获取它。 |
ExReleaseFastMutexUnsafe | 释放通过 ExAcquireFastMutexUnsafe 获取的快速互斥锁的所有权。 |
KeReleaseMutex | 释放给定的互斥对象,指定调用方是否在 KeReleaseMutex 返回互斥状态的上一个值时调用 KeWaitXxx 例程之一, (Signaled 的零;否则为无信号) 。 |
KeReadStateMutex | 返回当前状态 (给定互斥对象的“Signaled”或“未发出信号”) 的任何其他值。 |
KeReleaseSemaphore | 释放给定信号灯对象。 如果发布将信号灯设置为“已信号”状态,则为等待线程提供 (运行时) 优先级提升。 按给定值增加信号灯计数,并指定调用方是否在 KeReleaseSemaphore 返回后立即调用 KeWaitXxx 例程之一。 |
KeReadStateSemaphore | 返回给定信号灯对象的当前状态 (Not-Signaled 的零或信号) 的正值。 |
KeWaitForSingleObject | 将当前线程置于可警报或不可更改的等待状态,直到给定调度程序对象设置为“已发出信号”状态或 (选择性地) ,直到等待超时。 |
KeWaitForMutexObject | 将当前线程置于可警报或不可更改的等待状态,直到给定的互斥体设置为“已信号”状态,或者 (选择性地) ,直到等待超时。 |
KeWaitForMultipleObjects | 将当前线程置于可警报或不可停止的等待状态,直到将任意一个或所有调度程序对象设置为“已发出信号”状态或 (选择性地) ,直到等待超时。 |
PsGetCurrentThread | 返回指向当前线程的指针。 |
KeGetCurrentThread | 返回指向表示当前线程的不透明线程对象的指针。 |
IoGetCurrentProcess | 返回指向当前线程的进程的指针。 |
PsGetCurrentProcess | 返回指向当前线程的进程的指针。 |
KeEnterCriticalRegion | 在请求当前 I/O 操作的用户模式线程上下文中运行最高级别的驱动程序时,暂时禁用正常内核 APC 的传递。 仍会提供特殊的内核模式 APC。 |
KeLeaveCriticalRegion | 尽快启用通过对 KeEnterCriticalRegion 的先前调用禁用的正常内核模式 APC 的传递。 |
KeAreApcsDisabled | 如果禁用了正常的内核模式 APC,则返回 TRUE。 |
KeSaveFloatingPointState | 保存当前线程的非易失浮点上下文,以便调用方可以执行自己的浮点操作。 |
KeRestoreFloatingPointState | 还原使用 KeSaveFloatingPointState 保存的上一个非易失性浮点上下文。 |
ZwSetInformationThread | 设置调用方具有句柄的给定线程的优先级。 |
PsGetCurrentProcessId | 返回当前进程的系统分配的标识符。 |
PsGetCurrentThreadId | 返回当前线程的系统分配标识符。 |
PsSetCreateProcessNotifyRoutine | 注册一个最高级别驱动程序的回调例程,每当创建新进程或删除现有进程时,该例程就会执行该例程。 |
PsSetCreateThreadNotifyRoutine | 注册一个最高级别驱动程序的回调例程,每当创建新线程或删除现有线程时,该例程就会执行该例程。 |
PsSetLoadImageNotifyRoutine | 为最高级别的系统分析驱动程序注册回调例程。 每当加载要执行的新映像时,随后就会执行回调例程。 |
内存分配和缓冲区管理
本部分介绍内核模式驱动程序调用以分配内存和管理 I/O 缓冲区的 Windows 内核例程和宏。
Windows 内存管理器提供内核模式驱动程序用于分配和管理内存的一组例程。 这些例程的名称以前缀 Mm 开头。
本部分包含 MmXxx 例程和内存管理宏的参考页。 这些参考页按字母顺序列出。
有关这些例程和宏功能的概述,请参阅内存分配和缓冲区管理。 有关内核模式驱动程序的内存管理支持的简介,请参阅 Windows 驱动程序的内存管理。
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
- MmAddPhysicalMemory
- MmAddPhysicalMemoryEx
- MmAddVerifierThunks
- MmCreateMirror
- MmGetMdlBaseVa
- MmGetPhysicalMemoryRanges
- MmGetProcedureAddress
- MmGetVirtualForPhysical
- MmIsVerifierEnabled
- MmIsIoSpaceActive
- MmMapUserAddressesToPage
- MmMapVideoDisplay
- MmMapVideoDisplayEx
- MmMapViewInSessionSpace
- MmMapViewInSystemSpace
- MmMarkPhysicalMemoryAsBad
- MmMarkPhysicalMemoryAsGood
- MmProbeAndLockProcessPages
- MmRemovePhysicalMemory
- MmRemovePhysicalMemoryEx
- MmRotatePhysicalView
- MmUnmapVideoDisplay
- MmUnmapViewInSessionSpace
- MmUnmapViewInSystemSpace
有关内存分配和缓冲区管理的详细信息,请参阅 Windows 驱动程序的内存管理。
缓冲区管理
短期缓冲区管理例程由内核模式驱动程序调用,以分配和释放临时缓冲区。
函数 | 说明 |
---|---|
ExAllocatePoolWithTag | 从分页或非分页系统空间分配 (缓存对齐) 池内存。 调用方提供的标记将放入发生的任何内存故障转储中。 |
ExAllocatePoolWithQuotaTag | 分配池内存,对 I/O 操作的原始请求者收取配额。 调用方提供的标记将放入发生的任何内存故障转储中。 只有最高级别的驱动程序才能调用此例程。 |
ExFreePool | 将内存释放到分页或非分页的系统空间。 |
ExFreePoolWithTag | 释放具有指定池标记的内存。 |
ExInitializeNPagedLookasideList | 初始化非分页内存的旁观列表。 成功初始化列表后,可以从旁视列表分配固定大小的块并将其释放到该列表。 |
ExAllocateFromNPagedLookasideList | 从非分页内存中的指定查找列表中删除第一个条目。 如果旁观列表为空,则分配非分页池中的条目。 |
ExFreeToNPagedLookasideList | 返回非分页内存中指定旁视列表的条目。 如果列表已达到其最大大小,则返回非分页池的条目。 |
ExDeleteNPagedLookasideList | 删除非分页的查看列表。 |
ExInitializePagedLookasideList | 初始化分页内存的旁观列表。 成功初始化列表后,可以从查看列表分配和释放固定大小的块。 |
ExAllocateFromPagedLookasideList | 从分页内存中的指定查找列表中删除第一个条目。 如果旁观列表为空,则分配分页池中的条目。 |
ExFreeToPagedLookasideList | 返回分页内存中指定查看列表的条目。 如果列表已达到其最大大小,则返回分页池的条目。 |
ExDeletePagedLookasideList | 删除分页的旁观列表。 |
MmQuerySystemSize | 返回当前平台上可用内存量的估计 (小型、中型或大型) 。 |
MmIsThisAnNtAsSystem | 如果计算机作为服务器运行,则返回 TRUE。 如果此例程返回 TRUE,则调用方可能需要更多资源来处理 I/O 请求,并且计算机是服务器,因此它可能会有更多的资源可用。 |
长期内部驱动程序缓冲区
长期缓冲区管理例程由内核模式驱动程序调用,以分配长期驱动程序内部缓冲区。
函数 | 说明 |
---|---|
MmAllocateContiguousMemory | 在非分页池中分配一系列物理连续缓存对齐的内存。 |
MmFreeContiguousMemory | 在驱动程序卸载时释放一系列物理连续内存。 |
MmAllocateNonCachedMemory | 在非分页系统空间 (池) 分配非缓存和缓存对齐内存的虚拟地址范围。 |
MmFreeNonCachedMemory | 在驱动程序卸载时,释放非分页系统空间中非缓存内存的虚拟地址范围。 |
MmAllocateMappingAddress | 保留以后可以使用 MmMapLockedPagesWithReservedMapping 映射的虚拟地址空间范围。 |
MmFreeMappingAddress | 释放由 MmAllocateMappingAddress 保留的保留内存地址。 |
AllocateCommonBuffer | 分配和映射一个逻辑上连续的内存区域,该区域可从处理器和设备同时访问,给定对适配器对象的访问权限、要分配的请求的内存区域长度,以及访问返回已分配区域的起始逻辑地址和虚拟地址的变量。 如果已分配请求的长度,则返回 TRUE。 可用于连续总线主 DMA 或使用系统 DMA 控制器的自动初始化模式的系统 DMA。 |
FreeCommonBuffer | 释放分配的通用缓冲区并取消映射,授予对适配器对象的访问权限、长度,以及驱动程序卸载时要释放的区域的起始逻辑和虚拟地址。 参数必须与在调用 AllocateCommonBuffer 时传递的参数匹配。 |
缓冲数据和缓冲区初始化
缓冲数据和缓冲区初始化例程由内核模式驱动程序调用,以管理缓冲数据或初始化驱动程序分配的缓冲区。
函数 | 说明 |
---|---|
RtlCompareMemory | 比较数据、给定指向调用方提供的缓冲区的指针和用于比较的字节长度。 返回相等的字节数。 |
RtlCopyMemory | 在给定指向两个缓冲区的指针以及要复制的长度(以字节为单位)的情况下,将数据从一个调用方提供的缓冲区复制到另一个缓冲区。 |
RtlMoveMemory | 在给定指向两个范围的基数和要复制的长度(以字节为单位)的指针的情况下,将数据从一个调用方提供的内存范围复制到另一个调用方提供的内存范围。 |
RtlFillMemory | 在给定指向缓冲区的指针和要填充的长度(以字节为单位)的情况下,使用指定的 UCHAR 值填充调用方提供的缓冲区。 |
RtlZeroMemory | 在给定指向调用方提供的缓冲区的指针以及要填充的长度(以字节为单位)的情况下,用零填充缓冲区。 |
RtlStoreUshort | 在给定地址存储 USHORT 值,避免出现对齐错误。 |
RtlRetrieveUshort | 检索给定地址处的 USHORT 值,避免对齐错误,并将值存储在假定为对齐的给定地址处。 |
RtlStoreUlong | 在给定地址存储 ULONG 值,避免对齐错误。 |
RtlRetrieveUlong | 检索给定地址处的 ULONG 值,避免对齐错误,并将值存储在假定为对齐的给定地址处。 |
地址映射和 MDL
地址映射和 MDL 管理例程由内核模式驱动程序调用,以管理地址映射和内存描述符列表 (MDL) 。
函数 | 说明 |
---|---|
IoAllocateMdl | 分配足以映射调用方提供的起始地址和长度的 MDL;(可选)将 MDL 与给定的 IRP 相关联。 |
IoBuildPartialMdl | 从给定源 MDL 为指定的起始虚拟地址和长度(以字节为单位)生成 MDL。 将大型传输请求拆分为多个较小传输的驱动程序可以调用此例程。 |
IoFreeMdl | 释放调用方分配的给定 MDL。 |
MmAllocatePagesForMdlEx | 为 MDL 分配非分页物理内存页。 |
MmBuildMdlForNonPagedPool | 填充给定 MDL 的相应物理地址,该地址指定非分页池中的虚拟地址范围。 |
MmCreateMdl | 已过时。 分配和初始化一个 MDL,该 MDL 描述由给定虚拟地址和长度(以字节为单位)指定的缓冲区;返回指向 MDL 的指针。 |
MmGetMdlByteCount | 返回由给定 MDL 映射的缓冲区的长度(以字节为单位)。 |
MmGetMdlByteOffset | 返回给定 MDL 描述的缓冲区页内的字节偏移量。 |
MmGetMdlVirtualAddress | 返回给定 MDL 描述的缓冲区) 虚拟地址可能无效的 (;返回的地址(用作 MDL 中物理地址条目的索引)可以为使用 DMA 的驱动程序输入 MapTransfer。 |
MmGetPhysicalAddress | 返回给定有效虚拟地址的相应物理地址。 |
MmGetSystemAddressForMdlSafe | 返回一个系统空间虚拟地址,该地址映射由给定 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 | 将给定大小(以字节为单位)向上舍入到页面大小的倍数。 |
设备内存访问
内核模式驱动程序调用 device-memory-access 宏来访问其各自设备的内存映射硬件寄存器和 I/O 端口。
对于以下宏,XXX_REGISTER_XXX指示映射到系统内存地址空间的设备内存,而 XXX_PORT_XXX 指示 I/O 端口地址空间中的设备内存。
函数 | 说明 |
---|---|
EAD_PORT_UCHAR | 从给定的 I/O 端口地址读取 UCHAR 值。 |
READ_PORT_USHORT | 从给定的 I/O 端口地址读取 USHORT 值。 |
READ_PORT_ULONG | 从给定的 I/O 端口地址读取 ULONG 值。 |
READ_PORT_BUFFER_UCHAR | 将给定的 UCHAR 值计数从给定的 I/O 端口读取到给定的缓冲区中。 |
READ_PORT_BUFFER_USHORT | 将给定的 USHORT 值计数从给定的 I/O 端口读入给定的缓冲区。 |
READ_PORT_BUFFER_ULONG | 将给定 I/O 端口中的 ULONG 值计数读入给定缓冲区。 |
WRITE_PORT_UCHAR | 将给定的 UCHAR 值写入给定的 I/O 端口地址。 |
WRITE_PORT_USHORT | 将给定的 USHORT 值写入给定的 I/O 端口地址。 |
WRITE_PORT_ULONG | 将给定的 ULONG 值写入给定的 I/O 端口地址。 |
WRITE_PORT_BUFFER_UCHAR | 将给定的 UCHAR 值计数从给定缓冲区写入给定的 I/O 端口。 |
WRITE_PORT_BUFFER_USHORT | 将给定计数的 USHORT 值从给定缓冲区写入给定的 I/O 端口。 |
WRITE_PORT_BUFFER_ULONG | 将给定的 ULONG 值计数从给定缓冲区写入给定的 I/O 端口。 |
READ_REGISTER_UCHAR | 从内存空间中的给定寄存器地址读取 UCHAR 值。 |
READ_REGISTER_USHORT | 从内存空间中的给定寄存器地址读取 USHORT 值。 |
READ_REGISTER_ULONG | 从内存空间中的给定寄存器地址读取 ULONG 值。 |
READ_REGISTER_BUFFER_UCHAR | 将给定的 UCHAR 值计数从给定的寄存器地址读入给定的缓冲区。 |
READ_REGISTER_BUFFER_USHORT | 将给定寄存器地址中 USHORT 值的给定计数读入给定缓冲区。 |
READ_REGISTER_BUFFER_ULONG | 将给定的 ULONG 值计数从给定的寄存器地址读入给定的缓冲区。 |
WRITE_REGISTER_UCHAR | 将给定的 UCHAR 值写入内存空间中的给定寄存器地址。 |
WRITE_REGISTER_USHORT | 将给定的 USHORT 值写入内存空间中的给定寄存器地址。 |
WRITE_REGISTER_ULONG | 将给定的 ULONG 值写入内存空间中的给定寄存器地址。 |
WRITE_REGISTER_BUFFER_UCHAR | 将给定的 UCHAR 值计数从给定缓冲区写入给定的寄存器地址。 |
WRITE_REGISTER_BUFFER_USHORT | 将给定计数的 USHORT 值从给定缓冲区写入给定的寄存器地址。 |
WRITE_REGISTER_BUFFER_ULONG | 将给定的 ULONG 值计数从给定缓冲区写入给定的寄存器地址。 |
可分页驱动程序
内核模式驱动程序调用可分页驱动程序例程来锁定和解锁驱动程序的可分页代码或数据部分,或使整个驱动程序可分页。
函数 | 说明 |
---|---|
MmLockPagableCodeSection | 将一组标记为特殊编译器指令的驱动程序例程锁定到系统空间中。 |
MmLockPagableDataSection | 当数据不经常、可预测且在 IRQL 小于 DISPATCH_LEVEL 的情况下访问时,使用特殊编译器指令标记的数据锁定到系统空间中。 |
MmLockPagableSectionByHandle | 使用从 MmLockPagableCodeSection 或 MmLockPagableDataSection 返回的句柄将可分页节锁定到系统内存中。 |
MmUnlockPagableImageSection | 当驱动程序不再处理 IRP 或不再需要该部分的内容时,释放以前锁定在系统空间中的节。 |
MmPageEntireDriver | 允许驱动程序对其所有代码和数据进行分页,而不考虑驱动程序映像中各个部分的属性。 |
MmResetDriverPaging | 将驱动程序的可分页状态重置为组成驱动程序映像的各个部分指定的状态。 |
节和视图
内核模式驱动程序调用节和视图管理例程,以设置内存的映射部分和视图。
函数 | 说明 |
---|---|
InitializeObjectAttributes | 设置 OBJECT_ATTRIBUTES 类型的参数,以便后续调用 ZwCreateXxx 或 ZwOpenXxx 例程。 |
ZwOpenSection | 获取现有节的句柄,前提是可以允许请求的访问。 |
ZwMapViewOfSection | 将打开部分的视图映射到进程的虚拟地址空间中。 返回映射视图) (基部分的偏移量和映射的大小。 |
ZwUnmapViewOfSection | 在进程的虚拟地址空间中释放映射视图。 |
访问结构
结构访问宏由内核模式驱动程序调用,以访问结构的各个部分。
函数 | 说明 |
---|---|
ARGUMENT_PRESENT | 如果参数指针为 NULL,则返回 FALSE;否则返回 TRUE。 |
CONTAINING_RECORD | 返回结构实例的基址,给定结构类型和其中字段的地址。 |
FIELD_OFFSET | 返回已知结构类型中命名字段的字节偏移量。 |
即插即用例程
驱动程序使用这些例程来实现即插即用 (PnP) 支持。 有关在驱动程序中支持 PnP 的背景和面向任务的信息,请参阅即插即用。
以下主题按功能总结例程:
设备信息例程
函数 | 说明 |
---|---|
oGetDeviceProperty | 检索有关设备的信息,例如配置信息及其 PDO 的名称。 |
IoInvalidateDeviceRelations | 通知 PnP 管理器设备的关系已更改。 |
IoInvalidateDeviceState | 通知 PnP 管理器设备的 PnP 状态已更改。 作为响应,PnP 管理器将IRP_MN_QUERY_PNP_DEVICE_STATE发送到设备堆栈。 |
IoReportDetectedDevice | 向 PnP 管理器报告非 PnP 设备。 |
IoReportResourceForDetection | 声明旧设备的配置注册表中的硬件资源。 此例程适用于检测无法由 PnP 枚举的旧硬件的驱动程序。 |
注册表例程
函数 | 说明 |
---|---|
IoOpenDeviceInterfaceRegistryKey | 返回注册表项的句柄,用于存储有关特定设备接口的信息。 |
IoOpenDeviceRegistryKey | 返回特定设备实例的特定于设备的或特定于驱动程序的注册表项的句柄。 |
设备接口例程
函数 | 说明 |
---|---|
IoRegisterDeviceInterface | 将设备功能注册 (驱动程序将启用以供应用程序或其他系统组件使用的设备接口) 。 |
IoSetDeviceInterfaceState | 启用或禁用以前注册的设备接口。 应用程序和其他系统组件只能打开已启用的接口。 |
IoOpenDeviceInterfaceRegistryKey | 返回注册表项的句柄,用于存储有关特定设备接口的信息。 |
IoGetDeviceInterfaces | 返回特定设备接口类 (的设备接口列表,例如系统上支持 HID 接口) 的所有设备。 |
IoGetDeviceInterfaceAlias | 如果别名存在,则返回指定接口类的别名设备接口。 如果设备接口由同一基础设备公开,并且具有相同的接口引用字符串,但属于不同的接口类,则设备接口被视为别名。 |
PnP 通知例程
函数 | 说明 |
---|---|
IoRegisterPlugPlayNotification | 注册在发生指定的 PnP 事件时要调用的驱动程序回调例程。 |
IoReportTargetDeviceChange | 通知 PnP 管理器设备上发生了自定义事件。 PnP 管理器将事件的通知发送给为其注册的驱动程序。 请勿使用此例程来报告系统 PnP 事件,例如GUID_TARGET_DEVICE_REMOVE_COMPLETE。 |
IoReportTargetDeviceChangeAsynchronous | 通知 PnP 管理器设备上发生了自定义事件。 当 PnP 管理器向为其注册的驱动程序发送事件的通知时,立即返回 ,并且不会等待。 请勿使用此例程来报告系统 PnP 事件,例如GUID_TARGET_DEVICE_REMOVE_COMPLETE。 |
IoUnregisterPlugPlayNotification | 删除 PnP 事件的驱动程序回调例程的注册。 |
删除锁例程
函数 | 说明 |
---|---|
IoInitializeRemoveLock | 初始化设备对象的删除锁。 驱动程序可以使用锁跟踪设备上未完成的 I/O,并确定驱动程序何时可以删除其设备对象以响应IRP_MN_REMOVE_DEVICE请求。 |
IoAcquireRemoveLock | 递增删除锁的计数,指示不应从设备堆栈中分离或删除关联的设备对象。 |
IoReleaseRemoveLock | 释放通过上次调用 IoAcquireRemoveLock 获取的移除锁。 |
IoReleaseRemoveLockAndWait | 释放通过上次调用 IoAcquireRemoveLock 获取的移除锁,并等待锁的所有获取都释放。 驱动程序通常在其调度代码中为IRP_MN_REMOVE_DEVICE请求调用此例程。 |
其他 PnP 例程
函数 | 说明 |
---|---|
IoAdjustPagingPathCount | 以原子操作的形式递增或递减调用方提供的页面文件计数器。 此例程可用于调整其他计数器,例如休眠文件的计数器或故障转储文件。 |
IoRequestDeviceEject | 通知 PnP 管理器设备弹出按钮已按下。 请注意,此例程报告设备弹出请求,而不是媒体弹出请求。 |
Windows Management Instrumentation (WMI) 例程
本部分总结了驱动程序可用于与 Windows Management Instrumentation (WMI) 进行交互的内核模式支持例程。
支持例程的类别包括驱动程序可以调用的例程:
处理驱动程序接收的 IRP (WMI IRP 处理例程)
函数 | 说明 |
---|---|
WmiCompleteRequest | 如果驱动程序使用 WmiSystemControl 将 WMI IRP 调度到回调例程,则回调例程可以使用 WmiCompleteRequest 来完成 IRP。 |
WmiSystemControl | 将 WMI IRP 调度到驱动程序提供的回调例程。 |
WmiFireEvent | WmiFireEvent 例程将事件发送到 WMI,以便传递给已请求事件通知的数据使用者。 |
WmiQueryTraceInformation | WmiQueryTraceInformation 例程返回有关 WMI 事件跟踪的信息。 |
WmiSystemControl | WmiSystemControl 例程是使用 WMI 库支持例程处理 WMI IRP 的驱动程序的调度例程。 |
WmiTraceMessage | WmiTraceMessage 例程将消息添加到 WPP 软件跟踪会话的输出日志。 |
WmiTraceMessageVa | WmiTraceMessageVa 例程将消息添加到 WPP 软件跟踪会话的输出日志。 |
驱动程序可以在处理 WMI IRP 时使用这些例程
函数 | 说明 |
---|---|
WmiCompleteRequest | 如果驱动程序使用 WmiSystemControl 将 WMI IRP 调度到回调例程,则回调例程可以使用 WmiCompleteRequest 来完成 IRP。 |
WmiSystemControl | 将 WMI IRP 调度到驱动程序提供的回调例程。 |
驱动程序使用这些例程发送 WMI IRP
函数 | 说明 |
---|---|
IoWMIAllocateInstanceIds | 为给定的 WMI 类 GUID 分配未使用的 WMI 实例 ID。 |
IoWMIDeviceObjectToInstanceName | 给定设备对象,确定相应驱动程序支持的 WMI 类实例名称。 调用方可以使用它来确定特定驱动程序支持的实例名称。 |
IoWMIExecuteMethod | 执行指定的 WMI 类方法。 |
IoWMIHandleToInstanceName | 给定文件句柄,确定相应驱动程序支持的 WMI 类实例名称。 调用方可以使用它来确定特定驱动程序支持的实例名称。 |
IoWMIOpenBlock | 打开 WMI 数据块。 调用方使用此来提交 WMI I/O 请求。 |
IoWMIQueryAllData | 提取指定 WMI 类 GUID 的每个实例的属性值。 |
IoWMIQueryAllDataMultiple | 提取指定 WMI 类 GUID 集的每个实例的属性值。 |
IoWMIQuerySingleInstance | 提取指定 WMI 类 GUID 的特定实例的属性值。 |
IoWMIQuerySingleInstanceMultiple | 提取一组特定 WMI 类实例的属性值。 |
IoWMISetNotificationCallback | 设置 WMI 事件的通知回调。 |
IoWMISetSingleInstance | 设置特定 WMI 类实例的属性值。 |
IoWMISetSingleItem | 设置特定 WMI 类实例的指定属性。 |
本部分介绍内核模式 WDM 驱动程序包含的必需和可选例程(如果驱动程序通过调用 WmiSystemControl 处理 WMI 次要 IRP)。 有关详细信息,请参阅 调用 WmiSystemControl 以处理 WMI IRP。
Microsoft Windows 驱动程序工具包 (WDK) 文档中使用的 DpWmiXxx 名称是占位符。 驱动程序的 DpWmiXxx 例程可以具有驱动程序编写器选择的任何名称。
ZwXxx/NtXxx 例程
ZwXxx 例程提供一组与执行人员的某些系统服务并行的系统入口点。 从内核模式代码调用 ZwXxx 例程会导致调用相应的系统服务。 不支持从用户模式调用 ZwXxx 例程;相反,绕过 Microsoft Win32 子系统的本机应用程序 (应用程序) 应调用与 ZwXxx 例程等效的 NtXxx。
有关 NtXxx 例程的列表,请参阅 NtXxx 例程。
对于从内核模式驱动程序调用 ZwXxx 例程,系统不会检查调用方的访问权限,也不会将以前的处理器模式设置为 UserMode。 在调用 ZwXxx 例程之前,内核模式驱动程序必须检查所有用户提供的参数才能有效。
有关 NtXxx 和 ZwXxx 例程之间的关系的详细信息,请参阅 使用本机系统服务例程的 Nt 和 Zw 版本。 有关每个主要功能类别中的 ZwXxx 例程的列表,请参阅 Kernel-Mode 支持例程摘要。
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
例程所返回的值 | Replacement |
---|---|
ZwCancelTimer | 请改用 KeCancelTimer。 |
ZwCreateTimer | 请改用 KeInitializeTimer 或 KeInitializeTimerEx。 |
ZwOpenTimer | |
ZwSetTimer | 请改用 KeSetTimer。 |
NtRenameTransactionManager | 已过时。 |
NtRenameTransactionManager 和 TmRenameTransactionManager 是同一例程的两个版本。 内核模式驱动程序不应调用 NtRenameTransactionManager。 他们应改为调用 TmRenameTransactionManager。
函数 | 说明 |
---|---|
NtRenameTransactionManager | NtRenameTransactionManager 例程更改存储在日志文件名称中包含的 CLFS 日志文件流中的事务管理器对象的标识。 |
NtSetInformationTransactionManager 不要从内核模式代码调用此例程。 | |
ZwAllocateLocallyUniqueId | ZwAllocateLocallyUniqueId 例程 (LUID) 分配本地唯一标识符。 |
ZwAllocateVirtualMemory | ZwAllocateVirtualMemory 例程保留和/或提交指定进程的用户模式虚拟地址空间中的页面区域。 |
ZwClose | ZwClose 例程关闭对象句柄。 |
ZwCreateDirectoryObject | ZwCreateDirectoryObject 例程创建或打开 object-directory 对象。 |
ZwCreateEvent | ZwCreateEvent 例程创建事件对象,将事件的初始状态设置为指定值,并打开具有指定所需访问权限的 对象的句柄。 |
ZwCreateFile | ZwCreateFile 例程创建新文件或打开现有文件。 |
ZwCreateKey | ZwCreateKey 例程创建新的注册表项或打开现有注册表项。 |
ZwCreateKeyTransacted | ZwCreateKeyTransacted 例程创建新的注册表项或打开现有注册表项,并将该注册表项与事务关联。 |
ZwCreateSection | ZwCreateSection 例程创建一个 section 对象。 |
ZwDeleteFile | ZwDeleteFile 例程删除指定的文件。 |
ZwDeleteKey | ZwDeleteKey 例程从注册表中删除打开的项。 |
ZwDeleteValueKey | ZwDeleteValueKey 例程从注册表中的打开项中删除与名称匹配的值项。 如果不存在此类条目,则返回错误。 |
ZwDeviceIoControlFile | ZwDeviceIoControlFile 例程将控制代码直接发送到指定的设备驱动程序,导致相应的驱动程序执行指定的操作。 |
ZwDuplicateToken | ZwDuplicateToken 函数创建与现有令牌重复的新访问令牌的句柄。 此函数可以创建主令牌或模拟令牌。 |
ZwEnumerateKey | ZwEnumerateKey 例程返回有关打开的注册表项的子项的信息。 |
ZwEnumerateValueKey | ZwEnumerateValueKey 例程获取有关打开键的值条目的信息。 |
ZwFlushBuffersFile | 文件系统筛选器驱动程序调用 ZwFlushBuffersFile 例程,以将指定文件的刷新请求发送到文件系统。 |
ZwFlushBuffersFileEx | 文件系统筛选器驱动程序调用 ZwFlushBuffersFileEx 例程,以向文件系统发送给定文件的刷新请求。 可以设置可选的刷新操作标志来控制文件数据写入存储的方式。 |
ZwFlushKey | ZwFlushKey 例程强制将注册表项提交到磁盘。 |
ZwFlushVirtualMemory | ZwFlushVirtualMemory 例程在指定进程的虚拟地址空间中刷新一系列虚拟地址,如果已修改,这些虚拟地址映射到数据文件,则回退到数据文件。 |
ZwFreeVirtualMemory | ZwFreeVirtualMemory 例程发布和/或取消提交指定进程的虚拟地址空间中的页面区域。 |
ZwFsControlFile | ZwFsControlFile 例程将控制代码直接发送到指定的文件系统或文件系统筛选器驱动程序,导致相应的驱动程序执行指定的操作。 |
ZwLoadDriver | ZwLoadDriver 例程将驱动程序加载到系统中。 |
ZwLockFile | ZwLockFile 例程请求指定文件的字节范围锁。 |
ZwMakeTemporaryObject | ZwMakeTemporaryObject 例程更改对象的属性,使其成为临时对象。 |
ZwMapViewOfSection | ZwMapViewOfSection 例程将节的视图映射到主题进程的虚拟地址空间中。 |
ZwNotifyChangeKey | ZwNotifyChangeKey 例程允许驱动程序在注册表项更改时请求通知。 |
ZwOpenEvent | ZwOpenEvent 例程打开具有指定所需访问权限的现有命名事件对象的句柄。 |
ZwOpenFile | ZwOpenFile 例程将打开现有文件、目录、设备或卷。 |
ZwOpenKey | ZwOpenKey 例程会打开现有的注册表项。 |
ZwOpenKeyEx | ZwOpenKeyEx 例程会打开现有的注册表项。 |
ZwOpenKeyTransacted | ZwOpenKeyTransacted 例程会打开现有的注册表项,并将该密钥与事务关联。 |
ZwOpenKeyTransactedEx | ZwOpenKeyTransactedEx 例程会打开现有的注册表项,并将该密钥与事务关联。 |
ZwOpenProcess | ZwOpenProcess 例程打开进程对象的句柄,并设置对此对象的访问权限。 |
ZwOpenProcessTokenEx | ZwOpenProcessTokenEx 例程打开与进程关联的访问令牌。 |
ZwOpenSection | ZwOpenSection 例程打开现有节对象的句柄。 |
ZwOpenSymbolicLinkObject | ZwOpenSymbolicLinkObject 例程会打开现有的符号链接。 |
ZwOpenThreadTokenEx | ZwOpenThreadTokenEx 例程将打开与线程关联的访问令牌。 |
ZwPowerInformation | ZwPowerInformation 例程设置或检索系统电源信息。 |
ZwQueryInformationThread | ZwQueryInformationThread 例程检索有关指定线程的信息,例如其页面优先级。 |
ZwQueryDirectoryFile | ZwQueryDirectoryFile 例程返回有关给定文件句柄指定的目录中文件的各种信息。 |
ZwQueryEaFile | ZwQueryEaFile 例程返回有关扩展属性 (EA) 文件值的信息。 |
ZwQueryFullAttributesFile | ZwQueryFullAttributesFile 例程为指定文件提供网络打开信息。 |
ZwQueryInformationFile | ZwQueryInformationFile 例程返回有关文件对象的各种信息。 |
ZwQueryInformationToken | ZwQueryInformationToken 例程检索有关访问令牌的指定类型的信息。 调用进程必须具有适当的访问权限才能获取信息。 |
ZwQueryKey | ZwQueryKey 例程提供有关注册表项的类及其子项的数量和大小的信息。 |
ZwQueryObject | ZwQueryObject 例程提供有关所提供的对象的信息。 |
ZwQueryQuotaInformationFile | ZwQueryQuotaInformationFile 例程检索与 FileHandle 参数指定的卷关联的配额条目。 |
ZwQuerySecurityObject | ZwQuerySecurityObject 例程检索对象的安全描述符的副本。 |
ZwQuerySymbolicLinkObject | ZwQuerySymbolicLinkObject 例程返回一个 Unicode 字符串,其中包含符号链接的目标。 |
ZwQueryValueKey | ZwQueryValueKey 例程返回注册表项的值条目。 |
ZwQueryVirtualMemory | ZwQueryVirtualMemory 例程确定主题进程虚拟地址空间中页面区域的状态、保护和类型。 |
ZwQueryVolumeInformationFile | ZwQueryVolumeInformationFile 例程检索与给定文件、目录、存储设备或卷关联的卷的相关信息。 |
ZwReadFile | ZwReadFile 例程从打开的文件读取数据。 |
ZwSetEaFile | ZwSetEaFile 例程设置扩展属性 (EA) 文件的值。 |
ZwSetEvent | ZwSetEvent 例程将事件对象设置为“已信号”状态,并尝试满足尽可能多的等待。 |
ZwSetInformationFile | ZwSetInformationFile 例程更改有关文件对象的各种信息。 |
ZwSetInformationThread | ZwSetInformationThread 例程设置线程的优先级。 |
ZwSetInformationToken | ZwSetInformationToken 例程修改指定令牌中的信息。 调用进程必须具有适当的访问权限才能设置信息。 |
ZwSetInformationVirtualMemory | ZwSetInformationVirtualMemory 例程对进程的用户地址空间中的指定地址范围列表执行操作。 |
ZwSetQuotaInformationFile | ZwSetQuotaInformationFile 例程更改与 FileHandle 参数关联的卷的配额条目。 指定缓冲区中的所有配额条目都应用于卷。 |
ZwSetSecurityObject | ZwSetSecurityObject 例程设置对象的安全状态。 |
ZwSetValueKey | ZwSetValueKey 例程创建或替换注册表项的值条目。 |
ZwSetVolumeInformationFile | ZwSetVolumeInformationFile 例程修改与给定文件、目录、存储设备或卷关联的卷的相关信息。 |
ZwTerminateProcess | ZwTerminateProcess 例程终止进程及其所有线程。 |
ZwUnloadDriver | ZwUnloadDriver 例程从系统卸载驱动程序。 请谨慎使用此例程。 (请参阅以下“备注”部分。) |
ZwUnlockFile | ZwUnlockFile 例程解锁文件中的字节范围锁。 |
ZwUnmapViewOfSection | ZwUnmapViewOfSection 例程从主题进程的虚拟地址空间取消映射节的视图。 |
ZwWaitForSingleObject | ZwWaitForSingleObject 例程将等待指定的对象达到信号状态。 还可以指定可选的超时。 |
ZwWriteFile | ZwWriteFile 例程将数据写入打开的文件。 |
辅助内核模式库例程和结构
辅助 Kernel-Mode 库使驱动程序能够访问内核模式子系统中不可用的某些系统功能。
AuxKlibInitialize 例程初始化辅助 Kernel-Mode 库。 使用此库的驱动程序必须在调用库的任何其他例程之前调用 AuxKlibInitialize。
- AuxKlibEnumerateSystemFirmwareTables
- AuxKlibGetBugCheckData
- AuxKlibGetImageExportDirectory
- AuxKlibGetSystemFirmwareTable
- AuxKlibInitialize
- AuxKlibQueryModuleInformation
- AUX_MODULE_BASIC_INFO
- AUX_MODULE_EXTENDED_INFO
- KBUGCHECK_DATA
处理器组兼容性库
支持使用处理器组的内核模式驱动程序。 处理器组 (ProcGrp) 兼容性库启用内核模式驱动程序,该驱动程序编写为使用在早期版本的 Windows 上运行的处理器组,后者不支持处理器组。 当此驱动程序运行时,它可以利用多个处理器组(如果硬件平台支持它们)。 当同一驱动程序在早期版本的 Windows 上运行时,它将限制为单个处理器组,而不考虑硬件平台的功能。 若要使用 ProcGrp 库,驱动程序必须调用库初始化例程。 此外,必须在 WDK 中为 Windows 7 环境编译驱动程序,并且必须与 Procgrp.lib 链接。
ProcGrp 库旨在满足调用以下 KeXxx 例程的驱动程序的兼容性要求,但还必须在未实现这些例程的 Windows 版本上运行:
- KeGetCurrentProcessorNumberEx
- KeGetProcessorIndexFromNumber
- KeGetProcessorNumberFromIndex
- KeQueryActiveGroupCount
- KeQueryActiveProcessorCountEx
- KeQueryGroupAffinity
- KeQueryMaximumProcessorCount
- KeQueryMaximumProcessorCountEx
- KeQueryMaximumGroupCount
- KeSetSystemAffinityThreadEx
- KeSetSystemGroupAffinityThread
- KeRevertToUserAffinityThreadEx
- KeRevertToUserGroupAffinityThread
- KeSetTargetProcessorDpcEx
ProcGrp 库为上述列表中的 KeXxx 例程实现包装器函数。 如果库在 Windows 7 或 Windows Server 2008 R2 上运行,则包装器函数只需调用相应的 KeXxx 例程。 包装函数的名称与这些 KeXxx 例程相同,其行为与它们替换的 KeXxx 例程的行为相同。
早期版本的 Windows 不支持处理器组,并且不实现上述列表中的 KeXxx 例程。 如果 ProcGrp 库链接到在这些早期版本的 Windows 上运行的驱动程序,则库初始化函数 WdmlibProcgrpInitialize 会检测操作系统不支持处理器组。 为了处理这种情况,每个包装器函数都包含相应 KeXxx 例程的简化实现。 此实现仅支持一个处理器组,组号为 0。 例如,KeQueryMaximumGroupCount 例程的包装函数始终返回一个计数。 再举一例,KeGetCurrentProcessorNumberEx 例程的包装函数通过调用 KeGetCurrentProcessorNumber 例程来模拟此例程。 KeGetCurrentProcessorNumber 类似于 KeGetCurrentProcessorNumberEx,但缺少对处理器组的支持,在这种情况下,处理器组的效果与仅支持一个处理器组的效果相同。
有关 Windows 7 中处理器组支持的详细信息,请参阅 WHDC 网站上的支持 具有 64 个以上处理器的支持系统白皮书 。
ProcGrp 库包含在 WDK 的 Windows 7 版本中。 库函数在 Procgrp.h 头文件中声明,并在 Procgrp.lib 库文件中实现。
除了 KeXxx 包装器函数之外,ProcGrp 库还实现以下函数来初始化库:
- WdmlibProcgrpInitialize
DMA 库例程
驱动程序使用本节中所述的例程执行直接内存访问 (DMA) 操作。 例程通过指针访问,不能直接按名称调用。
执行 DMA 操作的驱动程序使用 IoGetDmaAdapter 获取指向设备的DMA_ADAPTER结构的指针。 结构的 DmaOperations 成员指向DMA_OPERATIONS结构,该结构是指向该设备的物理设备对象的 DMA 例程的指针表。
函数 | 说明 |
---|---|
IoGetDmaAdapter | 返回指向适配器对象的指针,该对象表示驱动程序的设备连接到的 DMA 通道或驱动程序的总线-主适配器。 还返回驱动程序可以为每个 DMA 传输指定的最大映射寄存器数。 |
MmGetMdlVirtualAddress | 返回给定 MDL 描述的缓冲区的基虚拟地址。 可将用作 MDL 中物理地址项的索引的返回地址输入到 MapTransfer 中。 |
MmGetSystemAddressForMdlSafe | 返回 MDL 描述的内存区域基的非分页系统空间虚拟地址。 它将 MDL 描述的物理页映射到系统空间(如果尚未映射到系统空间)。 |
ADDRESS_AND_SIZE_TO_SPAN_PAGES | 返回由虚拟地址定义的虚拟范围跨越的页数,以及以字节为单位的长度。 驱动程序可以使用此宏来确定传输请求是否必须拆分为部分传输。 |
AllocateAdapterChannel | 保留对设备的 DMA 通道和映射寄存器的独占访问权限。 当通道和寄存器可用时,此例程调用驱动程序提供的 AdapterControl 例程,通过系统 DMA 控制器或总线主适配器执行 I/O 操作。 |
AllocateCommonBuffer | 分配和映射可从处理器和设备同时访问的逻辑连续内存区域。 如果分配了请求的长度,则此例程返回 TRUE。 |
BuildMdlFromScatterGatherList | 生成对应于散点/收集列表的 MDL。 |
BuildScatterGatherList | 为设备准备分散/收集 DMA 的系统,并调用驱动程序提供的例程来执行 I/O 操作。 此函数提供与 GetScatterGatherList 相同的功能,只不过它使用驱动程序提供的缓冲区来保存散点/收集列表。 |
CalculateScatterGatherList | 计算保存内存缓冲区的散点/收集列表所需的缓冲区大小。 |
FlushAdapterBuffers | 强制将总线主适配器或系统 DMA 控制器的内部缓冲区中剩余的任何数据写入内存或设备。 |
FreeAdapterChannel | 释放表示系统 DMA 通道的适配器对象,并选择性地释放任何分配的映射寄存器。 |
FreeCommonBuffer | 释放和取消映射以前分配的通用缓冲区。 参数必须与之前对 AllocateCommonBuffer 的调用中传递的参数匹配。 |
FreeMapRegisters | 释放一组从调用 AllocateAdapterChannel 保存的映射寄存器。 驱动程序在对 MapTransfer 的一个或多个调用中使用寄存器后调用此例程,通过调用 FlushAdapterBuffers 刷新缓存,并完成总线-主 DMA 传输。 |
GetDmaAlignment | 返回 DMA 控制器或设备的缓冲区对齐要求。 |
GetScatterGatherList | 为设备准备分散/收集 DMA 的系统,并调用驱动程序提供的例程来执行 I/O 操作。 对于支持散点/收集 DMA 的设备,此例程结合了 AllocateAdapterChannel 和 MapTransfer 的功能。 |
KeFlushIoBuffers | 将 MDL 描述的内存区域从所有处理器的缓存刷新到内存中。 |
MapTransfer | 为以前由 AllocateAdapterChannel 分配的适配器对象设置映射寄存器,以映射来自锁定缓冲区的传输。 返回映射区域的逻辑地址,对于支持散点/收集的总线主设备,返回映射的字节数。 |
PutDmaAdapter | 释放以前由 IoGetDmaAdapter 分配的适配器对象。 |
PutScatterGatherList | 释放之前由 GetScatterGatherList 分配的映射寄存器和散点/收集列表。 |
ReadDmaCounter | 返回当前系统 DMA 操作 (自动初始化模式) 期间尚未传输的字节数。 |
PIO
函数 | 说明 |
---|---|
MmProbeAndLockPages | 探测 MDL 中指定的页,以便进行特定类型的访问,使页面驻留,并将其锁定在内存中;返回使用相应物理地址更新的 MDL。 |
MmGetSystemAddressForMdlSafe | 返回一个系统空间虚拟地址,该地址映射设备必须使用 PIO 的驱动程序的给定 MDL 描述的物理页。 如果不存在虚拟地址,则分配一个。 |
KeFlushIoBuffers | 将所有处理器缓存中给定 MDL 描述的内存区域刷新到内存中。 |
MmUnlockPages | 解锁 MDL 中指定的以前探测和锁定的页。 |
MmMapIoSpace | 将物理地址范围映射到非分页系统空间中的缓存或非缓存虚拟地址范围。 |
MmUnmapIoSpace | 从物理地址范围取消映射虚拟地址范围。 |
中断
函数 | 说明 |
---|---|
IoConnectInterrupt | 注册驱动程序的中断处理例程。 驱动程序应改用 IoConnectInterruptEx。 |
IoDisconnectInterrupt | 取消注册 IoConnectInterrupt 注册的中断处理例程。 |
IoConnectInterruptEx | 注册驱动程序的中断处理例程。 驱动程序可以为基于行的中断注册 InterruptService 例程,也可以注册用于消息信号中断的 InterruptMessageService 例程。 |
IoDisconnectInterruptEx | 取消注册 IoConnectInterruptEx 注册的中断处理例程。 |
IoInitializeDpcRequest | 将驱动程序提供的 DpcForIsr 例程与给定的设备对象相关联,以便 DpcForIsr 例程可以完成中断驱动的 I/O 操作。 |
KeSynchronizeExecution | 在给定指向中断对象的指针的情况下,将驱动程序提供的 SynchCritSection 例程的执行与与一组中断对象关联的 ISR 的执行同步。 |
KeAcquireInterruptSpinLock | 获取将访问与中断的 ISR 同步的旋转锁。 |
KeReleaseInterruptSpinLock | 释放将访问与中断的 ISR 同步的旋转锁。 |
KeRegisterNmiCallback | 注册每当发生不可屏蔽的中断 (NMI) 时将调用的例程。 |
KeDeregisterNmiCallback | 取消注册由 KeRegisterNmiCallback 注册的例程。 |
驱动程序管理的队列
函数 | 说明 |
---|---|
KeInitializeSpinLock | 初始化 KSPIN_LOCK 类型的变量。 初始化的旋转锁是 ExInterlockedXxxList 例程的必需参数。 |
InitializeListHead | 为驱动程序的内部队列设置队列标头,给定指向驱动程序为队列标头和队列提供的存储的指针。 初始化的队列标头是 ExInterlockedInsert/RemoveXxxList 例程的必需参数。 |
ExInterlockedInsertTailList | 在双重链接列表的尾部插入一个条目,使用旋转锁确保对列表的多处理器安全访问和列表链接的原子修改。 |
ExInterlockedInsertHeadList | 使用旋转锁在双链接列表的头部插入一个条目,以确保对列表进行多处理器安全访问,并对该列表中的链接进行原子修改。 |
ExInterlockedRemoveHeadList | 使用自旋锁从双重链接列表的头部删除条目,以确保对列表进行多处理器安全访问,并自动修改列表中的链接。 |
ExInterlockedPopEntryList | 使用自旋锁确保对列表进行多处理器安全访问列表,从单独链接列表的头部删除条目。 |
ExInterlockedPushEntryList | 在单独链接列表的头部插入一个条目作为原子操作,使用自旋锁确保对列表的多处理器安全访问。 |
IsListEmpty | 如果队列为空,则返回 TRUE。 (这种类型的双重链接列表不受旋转锁的保护,除非调用方使用调用方为其提供 storage 的初始化旋转锁显式管理到排队条目的同步。) |
InsertTailList | 在列表末尾对条目进行排队。 |
InsertHeadList | 将条目排入列表的开头。 |
RemoveHeadList | 取消列表标题处的条目的排队。 |
RemoveTailList | 将列表末尾的条目取消排队。 |
RemoveEntryList | 返回给定条目是否在给定列表中,如果位于给定列表中,则取消该条目的排队。 |
PushEntryList | 将条目插入队列。 (这种类型的单向链接列表不受旋转锁的保护,除非调用方使用调用方为其提供 storage 的初始化旋转锁显式管理对排队条目的同步。) |
PopEntryList | 从队列中删除条目。 |
ExInterlockedPopEntrySList | 从使用 ExInitializeSListHead 设置的序列单一链接列表的标头中删除条目。 |
ExInterlockedPushEntrySList | 在使用 ExInitializeSListHead 设置的序列单一链接列表的标头处排队。 |
ExQueryDepthSList | 返回序列单一链接列表中当前排队的条目数。 |
ExInitializeNPagedLookasideList | 在非分页池中设置受系统提供的旋转锁保护的旁观列表,驱动程序可以从该池中分配和释放固定大小的块。 |
KeInitializeDeviceQueue | 将设备队列对象初始化为不忙状态,并设置关联的旋转锁,以便对设备队列条目进行多处理器安全访问。 |
KeInsertDeviceQueue | 获取设备队列旋转锁,如果设备队列不为空,则对设备驱动程序的条目进行排队;否则,在设备队列的末尾插入条目。 |
KeInsertByKeyDeviceQueue | 获取设备队列旋转锁,如果设备队列不为空,则对设备驱动程序的条目进行排队;否则,根据给定的排序键值将条目插入队列中。 |
KeRemoveDeviceQueue | 从给定设备队列的头中删除条目。 |
KeRemoveByKeyDeviceQueue | 从给定设备队列中删除根据指定的排序键值选择的条目。 |
KeRemoveEntryDeviceQueue | 确定给定条目是否在给定设备队列中,如果是,则取消该条目排队。 |
驱动程序系统进程和线程
函数 | 说明 |
---|---|
PsCreateSystemThread | 创建与给定进程对象或默认系统进程关联的内核模式线程。 返回线程的句柄。 |
PsTerminateSystemThread | 终止当前线程并满足当前线程对象的尽可能多的等待。 |
PsGetCurrentThread | 返回当前线程的句柄。 |
KeGetCurrentThread | 返回指向表示当前线程的不透明线程对象的指针。 |
KeQueryPriorityThread | 返回给定线程的当前优先级。 |
KeSetBasePriorityThread | 为驱动程序创建的线程设置相对于系统进程的运行时优先级。 |
KeSetPriorityThread | 使用实时优先级属性为驱动程序创建的线程设置运行时优先级。 |
KeDelayExecutionThread | 在给定的间隔内,将当前线程置于可警报或不可更改的等待状态。 |
IoQueueWorkItem | 对初始化的工作队列项进行排队,以便在系统工作线程获得控制权时调用驱动程序提供的例程。 |
ZwSetInformationThread | 设置调用方具有句柄的给定线程的优先级。 |
函数 | 说明 |
---|---|
PsGetCurrentProcessId | PsGetCurrentProcessId 例程标识当前线程的进程。 |
PsGetProcessCreateTimeQuadPart | PsGetProcessCreateTimeQuadPart 例程返回一个 LONGLONG 值,该值表示创建进程的时间。 |
PsGetProcessId | PsGetProcessId 例程返回与指定进程关联的进程标识符 (进程 ID) 。 |
PsQueryTotalCycleTimeProcess | PsQueryTotalCycleTimeProcess 例程返回指定进程的累积周期时间。 |
PCREATE_PROCESS_NOTIFY_ROUTINE | 由驱动程序实现的进程创建回调,用于跟踪系统范围内针对驱动程序内部状态创建和删除的进程。 |
PsSetCreateProcessNotifyRoutine | PsSetCreateProcessNotifyRoutine 例程将驱动程序提供的回调例程添加到或将其从中删除,每当创建或删除进程时要调用的例程列表。 |
PCREATE_PROCESS_NOTIFY_ROUTINE_EX | 驱动程序实现的回调例程,用于在创建或退出进程时通知调用方。 |
PsSetCreateProcessNotifyRoutineEx | PsSetCreateProcessNotifyRoutineEx 例程注册或删除回调例程,该例程在创建或退出进程时通知调用方。 |
PsSetCreateProcessNotifyRoutineEx2 | PsSetCreateProcessNotifyRoutineEx2 例程注册或删除一个回调例程,该例程在创建或删除进程时通知调用方。 |
函数 | 说明 |
---|---|
PLOAD_IMAGE_NOTIFY_ROUTINE | 例如,当驱动程序映像或用户映像 (DLL 或 EXE) 映射到虚拟内存时,由操作系统调用以通知驱动程序。 |
PsSetLoadImageNotifyRoutine | PsSetLoadImageNotifyRoutine 例程注册驱动程序提供的回调,每当映像加载 (或映射到内存) 时,该回调就会发出通知。 |
PsSetLoadImageNotifyRoutineEx | PsSetLoadImageNotifyRoutineEx 例程注册驱动程序提供的回调,每当映像加载 (或映射到内存) 时,该回调就会发出通知。 |
PsTerminateSystemThread | PsTerminateSystemThread 例程终止当前系统线程。 |
实现与进程和线程相关的回调函数的最佳做法
这组指导原则适用于以下回调例程:
- PCREATE_PROCESS_NOTIFY_ROUTINE
- PCREATE_PROCESS_NOTIFY_ROUTINE_EX
- PCREATE_THREAD_NOTIFY_ROUTINE
- PLOAD_IMAGE_NOTIFY_ROUTINE
使通知例程保持简短且简单。
请勿调用用户模式服务来验证进程、线程或映像。
请勿进行注册表调用。
请勿进行阻塞和/或进程间通信 (IPC) 函数调用。
不要与其他线程同步,因为这可能导致重新进入死锁。
使用系统工作线程来对工作进行排队,尤其是涉及以下任何一项的工作:
调用其他进程的慢速 API 或 API。
可能会中断核心服务中的线程的任何阻止行为。
处处考虑到适用于内核模式堆栈使用情况的最佳做法。 有关示例,请参阅如何防止驱动程序耗尽内核模式堆栈?和重要驱动程序概念和提示。
运行时库 (RTL) 例程
有关以防止缓冲区溢出错误的方式复制、连接和格式化字符串的函数的信息,请参阅下面的 安全字符串函数。 其他字符串操作函数包括以下内容:
函数 | 说明 |
---|---|
RtlInitString | 初始化缓冲区中的指定字符串。 |
RtlInitAnsiString | 初始化缓冲区中的指定 ANSI 字符串。 |
RtlInitUnicodeString | 初始化缓冲区中的指定 Unicode 字符串。 |
RtlAnsiStringToUnicodeSize | 返回保存给定缓冲 ANSI 字符串的 Unicode 版本所需的大小(以字节为单位)。 |
RtlAnsiStringToUnicodeString | 给定指向源字符串缓冲区的指针和指向目标缓冲区的调用方提供的存储地址,将缓冲的 ANSI 字符串转换为 Unicode 字符串。 (如果调用方不提供 storage,则此例程分配目标缓冲区。) 也可以使用编译器提供的字符串操作例程将 ANSI 字符串转换为 Unicode。 |
RtlFreeUnicodeString | 释放包含 Unicode 字符串的缓冲区,给定指向 RtlAnsiStringToUnicodeString 返回的缓冲区的指针。 |
RtlUnicodeStringToAnsiString | 给定指向源字符串缓冲区的指针和指向目标缓冲区的调用方提供的存储地址,将缓冲的 Unicode 字符串转换为 ANSI 字符串。 (如果调用方未提供 storage,则此例程会分配目标缓冲区。) |
RtlFreeAnsiString | 释放包含 ANSI 字符串的缓冲区,给定指向 RtlUnicodeStringToAnsiString 返回的缓冲区的指针。 |
RtlAppendUnicodeStringToString | 给定指向两个缓冲区的指针,将缓冲的 Unicode 字符串的副本与缓冲的 Unicode 字符串连接在一起。 |
RtlAppendUnicodeToString | 给定的输入字符串与缓冲的 Unicode 字符串连接,给定一个指向缓冲区的指针。 |
RtlCopyString | 将源字符串复制到目标、给定指向两个缓冲区的指针,或者将目标字符串的长度 (但目标缓冲区的长度) 设置为零(如果指向源字符串缓冲区的可选指针为 NULL)。 |
RtlCopyUnicodeString | 将源字符串复制到目标、给定指向两个缓冲区的指针,或者将目标字符串的长度 (但目标缓冲区的长度) 设置为零(如果指向源字符串缓冲区的可选指针为 NULL)。 |
RtlEqualString | 如果给定的 ANSI 字母字符串等效,则返回 TRUE。 |
RtlEqualUnicodeString | 如果给定的缓冲字符串等效,则返回 TRUE。 |
RtlCompareString | 比较两个缓冲的单字节字符串,并返回一个有符号值,指示它们是否等效或更大。 |
RtlCompareUnicodeString | 比较两个缓冲 Unicode 字符串,并返回一个有符号值,该值指示它们是否等效或更大。 |
RtlUpperString | 将缓冲字符串的副本转换为大写,并将副本存储在目标缓冲区中。 |
RtlUpcaseUnicodeString | 将缓冲的 Unicode 字符串的副本转换为大写,并将副本存储在目标缓冲区中。 |
RtlIntegerToUnicodeString | 将指定基中的无符号整数值转换为缓冲区中的一个或多个 Unicode 字符。 |
RtlUnicodeStringToInteger | RtlUnicodeStringToInteger 将整数的 Unicode 字符串表示形式转换为其等效整数。 |
以下例程保留供系统使用。 请勿在驱动程序中使用它们。
例程所返回的值 | Replacement |
---|---|
RtlAssert | 请改用 ASSERT。 |
RtlGetCallersAddress | 请改用内部_ReturnAddress。 |
RtlInterlockedAndBits | 请改用 InterlockedAnd。 |
RtlInterlockedAndBitsDiscardReturn | 请改用 InterlockedAnd。 |
RtlInterlockedClearBits | 请改用 InterlockedAnd。 |
RtlInterlockedClearBitsDiscardReturn | 请改用 InterlockedAnd。 |
RtlInterlockedSetBits | 请改用 InterlockedOr。 |
RtlInterlockedSetBitsDiscardReturn | 请改用 InterlockedOr。 |
RtlInterlockedSetClearBits | |
RtlInterlockedXorBits | 请改用 InterlockedXor |
RtlWalkFrameChain |
Unicode 和 ANSI 字符的安全字符串函数
使用本部分中的函数在内核模式驱动程序中操作 Unicode 和 ANSI 字符串。
每个函数在两个版本中可用:
支持两字节 Unicode 字符的 W 后缀版本。
支持 1 字节 ANSI 字符的 A 后缀版本。
如果使用安全字符串函数而不是 C 语言运行时库提供的字符串操作函数,则可以保护代码免受可能使代码不可信的缓冲区溢出错误的影响。 有关详细信息,请参阅 使用安全字符串函数。
函数 | 说明 |
---|---|
RtlStringCbCatW | RtlStringCbCatW 和 RtlStringCbCatA 函数连接两个字节计数的字符串。 |
RtlStringCbCatExW | RtlStringCbCatExW 和 RtlStringCbCatExA 函数连接两个字节计数的字符串。 |
RtlStringCbCatNW | RtlStringCbCatNW 和 RtlStringCbCatNA 函数连接两个字节计数字符串,同时限制追加字符串的大小。 |
RtlStringCbCatNExW | RtlStringCbCatNExW 和 RtlStringCbCatNExA 函数连接两个字节计数的字符串,同时限制追加字符串的大小。 |
RtlStringCbCopyW | RtlStringCbCopyW 和 RtlStringCbCopyA 函数将字节计数的字符串复制到缓冲区中。 |
RtlStringCbCopyExW | RtlStringCbCopyExW 和 RtlStringCbCopyExA 函数将字节计数的字符串复制到缓冲区中。 |
RtlStringCbCopyNW | RtlStringCbCopyNW 和 RtlStringCbCopyNA 函数将字节计数的字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCbCopyNExW | RtlStringCbCopyNExW 和 RtlStringCbCopyNExA 函数将字节计数字符串复制到缓冲区,同时限制复制字符串的大小。 |
RtlStringCbLengthW | RtlStringCbLengthW 和 RtlStringCbLengthA 函数确定提供的字符串的长度(以字节为单位)。 |
RtlStringCbPrintfW | RtlStringCbPrintfW 和 RtlStringCbPrintfA 函数创建字节计数的文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbPrintfExW | RtlStringCbPrintfExW 和 RtlStringCbPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbVPrintfW | RtlStringCbVPrintfW 和 RtlStringCbVPrintfA 函数创建字节计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbVPrintfExW | RtlStringCbVPrintfExW 和 RtlStringCbVPrintfExA 函数创建字节计数文本字符串,其格式基于提供的格式信息。 |
RtlStringCchCatW | RtlStringCchCatW 和 RtlStringCchCatA 函数连接两个字符计数字符串。 |
RtlStringCchCatExW | RtlStringCchCatExW 和 RtlStringCchCatExA 函数连接两个字符计数的字符串。 |
RtlStringCchCatNW | RtlStringCchCatNW 和 RtlStringCchCatNA 函数连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCatNExW | RtlStringCchCatNExW 和 RtlStringCchCatNExA 函数连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCopyW | RtlStringCchCopyW 和 RtlStringCchCopyA 函数将以 null 结尾的源字符串复制到指定长度的目标缓冲区中。 |
RtlStringCchCopyExW | RtlStringCchCopyExW 和 RtlStringCchCopyExA 函数将字符计数的字符串复制到缓冲区中。 |
RtlStringCchCopyNW | RtlStringCchCopyNW 和 RtlStringCchCopyNA 函数将字符计数字符串复制到缓冲区,同时限制复制字符串的大小。 |
RtlStringCchCopyNExW | RtlStringCchCopyNExW 和 RtlStringCchCopyNExA 函数将字符计数字符串复制到缓冲区,同时限制复制字符串的大小。 |
RtlStringCchLengthW | RtlStringCchLengthW 和 RtlStringCchLengthA 函数确定提供的字符串的长度(以字符为单位)。 |
RtlStringCchPrintfW | RtlStringCchPrintfW 和 RtlStringCchPrintfA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchPrintfExW | RtlStringCchPrintfExW 和 RtlStringCchPrintfExA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchVPrintfW | RtlStringCchVPrintfW 和 RtlStringCchVPrintfA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchVPrintfExW | RtlStringCchVPrintfExW 和 RtlStringCchVPrintfExA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlUnalignedStringCbLength | RtlUnalignedStringCbLengthW 函数是 RtlStringCbLength 函数的一个版本,它接受指向 Unicode 字符字符串的未对齐指针。 |
RtlUnalignedStringCchLengthW | RtlUnalignedStringCchLengthW 函数是 RtlStringCchLength 函数的一个版本,它接受指向 Unicode 字符字符串的未对齐指针。 |
用于UNICODE_STRING结构的安全字符串函数
使用本部分中的函数在内核模式驱动程序中操作UNICODE_STRING结构中的字符串。
如果使用安全字符串函数而不是 C 语言运行时库提供的字符串操作函数,则可以保护代码免受缓冲区溢出错误的影响,这些错误可能会使代码不可信。 有关安全字符串函数的详细信息,请参阅 使用安全字符串函数。
函数 | 说明 |
---|---|
RtlStringCbCopyUnicodeString | RtlStringCbCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定目标。 |
RtlStringCbCopyUnicodeStringEx | RtlStringCbCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定目标。 |
RtlStringCchCopyUnicodeString | RtlStringCchCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定目标。 |
RtlStringCchCopyUnicodeStringEx | RtlStringCchCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定目标。 |
RtlUnicodeStringCat | RtlUnicodeStringCat 函数连接UNICODE_STRING结构中包含的两个字符串。 |
RtlUnicodeStringCatEx | RtlUnicodeStringCatEx 函数连接UNICODE_STRING结构中包含的两个字符串。 |
RtlUnicodeStringCatString | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCatString 函数连接两个字符串。 |
RtlUnicodeStringCatStringEx | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCatStringEx 函数连接两个字符串。 |
RtlUnicodeStringCbCatN | RtlUnicodeStringCbCatN 函数连接UNICODE_STRING结构中包含的两个字符串,同时限制复制字符串的大小。 |
RtlUnicodeStringCbCatNEx | RtlUnicodeStringCbCatNEx 函数连接UNICODE_STRING结构中包含的两个字符串,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCatStringN | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringN 函数连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCbCatStringNEx | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCbCatStringNEx 函数连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCbCopyN | RtlUnicodeStringCbCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCopyNEx | RtlUnicodeStringCbCopyNEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCbCopyStringN | RtlUnicodeStringCbCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制字符串的大小。 |
RtlUnicodeStringCbCopyStringNEx | RtlUnicodeStringCbCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCatN | RtlUnicodeStringCchCatN 函数连接UNICODE_STRING结构中包含的两个字符串,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCatNEx | RtlUnicodeStringCchCatNEx 函数将包含在UNICODE_STRING结构中的两个字符串连接在一起,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCatStringN | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringN 函数连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCchCatStringNEx | 当目标字符串包含在UNICODE_STRING结构中时,RtlUnicodeStringCchCatStringNEx 函数连接两个字符串,同时限制追加字符串的大小。 |
RtlUnicodeStringCchCopyN | RtlUnicodeStringCchCopyN 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCopyNEx | RtlUnicodeStringCchCopyNEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCopyStringN | RtlUnicodeStringCchCopyStringN 函数将字符串复制到UNICODE_STRING结构中,同时限制复制的字符串的大小。 |
RtlUnicodeStringCchCopyStringNEx | RtlUnicodeStringCchCopyStringNEx 函数将字符串复制到UNICODE_STRING结构中,同时限制复制字符串的大小。 |
RtlUnicodeStringCopy | RtlUnicodeStringCopy 函数将字符串从一个UNICODE_STRING结构复制到另一个结构。 |
RtlUnicodeStringCopyEx | RtlUnicodeStringCopyEx 函数将字符串从一个UNICODE_STRING结构复制到另一个结构。 |
RtlUnicodeStringCopyString | RtlUnicodeStringCopyString 函数将字符串复制到UNICODE_STRING结构中。 |
RtlUnicodeStringCopyStringEx | RtlUnicodeStringCopyStringEx 函数将字符串复制到UNICODE_STRING结构中。 |
RtlUnicodeStringInit | RtlUnicodeStringInit 函数初始化UNICODE_STRING结构。 |
RtlUnicodeStringInitEx | RtlUnicodeStringInitEx 函数初始化UNICODE_STRING结构。 |
RtlUnicodeStringPrintf | RtlUnicodeStringPrintf 函数创建一个文本字符串,其格式基于提供的格式设置信息,并将字符串存储在UNICODE_STRING结构中。 |
RtlUnicodeStringPrintfEx | RtlUnicodeStringPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。 |
RtlUnicodeStringValidate | RtlUnicodeStringValidate 函数验证UNICODE_STRING结构的内容。 |
RtlUnicodeStringValidateEx | RtlUnicodeStringValidateEx 函数验证UNICODE_STRING结构的内容。 |
RtlUnicodeStringVPrintf | RtlUnicodeStringVPrintf 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。 |
RtlUnicodeStringVPrintfEx | RtlUnicodeStringVPrintfEx 函数创建一个文本字符串,其格式基于提供的格式信息,并将字符串存储在UNICODE_STRING结构中。 |
安全整数库例程
本部分介绍驱动程序的安全整数函数。 这些函数定义为 WDK 中 Ntintsafe.h 头文件中的内联函数。 安全整数函数旨在帮助驱动程序避免算术溢出错误。 这些函数分为两组:第一个将整数值从一种类型转换为另一种类型,第二个执行数学函数。 有关这些函数的详细信息,请参阅使用安全整数函数。
Windows SDK 中的 Intsafe.h 头文件定义了一组类似的安全整数函数,供应用程序使用。 有关此安全整数函数版本的详细信息,请参阅 Intsafe.h Functions。
数据转换
函数 | 说明 |
---|---|
InterlockedExchange | 将 LONG 类型的变量设置为给定值作为原子运算;返回变量的原始值。 |
RtlConvertLongToLargeInteger | 将给定的 LONG 值转换为LARGE_INTEGER值。 |
RtlConvertUlongToLargeInteger | 将给定的 ULONG 值转换为LARGE_INTEGER值。 |
RtlTimeFieldsToTime | 将TIME_FIELDS结构中的信息转换为系统时间。 |
RtlTimeToTimeFields | 将系统时间值转换为缓冲TIME_FIELDS值。 |
ExSystemTimeToLocalTime | 将当前区域设置的时区偏差添加到 GMT 系统时间,并将其转换为本地时间。 |
ExLocalTimeToSystemTime | 从本地时间减去时区偏差,将其转换为 GMT 系统时间。 |
RtlAnsiStringToUnicodeString | 给定指向源字符串缓冲区的指针和指向目标缓冲区的调用方提供的存储地址,将缓冲的 ANSI 字符串转换为 Unicode 字符串。 (如果调用方未提供 storage,则此例程会分配目标缓冲区。) |
RtlUnicodeStringToAnsiString | 给定指向源字符串缓冲区的指针和指向目标缓冲区的调用方提供的存储地址,将缓冲的 Unicode 字符串转换为 ANSI 字符串。 (如果调用方未提供 storage,则此例程会分配目标缓冲区。) |
RtlUpperString | 将缓冲字符串的副本转换为大写,并将副本存储在目标缓冲区中。 |
RtlUpcaseUnicodeString | 将缓冲的 Unicode 字符串的副本转换为大写,并将副本存储在目标缓冲区中。 |
RtlCharToInteger | 将单字节字符值转换为指定基数中的整数。 |
RtlIntegerToUnicodeString | 将指定基中的无符号整数值转换为给定缓冲区中的一个或多个 Unicode 字符。 |
RtlUnicodeStringToInteger | 将整数的 Unicode 字符串表示形式转换为其等效的整数。 |
对驱动程序托管对象的访问
函数 | 说明 |
---|---|
ExCreateCallback | 创建或打开回调对象。 |
ExNotifyCallback | 调用使用以前创建或打开的回调对象注册的回调例程。 |
ExRegisterCallback | 向以前创建或打开的回调对象注册回调例程,以便在为回调例程定义的条件发生时通知调用方。 |
ExUnregisterCallback | 取消回调例程与回调对象的注册。 |
IoRegisterDeviceInterface | (设备接口注册设备功能,) 驱动程序可以启用该接口供应用程序或其他系统组件使用。 |
IoSetDeviceInterfaceState | 启用或禁用以前注册的设备接口。 应用程序和其他系统组件只能打开已启用的接口。 |
IoGetDeviceInterfaceAlias | 返回指定接口类的别名设备接口(如果该别名存在)。 如果设备接口由同一基础设备公开,并且具有相同的接口引用字符串,但属于不同的接口类,则设备接口被视为别名。 |
IoGetDeviceInterfaces | 返回特定设备接口类 (的设备接口列表,例如系统上支持 HID 接口的所有设备) 。 |
IoGetFileObjectGenericMapping | 返回有关文件对象的通用访问权限与特定访问权限之间的映射的信息。 |
IoSetShareAccess | 设置允许访问表示设备的给定文件对象。 (只有最高级别的驱动程序才能调用此例程。) |
IoCheckShareAccess | 检查打开文件对象的请求是否指定了与打开文件对象的当前共享访问权限兼容的所需访问权限。 (只有最高级别的驱动程序才能调用此例程。) |
IoUpdateShareAccess | 修改给定文件对象的当前共享访问权限。 (只有最高级别的驱动程序才能调用此例程。) |
IoRemoveShareAccess | 还原对给定文件对象的共享访问权限,这些权限是通过前面对 IoUpdateShareAccess 的调用修改的。 |
RtlLengthSecurityDescriptor | 返回给定安全描述符的大小(以字节为单位)。 |
RtlValidSecurityDescriptor | 返回给定的安全描述符是否有效。 |
RtlCreateSecurityDescriptor | 将新的安全描述符初始化为具有有效 (默认值的绝对格式,) 没有安全约束。 |
RtlSetDaclSecurityDescriptor | 以绝对格式设置给定安全描述符的任意 ACL 信息。 |
SeAssignSecurity | 为新对象生成安全描述符,给定其父目录的安全描述符 ((如果有任何) )和最初请求的该对象的安全性。 |
SeDeassignSecurity | 解除分配与使用 SeAssignSecurity 创建的安全描述符关联的内存。 |
SeValidSecurityDescriptor | 返回给定的安全描述符在结构上是否有效。 |
SeAccessCheck | 返回一个布尔值,该值指示是否可以向受安全描述符和当前所有者保护的对象授予请求的访问权限。 |
SeSinglePrivilegeCheck | 返回一个布尔值,该值指示当前线程是否至少具有给定的权限级别。 |
错误处理。
函数 | 说明 |
---|---|
IoAllocateErrorLogEntry | 分配和初始化错误日志数据包;返回指针,以便调用方可以提供错误日志数据,并使用数据包调用 IoWriteErrorLogEntry。 |
IoFreeErrorLogEntry | 释放 IoAllocateErrorLogEntry 分配的错误日志条目。 |
IoWriteErrorLogEntry | 将以前分配的错误日志数据包(由驱动程序填充)排队到系统错误日志记录线程。 |
IoIsErrorUserInduced | 返回一个布尔值,该值指示 I/O 请求是否由于以下 (用户可更正) 条件之一而失败:STATUS_IO_TIMEOUT、STATUS_DEVICE_NOT_READY、STATUS_UNRECOGNIZED_MEDIA、STATUS_VERIFY_REQUIRED、STATUS_WRONG_VOLUME、STATUS_MEDIA_WRITE_PROTECTED或STATUS_NO_MEDIA_IN_DEVICE。 如果结果为 TRUE,则可移动媒体驱动程序必须在完成 IRP 之前调用 IoSetHardErrorOrVerifyDevice。 |
IoSetHardErrorOrVerifyDevice | 提供给定 IRP 因用户引起的错误而失败的设备对象,例如为请求的操作提供不正确的媒体或在请求的操作完成之前更改介质。 (文件系统驱动程序使用关联的设备对象向用户发送对话框;然后,用户可以更正错误或重试操作。) |
IoSetThreadHardErrorMode | 使用 IoRaiseHardError 或 IoRaiseInformationalHardError 启用或禁用当前线程的错误报告。 |
IoRaiseHardError | 导致向用户发送一个对话框,指示给定的 IRP 在可选 VPB 的给定设备对象上失败,以便用户可以更正错误或重试操作。 |
IoRaiseInformationalHardError | 导致向用户发送对话框,显示 I/O 错误状态和提供详细信息的可选字符串。 |
ExRaiseStatus | 引发错误状态,以便调用调用方提供的结构化异常处理程序。 (此例程仅适用于提供异常处理程序的最高级别的驱动程序,尤其是文件系统。) |
KeBugCheckEx | 在调用方发现不可恢复的不一致将损坏系统(除非系统关闭)之后,以受控方式关闭系统,显示 bug 检查代码和可能的详细信息。 关闭系统后,此例程会显示 bug 检查,并可能显示其他信息。 (调试开发中的驱动程序时,可以调用此例程。否则,当驱动程序可以通过 IRP 失败和调用 IoAllocateErrorLogEntry 和 IoWriteErrorLogEntry.) |
KeBugCheck | 当调用方发现不可恢复的不一致(如果调用方继续运行时会损坏系统)时,以受控的方式关闭系统。 KeBugCheckEx 更可取。 |
KeInitializeCallbackRecord | 在设备驱动程序调用 KeRegisterBugCheckCallback 之前初始化 bug 检查回调记录。 |
KeRegisterBugCheckCallback | 注册设备驱动程序的 bug 检查回调例程,如果发生系统 bug 检查,则调用该例程。 驱动程序提供的此类例程保存驱动程序确定的状态信息(例如设备寄存器的内容),否则不会将其写入系统故障转储文件。 |
KeDeregisterBugCheckCallback | 从注册的 bug-检查回调例程集中删除设备驱动程序的回调例程。 |
IOCTL
IOCTL_SYSENV_ENUM_VARIABLES 使用 SysEnv 设备返回有关系统环境变量的信息。 |
IOCTL_SYSENV_GET_VARIABLE 使用 SysEnv 设备获取指定系统环境变量的值。 |
IOCTL_SYSENV_QUERY_VARIABLE_INFO IOCTL_SYSENV_QUERY_VARIABLE_INFO使用 SysEnv 设备返回有关系统环境变量的信息。 |
IOCTL_SYSENV_SET_VARIABLE 使用 SysEnv 设备设置指定系统环境变量的值。 |
枚举
BDCB_CALLBACK_TYPE BDCB_CALLBACK_TYPE枚举指定传递给BOOT_DRIVER_CALLBACK_FUNCTION例程的回调是状态更新还是启动驱动程序初始化通知。 |
BDCB_CLASSIFICATION BDCB_CLASSIFICATION枚举列出了启动启动映像的不同分类。 |
BDCB_STATUS_UPDATE_TYPE BDCB_STATUS_UPDATE_TYPE枚举列出了启动驱动程序回调状态更新的类型。 |
BOUND_CALLBACK_STATUS BOUND_CALLBACK_STATUS枚举指示 BoundCallback 函数如何处理用户模式边界异常。 |
BUS_DATA_TYPE _BUS_DATA_TYPE枚举 (miniport.h) 定义指示总线配置空间类型的值。 |
BUS_DATA_TYPE _BUS_DATA_TYPE 枚举 (ntddk.h) 定义指示总线配置空间类型的值。 |
BUS_QUERY_ID_TYPE 本主题介绍BUS_QUERY_ID_TYPE枚举。 |
CLFS_CONTEXT_MODE CLFS_CONTEXT_MODE枚举指示公共日志文件系统 (CLFS) 驱动程序从流读取一组记录时遵循的序列类型。 |
CLFS_MGMT_POLICY_TYPE CLFS_MGMT_POLICY_TYPE 枚举类型标识 CLFS 管理策略的类型。 |
CLS_LOG_INFORMATION_CLASS CLFS_LOG_INFORMATION_CLASS枚举指示调用 ClfsQueryLogFileInformation 请求的信息类型。 |
D3COLD_LAST_TRANSITION_STATUS D3COLD_LAST_TRANSITION_STATUS枚举指示最近一次转换到 D3hot 设备电源状态后是否转换到 D3cold 设备电源状态。 |
DEVICE_DIRECTORY_TYPE 从中加载驱动程序的目录。 |
DEVICE_INSTALL_STATE DEVICE_INSTALL_STATE 枚举描述设备的安装状态。 |
DEVICE_POWER_STATE DEVICE_POWER_STATE枚举类型指示设备电源状态。 |
DEVICE_POWER_STATE 了解DEVICE_POWER_STATE枚举类型如何指示设备电源状态。 |
DEVICE_REGISTRY_PROPERTY DEVICE_REGISTRY_PROPERTY枚举标识存储在注册表中的设备属性。 |
DEVICE_REMOVAL_POLICY DEVICE_REMOVAL_POLICY枚举描述设备的删除策略。 |
DEVICE_RESET_TYPE DEVICE_RESET_TYPE枚举指定调用 GUID_DEVICE_RESET_INTERFACE_STANDARD 接口的 DeviceReset 例程请求的设备重置的类型。 |
DEVICE_TEXT_TYPE 本主题介绍DEVICE_TEXT_TYPE枚举。 |
DEVICE_USAGE_NOTIFICATION_TYPE 详细了解:DEVICE_USAGE_NOTIFICATION_TYPE 枚举 |
DEVICE_WAKE_DEPTH DEVICE_WAKE_DEPTH枚举指定设备可从中触发唤醒信号的最深设备电源状态。 |
DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_TYPE 提供从 MDL 创建通用缓冲区时可以提供的可选配置类型。 与类型对应的配置值保存在DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION结构中。 |
DMA_COMPLETION_STATUS DMA_COMPLETION_STATUS枚举描述 DMA 传输的完成状态。 |
DOMAIN_CONFIGURATION_ARCH 定义指定的系统体系结构类型的值。 |
DRIVER_REGKEY_TYPE 详细了解:DRIVER_REGKEY_TYPE 枚举 |
ENLISTMENT_INFORMATION_CLASS ENLISTMENT_INFORMATION_CLASS枚举标识 ZwSetInformationEnlistment 例程可以设置的信息类型,以及 ZwQueryInformationEnlistment 例程可为登记对象检索的信息类型。 |
EX_POOL_PRIORITY 详细了解:EX_POOL_PRIORITY |
GPIO_PIN_CONFIG_TYPE 了解GPIO_PIN_CONFIG_TYPE枚举如何描述连接 IO 资源。 |
GPIO_PIN_CONFIG_TYPE GPIO_PIN_CONFIG_TYPE 枚举描述连接 IO 资源。 |
GPIO_PIN_IORESTRICTION_TYPE 了解GPIO_PIN_IORESTRICTION_TYPE枚举如何描述 GPIO 引脚限制执行的功能。 |
GPIO_PIN_IORESTRICTION_TYPE GPIO_PIN_IORESTRICTION_TYPE枚举描述 GPIO 引脚受限于执行的功能。 |
HAL_APIC_DESTINATION_MODE 本主题介绍 ntddk.h) (HAL_APIC_DESTINATION_MODE 枚举。 |
HAL_QUERY_INFORMATION_CLASS HAL_QUERY_INFORMATION_CLASS枚举保留仅供系统使用。 请勿使用。 |
HAL_SET_INFORMATION_CLASS _HAL_SET_INFORMATION_CLASS枚举定义保留供内部使用的 pHalSetSystemInformation 回调函数使用的值。 |
HARDWARE_COUNTER_TYPE HARDWARE_COUNTER_TYPE枚举指定硬件计数器的类型。 |
IMAGE_POLICY_ENTRY_TYPE 不支持_IMAGE_POLICY_ENTRY_TYPE枚举。 |
IMAGE_POLICY_ID 不支持_IMAGE_POLICY_ID枚举。 |
INTERFACE_TYPE _INTERFACE_TYPE 枚举 (miniport.h) 定义指示发布接口的总线驱动程序类型的值。 |
INTERFACE_TYPE _INTERFACE_TYPE 枚举 (wdm.h) 定义指示发布接口的总线驱动程序类型的值。 |
IO_ACCESS_MODE 定义计划文件 I/O (SFIO) 的访问模式类型。 |
IO_ACCESS_MODE _IO_ACCESS_MODE定义计划文件 I/O (SFIO) 的访问模式类型。 |
IO_ACCESS_TYPE 定义计划文件 I/O (SFIO) 的访问权限。 |
IO_ACCESS_TYPE _IO_ACCESS_TYPE定义计划文件 I/O (SFIO) 的访问权限。 |
IO_ALLOCATION_ACTION IO_ALLOCATION_ACTION枚举类型用于指定 AdapterControl 和 ControllerControl 例程的返回值。 |
IO_CONTAINER_INFORMATION_CLASS IO_CONTAINER_INFORMATION_CLASS 枚举包含常量,这些常量指示内核模式驱动程序可以请求的系统信息类。 |
IO_CONTAINER_NOTIFICATION_CLASS IO_CONTAINER_NOTIFICATION_CLASS 枚举包含常量,这些常量指示内核模式驱动程序可以注册以接收通知的事件类。 |
IO_NOTIFICATION_EVENT_CATEGORY 详细了解:IO_NOTIFICATION_EVENT_CATEGORY 枚举 |
IO_PAGING_PRIORITY IO_PAGING_PRIORITY枚举描述分页 I/O IRP 的优先级值。 |
IO_PRIORITY_HINT IO_PRIORITY_HINT 枚举类型指定 IRP 的优先级提示。 |
IO_SESSION_EVENT IO_SESSION_EVENT枚举指示驱动程序接收通知的会话事件类型。 |
IO_SESSION_STATE IO_SESSION_STATE 枚举包含指示用户会话的当前状态的常量。 |
IOMMU_DEVICE_CREATION_CONFIGURATION_TYPE 描述创建IOMMU_DMA_DEVICE时使用的配置类型,具体取决于设备类型和系统。 |
IOMMU_DMA_DOMAIN_TYPE 描述可通过DMA_IOMMU_INTERFACE_EX创建和与之交互的域类型。 |
IOMMU_DMA_LOGICAL_ALLOCATOR_TYPE IOMMU_DMA_LOGICAL_ALLOCATOR_TYPE枚举指示IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG结构中描述的逻辑分配器的类型。 |
IOMMU_MAP_PHYSICAL_ADDRESS_TYPE IOMMU_MAP_PHYSICAL_ADDRESS_TYPE枚举指示IOMMU_MAP_PHYSICAL_ADDRESS结构中描述的物理地址的格式。 |
IRQ_DEVICE_POLICY _IRQ_DEVICE_POLICY 枚举 (miniport.h) 类型指示用于将设备中断分配给不同处理器的操作系统策略。 |
IRQ_DEVICE_POLICY _IRQ_DEVICE_POLICY枚举 (wdm.h) 类型指示用于将设备中断分配给不同处理器的操作系统策略。 |
IRQ_PRIORITY _IRQ_PRIORITY 枚举 (miniport.h) 类型指示系统应为设备中断提供服务的优先级。 |
IRQ_PRIORITY wdm.h) 类型 (_IRQ_PRIORITY枚举指示系统应优先处理设备的中断。 |
KBUGCHECK_CALLBACK_REASON KBUGCHECK_CALLBACK_REASON 枚举类型指定执行 bug 检查回调的情况。 |
KBUGCHECK_DUMP_IO_TYPE KBUGCHECK_DUMP_IO_TYPE枚举类型标识故障转储文件中部分数据的类型。 |
KD_CALLBACK_ACTION 本主题介绍 ntddk.h) KD_CALLBACK_ACTION 枚举 (。 |
KD_NAMESPACE_ENUM 本主题介绍KD_NAMESPACE_ENUM枚举 (ntddk.h) 。 |
KE_PROCESSOR_CHANGE_NOTIFY_STATE 本主题介绍KE_PROCESSOR_CHANGE_NOTIFY_STATE枚举。 |
KEY_INFORMATION_CLASS KEY_INFORMATION_CLASS枚举类型表示要提供有关注册表项的信息的类型。 |
KEY_SET_INFORMATION_CLASS KEY_SET_INFORMATION_CLASS枚举类型表示要为注册表项设置的信息类型。 |
KEY_VALUE_INFORMATION_CLASS KEY_VALUE_INFORMATION_CLASS枚举类型指定要提供有关注册表项值的信息的类型。 |
KINTERRUPT_MODE miniport.h) 类型 (_KINTERRUPT_MODE枚举指示中断是级别触发还是边缘触发。 |
KINTERRUPT_MODE _KINTERRUPT_MODE枚举 (wdm.h) 类型指示中断是级别触发还是边缘触发。 |
KINTERRUPT_POLARITY _KINTERRUPT_POLARITY 枚举 (miniport.h) 包含指示设备如何在中断线上发出中断请求信号的值。 |
KINTERRUPT_POLARITY _KINTERRUPT_POLARITY 枚举 (wdm.h) 包含指示设备如何在中断线上发出中断请求信号的值。 |
KTMOBJECT_TYPE KTMOBJECT_TYPE枚举标识 KTM 支持的对象类型。 |
LATENCY_TIME 本主题介绍LATENCY_TIME枚举。 |
MEM_EXTENDED_PARAMETER_TYPE 定义用于将文件映射到地址空间的扩展参数的值。 |
MEM_SECTION_EXTENDED_PARAMETER_TYPE 详细了解:MEM_SECTION_EXTENDED_PARAMETER_TYPE 枚举 |
MEMORY_CACHING_TYPE _MEMORY_CACHING_TYPE枚举 (miniport.h) 类型指定分配或映射内存时允许的缓存行为。 |
MEMORY_CACHING_TYPE _MEMORY_CACHING_TYPE枚举 (wdm.h) 类型指定分配或映射内存时允许的缓存行为。 |
MONITOR_DISPLAY_STATE 指示正在显示的监视器的电源状态。 |
MONITOR_DISPLAY_STATE 了解此方法如何指示正在显示的监视器的电源状态。 |
PCI_BUS_WIDTH 本主题介绍PCI_BUS_WIDTH枚举。 |
PCI_BUS_WIDTH 本主题介绍PCI_BUS_WIDTH枚举 (ntddk.h) 。 |
PCI_DEVICE_D3COLD_STATE_REASON 本主题介绍PCI_DEVICE_D3COLD_STATE_REASON枚举。 |
PCI_DEVICE_D3COLD_STATE_REASON 本主题介绍PCI_DEVICE_D3COLD_STATE_REASON枚举 (ntddk.h) 。 |
PCI_EXPRESS_ASPM_CONTROL 本主题介绍PCI_EXPRESS_ASPM_CONTROL枚举。 |
PCI_EXPRESS_ASPM_CONTROL 本主题介绍 ntddk.h) (PCI_EXPRESS_ASPM_CONTROL枚举。 |
PCI_EXPRESS_ASPM_SUPPORT 本主题介绍PCI_EXPRESS_ASPM_SUPPORT枚举。 |
PCI_EXPRESS_ASPM_SUPPORT 本主题介绍 ntddk.h) (PCI_EXPRESS_ASPM_SUPPORT 枚举。 |
PCI_EXPRESS_CARD_PRESENCE 本主题介绍PCI_EXPRESS_CARD_PRESENCE枚举。 |
PCI_EXPRESS_CARD_PRESENCE 本主题介绍PCI_EXPRESS_CARD_PRESENCE枚举 (ntddk.h) 。 |
PCI_EXPRESS_DEVICE_TYPE 本主题介绍PCI_EXPRESS_DEVICE_TYPE枚举。 |
PCI_EXPRESS_DEVICE_TYPE 本主题介绍PCI_EXPRESS_DEVICE_TYPE枚举 (ntddk.h) 。 |
PCI_EXPRESS_INDICATOR_STATE 本主题介绍PCI_EXPRESS_INDICATOR_STATE枚举。 |
PCI_EXPRESS_INDICATOR_STATE 本主题介绍PCI_EXPRESS_INDICATOR_STATE枚举 (ntddk.h) 。 |
PCI_EXPRESS_L0s_EXIT_LATENCY 本主题介绍PCI_EXPRESS_L0s_EXIT_LATENCY枚举。 |
PCI_EXPRESS_L0s_EXIT_LATENCY 本主题介绍PCI_EXPRESS_L0s_EXIT_LATENCY枚举 (ntddk.h) 。 |
PCI_EXPRESS_L1_EXIT_LATENCY 本主题介绍PCI_EXPRESS_L1_EXIT_LATENCY枚举。 |
PCI_EXPRESS_L1_EXIT_LATENCY 本主题介绍 ntddk.h) (PCI_EXPRESS_L1_EXIT_LATENCY枚举。 |
PCI_EXPRESS_LINK_SUBSTATE 本主题介绍PCI_EXPRESS_LINK_SUBSTATE枚举。 |
PCI_EXPRESS_LINK_SUBSTATE 本主题介绍 ntddk.h) (PCI_EXPRESS_LINK_SUBSTATE枚举。 |
PCI_EXPRESS_MAX_PAYLOAD_SIZE 本主题介绍 ntddk.h) (PCI_EXPRESS_MAX_PAYLOAD_SIZE枚举。 |
PCI_EXPRESS_MRL_STATE 本主题介绍PCI_EXPRESS_MRL_STATE枚举。 |
PCI_EXPRESS_MRL_STATE 本主题介绍PCI_EXPRESS_MRL_STATE枚举 (ntddk.h) 。 |
PCI_EXPRESS_POWER_STATE 本主题介绍PCI_EXPRESS_POWER_STATE枚举。 |
PCI_EXPRESS_POWER_STATE 本主题介绍PCI_EXPRESS_POWER_STATE枚举 (ntddk.h) 。 |
PCI_EXPRESS_RCB 本主题介绍PCI_EXPRESS_RCB枚举。 |
PCI_EXPRESS_RCB 本主题介绍PCI_EXPRESS_RCB枚举 (ntddk.h) 。 |
PEP_ACPI_OBJECT_TYPE 了解PEP_ACPI_OBJECT_TYPE枚举如何指示 ACPI 对象的类型。 |
PEP_ACPI_OBJECT_TYPE PEP_ACPI_OBJECT_TYPE枚举指示 ACPI 对象的类型。 |
PEP_ACPI_RESOURCE_TYPE 了解如何使用PEP_ACPI_RESOURCE_TYPE枚举来标识PEP_ACPI_RESOURCE联合中包含的 ACPI 资源的类型。 |
PEP_ACPI_RESOURCE_TYPE PEP_ACPI_RESOURCE_TYPE枚举用于标识PEP_ACPI_RESOURCE联合中包含的 ACPI 资源类型。 |
PEP_DEVICE_ACCEPTANCE_TYPE 了解PEP_DEVICE_ACCEPTANCE_TYPE枚举如何指示 PEP 是否接受设备的所有权。 |
PEP_DEVICE_ACCEPTANCE_TYPE PEP_DEVICE_ACCEPTANCE_TYPE枚举指示 PEP 是否接受设备的所有权。 |
PEP_PERF_STATE_TYPE 了解PEP_PERF_STATE_TYPE枚举如何指示为组件的性能状态 (P 状态) 指定的性能信息类型。 |
PEP_PERF_STATE_TYPE PEP_PERF_STATE_TYPE枚举指示为组件的性能状态 (P 状态) 指定的性能信息的类型。 |
PEP_PERF_STATE_UNIT 了解PEP_PERF_STATE_UNIT枚举如何指示组件的性能状态 (P 状态) 指定度量单位。 |
PEP_PERF_STATE_UNIT PEP_PERF_STATE_UNIT枚举指示指定组件的性能状态 (P 状态) 的度量单位。 |
PEP_PROCESSOR_IDLE_CANCEL_CODE PEP_PROCESSOR_IDLE_CANCEL_CODE枚举值指示处理器无法进入以前由平台扩展插件 (PEP) 选择的空闲状态的原因。 |
PEP_PROCESSOR_IDLE_TYPE PEP_PROCESSOR_IDLE_TYPE枚举指示空闲约束是仅应用于当前处理器还是应用于硬件平台中的所有处理器。 |
PEP_WORK_TYPE 了解 PEP_WORK_TYPE 枚举如何描述平台扩展插件 (PEP) 请求的工作类型。 |
PEP_WORK_TYPE PEP_WORK_TYPE 枚举描述平台扩展插件 (PEP) 请求的工作类型。 |
PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR_TYPE 枚举包含常量,这些常量指示PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构描述的硬件性能计数器资源的类型。 |
PO_FX_PERF_STATE_TYPE PO_FX_PERF_STATE_TYPE 枚举包含用于描述PO_FX_COMPONENT_PERF_SET中性能状态类型的值。 |
PO_FX_PERF_STATE_UNIT PO_FX_PERF_STATE_UNIT枚举包含一些值,这些值描述由PO_FX_COMPONENT_PERF_SET性能状态控制的单位类型。 |
PO_INTERNAL_WAKE_SOURCE_TYPE 详细了解:PO_INTERNAL_WAKE_SOURCE_TYPE 枚举 |
POOL_EXTENDED_PARAMETER_TYPE 详细了解:POOL_EXTENDED_PARAMETER_TYPE |
POOL_TYPE POOL_TYPE枚举类型指定要分配的系统内存的类型。 |
POWER_ACTION POWER_ACTION枚举标识计算机上可能发生的系统电源操作。 |
POWER_ACTION 了解POWER_ACTION枚举 (wdm.h) 如何标识计算机上可能发生的系统电源操作。 |
POWER_INFORMATION_LEVEL 指示电源级别信息。 |
POWER_INFORMATION_LEVEL POWER_INFORMATION_LEVEL枚举电源级别信息指示器。 |
POWER_MONITOR_REQUEST_REASON 定义监视器电源转换原因的值。 |
POWER_MONITOR_REQUEST_REASON 本主题介绍POWER_MONITOR_REQUEST_REASON枚举。 |
POWER_MONITOR_REQUEST_TYPE 本主题介绍POWER_MONITOR_REQUEST_TYPE枚举。 |
POWER_REQUEST_TYPE POWER_REQUEST_TYPE 枚举指示电源请求类型。 |
POWER_REQUEST_TYPE 了解POWER_REQUEST_TYPE枚举如何指示电源请求类型。 |
POWER_STATE_TYPE POWER_STATE_TYPE枚举类型指示电源状态值为系统电源状态或设备电源状态。 |
POWER_STATE_TYPE 了解POWER_STATE_TYPE枚举类型如何指示电源状态值为系统电源状态或设备电源状态。 |
POWER_USER_PRESENCE_TYPE 本主题介绍POWER_USER_PRESENCE_TYPE枚举。 |
PROCESS_MITIGATION_POLICY 枚举进程缓解策略。 |
PSCREATEPROCESSNOTIFYTYPE 指示进程通知的类型。 此枚举在 PsSetCreateProcessNotifyRoutineEx2 中用于注册回调通知。 |
PSCREATETHREADNOTIFYTYPE 指示线程通知的类型。 此枚举在 PsSetCreateThreadNotifyRoutineEx 中用于注册与线程创建或删除关联的回调通知。 |
REG_NOTIFY_CLASS REG_NOTIFY_CLASS 枚举类型指定配置管理器传递给 RegistryCallback 例程的注册表操作的类型。 |
RESOURCEMANAGER_INFORMATION_CLASS RESOURCEMANAGER_INFORMATION_CLASS枚举标识 ZwQueryInformationResourceManager 例程可以为资源管理器对象检索的信息类型。 |
SE_IMAGE_TYPE 详细了解:_SE_IMAGE_TYPE 枚举 |
STATE_LOCATION_TYPE 定义设备和驱动程序文件的持久状态位置的值。 |
SUBSYSTEM_INFORMATION_TYPE 指示进程或线程的子系统类型。 此枚举用于 NtQueryInformationProcess 和 NtQueryInformationThread 调用。 |
SYSTEM_POWER_CONDITION 本主题介绍SYSTEM_POWER_CONDITION枚举。 |
SYSTEM_POWER_STATE SYSTEM_POWER_STATE 枚举类型用于指示系统电源状态。 |
SYSTEM_POWER_STATE 了解如何使用 SYSTEM_POWER_STATE 枚举类型来指示系统电源状态。 |
TRACE_INFORMATION_CLASS TRACE_INFORMATION_CLASS 枚举类型用于指示与 WMI 事件跟踪会话关联的信息类型。 |
TRANSACTION_INFORMATION_CLASS TRANSACTION_INFORMATION_CLASS枚举指定 ZwSetInformationTransaction 可以设置的信息类型,ZwQueryInformationTransaction 可以为事务管理器对象检索的信息类型。 |
TRANSACTION_OUTCOME TRANSACTION_OUTCOME 枚举定义 KTM 可以分配给事务的结果 (结果) 。 |
TRANSACTION_STATE TRANSACTION_STATE枚举定义 KTM 可以分配给事务的状态。 |
TRANSACTIONMANAGER_INFORMATION_CLASS TRANSACTIONMANAGER_INFORMATION_CLASS 枚举指定 ZwQueryInformationTransactionManager 例程可以为事务管理器对象检索的信息类型。 |
WHEA_PCI_RECOVERY_SIGNAL 描述WHEA_PCI_RECOVERY_SIGNAL枚举。 |
WHEA_PCI_RECOVERY_STATUS 描述WHEA_PCI_RECOVERY_STATUS枚举。 |
WHEAP_DPC_ERROR_EVENT_TYPE 本主题介绍WHEAP_DPC_ERROR_EVENT_TYPE枚举。 |
WORK_QUEUE_TYPE WORK_QUEUE_TYPE枚举类型指示处理工作项的系统工作线程的类型。 |
函数
_BitTest64 本主题介绍 _BitTest64 函数。 |
_BitTest64 _BitTest64函数... |
_BitTestAndComplement64 本主题介绍 _BitTestAndComplement64 函数。 |
_BitTestAndComplement64 _BitTestAndComplement64函数... |
_BitTestAndReset64 本主题介绍 _BitTestAndReset64 函数。 |
_BitTestAndReset64 _BitTestAndReset64函数... |
_BitTestAndSet64 本主题介绍 _BitTestAndSet64 函数。 |
_BitTestAndSet64 _BitTestAndSet64函数... |
_ReadWriteBarrier 介绍 readWriteBarrier~r1 函数 (miniport.h) 。 |
_ReadWriteBarrier 介绍 wdm.h) (ReadWriteBarrier~r2 函数。 |
_WHEA_SIGNAL_HANDLER_OVERRIDE_CALLBACK 本主题介绍_WHEA_SIGNAL_HANDLER_OVERRIDE_CALLBACK回调函数。 |
ALLOCATE_FUNCTION_EX 当客户端请求来自空的 lookaside 列表的条目时,LookasideListAllocateEx 例程为新的 lookaside-list 条目分配存储。 |
AppendTailList AppendTailList 例程将LIST_ENTRY结构的双重链接列表追加到另一个LIST_ENTRY结构的双重链接列表的尾部。 |
ARM64_SYSREG_CRM 返回给定 ARM 系统寄存器的 CRn 字段。 |
ARM64_SYSREG_CRN 了解方法如何返回给定 ARM 系统寄存器的 CRn 字段。 |
ARM64_SYSREG_OP1 返回给定 ARM 系统寄存器的 op1 字段。 |
ARM64_SYSREG_OP2 返回给定 ARM 系统寄存器的 op2 字段。 |
AuxKlibEnumerateSystemFirmwareTables AuxKlibEnumerateSystemFirmwareTables 例程枚举指定类型的所有系统固件表。 |
AuxKlibGetBugCheckData AuxKlibGetBugCheckData 例程检索有关刚发生的 bug 检查的信息。 |
AuxKlibGetImageExportDirectory AuxKlibGetImageExportDirectory 例程返回图像模块的导出目录。 |
AuxKlibGetSystemFirmwareTable AuxKlibGetSystemFirmwareTable 例程从固件表提供程序检索指定的固件表。 |
AuxKlibInitialize AuxKlibInitialize 例程初始化辅助 Kernel-Mode 库。 |
AuxKlibQueryModuleInformation AuxKlibQueryModuleInformation 例程检索有关操作系统已加载的映像模块的信息。 |
BarrierAfterRead 介绍 barrierAfterRead 函数 (miniport.h) 。 |
BarrierAfterRead 介绍 BarrierAfterRead~r1 (miniport.h) 函数。 |
BarrierAfterRead 介绍 barrierAfterRead~r2 函数 (miniport.h) 。 |
BarrierAfterRead 介绍 barrierAfterRead 函数 (wdm.h) 。 |
BarrierAfterRead 介绍 barrierAfterRead~r1 函数 (wdm.h) 。 |
BarrierAfterRead 介绍 barrierAfterRead~r2 函数 (wdm.h) 。 |
BOOT_DRIVER_CALLBACK_FUNCTION 详细了解:BOOT_DRIVER_CALLBACK_FUNCTION回调函数 |
BOUND_CALLBACK 每当系统为用户模式线程发出边界异常时,就会执行 BoundCallback 例程。 |
ClfsAddLogContainer ClfsAddLogContainer 例程将容器添加到 CLFS 日志。 |
ClfsAddLogContainerSet ClfsAddLogContainerSet 例程以原子方式将一组容器添加到 CLFS 日志。 |
ClfsAdvanceLogBase ClfsAdvanceLogBase 例程设置 CLFS 流的基 LSN。 |
ClfsAlignReservedLog ClfsAlignReservedLog 例程计算必须为指定记录集保留的空间大小。 大小计算包括标头所需的空间和扇区对齐所需的空间。 |
ClfsAllocReservedLog ClfsAllocReservedLog 例程在封送区域中为一组记录保留空间。 |
ClfsCloseAndResetLogFile ClfsCloseAndResetLogFile 例程释放对指定日志文件对象的所有引用,并将其关联的流标记为重置。 |
ClfsCloseLogFileObject ClfsCloseLogFileObject 例程释放对日志文件对象的所有引用。 |
ClfsCreateLogFile ClfsCreateLogFile 例程创建或打开 CLFS 流。 如有必要,ClfsCreateLogFile 还会创建保存流记录的基础物理日志。 |
ClfsCreateMarshallingArea ClfsCreateMarshallingArea 例程为 CLFS 流创建封送区域,并返回指向表示新封送处理区域的不透明上下文的指针。 |
ClfsCreateScanContext ClfsCreateScanContext 例程创建可用于循环访问指定 CLFS 日志的容器的扫描上下文。 |
ClfsDeleteLogByPointer ClfsDeleteLogByPointer 例程标记要删除的 CLFS 流。 |
ClfsDeleteLogFile ClfsDeleteLogFile 例程标记要删除的 CLFS 流。 |
ClfsDeleteMarshallingArea ClfsDeleteMarshallingArea 例程删除封送区域。 |
ClfsFlushBuffers ClfsFlushBuffers 例程强制指定封送区域中的所有日志 I/O 块进入稳定存储。 |
ClfsFlushToLsn ClfsFlushToLsn 例程强制将 LSN 小于或等于指定 LSN 的所有记录强制到稳定的存储。 |
ClfsGetContainerName ClfsGetContainerName 例程返回指定容器的路径名称。 |
ClfsGetIoStatistics ClfsGetIoStatistics 例程返回指定 CLFS 日志的 I/O 统计信息。 |
ClfsLsnBlockOffset ClfsLsnBlockOffset 例程返回指定 LSN 中包含的扇区对齐块偏移量。 |
ClfsLsnContainer ClfsLsnContainer 例程返回包含在指定 LSN 中的逻辑容器标识符。 |
ClfsLsnCreate ClfsLsnCreate 例程在给定容器标识符、块偏移量和记录序列号的情况下, (LSN) 创建日志序列号。 |
ClfsLsnEqual ClfsLsnEqual 例程确定来自同一流的两个 LSN 是否相等。 |
ClfsLsnGreater ClfsLsnGreater 例程确定一个 LSN 是否大于另一个 LSN。 这两个 LSN 必须来自同一流。 |
ClfsLsnLess ClfsLsnLess 例程确定一个 LSN 是否小于另一个 LSN。 这两个 LSN 必须来自同一流。 |
ClfsLsnNull ClfsLsnNull 例程确定指定的 LSN 是否等于可能的最小 LSN,CLFS_LSN_NULL。 |
ClfsLsnRecordSequence ClfsLsnRecordSequence 例程返回指定 LSN 中包含的记录序列号。 |
ClfsMgmtDeregisterManagedClient ClfsMgmtDeregisterManagedClient 例程会删除客户端和日志之间的连接,以便客户端不再管理日志。 |
ClfsMgmtHandleLogFileFull ClfsMgmtHandleLogFileFull 例程尝试在日志中提供更多可用空间。 它可能会通过将容器添加到日志来提供更多空间,或者可能会要求客户端移动其日志尾部。 |
ClfsMgmtInstallPolicy ClfsMgmtInstallPolicy 例程将CLFS_MGMT_POLICY结构添加到物理日志。 |
ClfsMgmtQueryPolicy ClfsMgmtQueryPolicy 例程检索日志的特定CLFS_MGMT_POLICY结构。 |
ClfsMgmtRegisterManagedClient ClfsMgmtRegisterManagedClient 例程创建将管理 CLFS 日志的客户端。 |
ClfsMgmtRemovePolicy ClfsMgmtRemovePolicy 例程将日志的CLFS_MGMT_POLICY结构重置为其默认值。 |
ClfsMgmtSetLogFileSize ClfsMgmtSetLogFileSize 例程将容器添加到日志或从日志中删除容器。 |
ClfsMgmtSetLogFileSizeAsClient ClfsMgmtSetLogFileSizeAsClient 例程通过将容器添加到客户端日志或从客户端日志中删除容器来设置日志文件大小。 |
ClfsMgmtTailAdvanceFailure ClfsMgmtTailAdvanceFailure 例程通知 CLFS 管理,客户端无法推进日志的尾部。 |
ClfsQueryLogFileInformation ClfsQueryLogFileInformation 例程返回指定 CLFS 流或其基础物理日志的元数据和状态信息或两者。 |
ClfsReadLogRecord ClfsReadLogRecord 例程读取 CLFS 流中的目标记录,并返回一个读取上下文,调用方可以使用该上下文读取流中之前或之后的记录。 |
ClfsReadNextLogRecord ClfsReadNextLogRecord 例程相对于读取上下文中的当前记录,按顺序读取下一条记录。 |
ClfsReadPreviousRestartArea ClfsReadPreviousRestartArea 例程相对于读取上下文中的当前记录读取以前的重启记录。 |
ClfsReadRestartArea ClfsReadRestartArea 例程读取最近写入指定 CLFS 流的重启记录。 |
ClfsRemoveLogContainer ClfsRemoveLogContainer 例程从 CLFS 日志中删除容器。 |
ClfsRemoveLogContainerSet ClfsRemoveLogContainerSet 例程以原子方式从 CLFS 日志中删除一组容器。 |
ClfsReserveAndAppendLog ClfsReserveAndAppendLog 例程在封送处理区域中保留空间,或将记录追加到封送处理区域,或者以原子方式执行这两种操作。 |
ClfsReserveAndAppendLogAligned ClfsReserveAndAppendLogAligned 例程在封送处理区域中保留空间,或将记录追加到封送处理区域,或者以原子方式执行这两种操作。 记录的数据在指定的边界上对齐。 |
ClfsScanLogContainers ClfsScanLogContainers 例程检索属于特定 CLFS 日志的容器序列的描述性信息。 |
ClfsSetArchiveTail ClfsSetArchiveTail 例程将 CLFS 日志的存档尾部设置为指定的 LSN。 |
ClfsSetEndOfLog ClfsSetEndOfLog 例程截断 CLFS 流。 |
ClfsSetLogFileInformation ClfsSetLogFileInformation 例程设置指定流及其基础物理日志的元数据和状态信息。 |
ClfsTerminateReadLog ClfsTerminateReadLog 例程在释放与上下文关联的资源后使指定的读取上下文失效。 |
ClfsWriteRestartArea ClfsWriteRestartArea 例程以原子方式将新的重启记录追加到 CLFS 流,将重启记录刷新到稳定存储,并选择性地更新流的基本 LSN。 |
CmCallbackGetKeyObjectID CmCallbackGetKeyObjectID 例程检索与指定注册表项对象关联的唯一标识符和对象名称。 |
CmCallbackGetKeyObjectIDEx CmCallbackGetKeyObjectIDEx 例程检索与指定注册表项对象关联的唯一标识符和对象名称。 |
CmCallbackReleaseKeyObjectIDEx CmCallbackReleaseKeyObjectIDEx 例程释放从 CmCallbackGetKeyObjectIDEx 例程获取的对象名称字符串。 |
CmGetBoundTransaction CmGetBoundTransaction 例程返回指向事务对象的指针,该对象表示与指定注册表项对象关联的事务(如果有)。 |
CmGetCallbackVersion CmGetCallbackVersion 例程检索配置管理器注册表回调功能的当前版本的主版本号和次要版本号。 |
CmRegisterCallback 对于 Windows Vista 和更高版本的操作系统,CmRegisterCallback 例程已过时。 请改用 CmRegisterCallbackEx。CmRegisterCallback 例程注册 RegistryCallback 例程。 |
CmRegisterCallbackEx CmRegisterCallbackEx 例程注册 RegistryCallback 例程。 |
CmSetCallbackObjectContext CmSetCallbackObjectContext 例程将指定的上下文信息与指定的注册表对象相关联。 |
CmUnRegisterCallback CmUnRegisterCallback 例程取消注册以前注册 CmRegisterCallback 或 CmRegisterCallbackEx 例程的 RegistryCallback 例程。 |
CUSTOM_SYSTEM_EVENT_TRIGGER_INIT 初始化CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG结构。 |
D3COLD_REQUEST_AUX_POWER 使函数设备对象 (FDO) 传达其辅助电源要求。 |
D3COLD_REQUEST_CORE_POWER_RAIL 启用函数设备对象 (FDO) 以指示是否需要核心电源轨。 |
D3COLD_REQUEST_PERST_DELAY 使函数设备对象 (FDO) 传达其固定延迟时间的要求。 |
DEVICE_QUERY_BUS_SPECIFIC_RESET_HANDLER 本主题介绍DEVICE_QUERY_BUS_SPECIFIC_RESET_HANDLER回调函数。 |
DEVICE_RESET_HANDLER DeviceReset 例程用于重置和恢复故障设备。 |
DMA_COMPLETION_ROUTINE DmaCompletionRoutine 回调例程通知之前请求系统 DMA 传输的驱动程序此传输已完成。 |
DRIVER_ADD_DEVICE AddDevice 例程负责创建功能设备对象 (FDO) 或筛选设备对象 (即插即用 (PnP) 管理器枚举的设备 (筛选 DO) 。 |
DRIVER_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 卸载例程执行系统卸载驱动程序之前所需的任何操作。 |
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 例程删除 lookaside 列表。 |
ExDeleteNPagedLookasideList ExDeleteNPagedLookasideList 例程会销毁非分页的 lookaside 列表。 |
ExDeletePagedLookasideList ExDeletePagedLookasideList 例程会销毁分页的 lookaside 列表。 |
ExDeleteResourceLite ExDeleteResourceLite 例程从系统的资源列表中删除给定的资源。 |
ExDeleteTimer ExDeleteTimer 例程删除以前由 ExAllocateTimer 例程分配的计时器对象。 |
ExDestroyPool 定义 ExDestroyPool 函数。 |
ExEnterCriticalRegionAndAcquireResourceExclusive 详细了解 ExEnterCriticalRegionAndAcquireResourceExclusive 例程。 |
ExFlushLookasideListEx ExFlushLookasideListEx 例程刷新指定 lookaside 列表中的所有条目,并释放每个条目的分配存储。 |
ExFreeCacheAwareRundownProtection 本主题介绍 ExFreeCacheAwareRundownProtection 函数。 |
ExFreePool ExFreePool 宏 (ntddk.h) 例程解除分配之前分配的指定池内存块。 |
ExFreePool exFreePool 函数 (wdm.h) 解除分配之前分配的指定池内存块。 |
ExFreePool2 定义 ExFreePool2 函数。 |
ExFreePoolWithTag ExFreePoolWithTag 例程解除分配使用指定标记分配的池内存块。 |
ExFreeToLookasideListEx ExFreeToLookasideListEx 例程将条目插入到查看列表中,或者,如果该列表已满,则释放为该条目分配的存储。 |
ExFreeToNPagedLookasideList ExFreeToNPagedLookasideList 例程将非分页项返回到给定的旁视列表或非分页池。 |
ExFreeToPagedLookasideList ExFreeToPagedLookasideList 例程将可分页条目返回到给定的旁视列表或分页池。 |
ExGetExclusiveWaiterCount ExGetExclusiveWaiterCount 例程返回对给定资源具有独占访问权限的等待者数。 |
ExGetFirmwareEnvironmentVariable ExGetFirmwareEnvironmentVariable 例程获取指定的系统固件环境变量的值。 |
ExGetFirmwareType 返回系统固件类型。 |
ExGetPreviousMode ExGetPreviousMode 例程返回当前线程的先前处理器模式。 |
ExGetSharedWaiterCount ExGetSharedWaiterCount 例程返回共享访问给定资源时服务员的数量。 |
ExInitializeDeleteTimerParameters ExInitializeDeleteTimerParameters 例程初始化EXT_DELETE_PARAMETERS结构。 |
ExInitializeDeviceAts 描述 ExInitializeDeviceAts 函数。 |
ExInitializeDriverRuntime 详细了解:ExInitializeDriverRuntime |
ExInitializeFastMutex ExInitializeFastMutex 例程初始化一个快速互斥变量,该变量用于将一组线程的互斥访问同步到共享资源。 |
ExInitializeLookasideListEx ExInitializeLookasideListEx 例程初始化查看列表。 |
ExInitializeNPagedLookasideList ExInitializeNPagedLookasideList 例程初始化指定大小的非分页条目的查找列表。 |
ExInitializePagedLookasideList ExInitializePagedLookasideList 例程初始化指定大小的可分页条目的查找列表。 |
ExInitializePushLock 初始化推送锁变量。 |
ExInitializeResourceLite ExInitializeResourceLite 例程初始化资源变量。 |
ExInitializeRundownProtection ExInitializeRundownProtection 例程初始化共享对象上的断开保护。 |
ExInitializeRundownProtectionCacheAware 本主题介绍 ExInitializeRundownProtectionCacheAware 函数。 |
ExInitializeSetTimerParameters ExInitializeSetTimerParameters 例程初始化EXT_SET_PARAMETERS结构。 |
ExInterlockedAddLargeInteger ExInterlockedAddLargeInteger 例程将大整数值作为原子操作添加到指定的变量中。 |
ExInterlockedAddLargeStatistic ExInterlockedAddLargeStatistic 例程将 ULONG 增量值联锁添加到LARGE_INTEGER变量。 |
ExInterlockedAddUlong ExInterlockedAddUlong 例程将无符号长值作为原子操作添加到给定的无符号整数中。 |
ExInterlockedCompareExchange64 ExInterlockedCompareExchange64 例程将一个整数变量与另一个整数变量进行比较,如果它们相等,请将第一个变量设置为调用方提供的值。 |
ExInterlockedFlushSList ExInterlockedFlushSList 例程以原子方式从已排序的单独链接列表中删除所有条目。 |
ExInterlockedInsertHeadList ExInterlockedInsertHeadList 例程以原子方式在LIST_ENTRY结构的双重链接列表的开头插入一个条目。 |
ExInterlockedInsertTailList ExInterlockedInsertTailList 例程以原子方式在LIST_ENTRY结构的双重链接列表的末尾插入一个条目。 |
ExInterlockedPopEntryList ExInterlockedPopEntryList 例程以原子方式从SINGLE_LIST_ENTRY结构的单独链接列表的开头删除条目。 |
ExInterlockedPopEntrySList ExInterlockedPopEntrySList 例程以原子方式从已排序的单独链接列表中删除第一个条目。 |
ExInterlockedPushEntryList ExInterlockedPushEntryList 例程以原子方式在SINGLE_LIST_ENTRY结构的单独链接列表的开头插入一个条目。 |
ExInterlockedPushEntrySList ExInterlockedPushEntrySList 例程以原子方式在序列单独链接列表的开头插入一个条目。 |
ExInterlockedRemoveHeadList ExInterlockedRemoveHeadList 例程从LIST_ENTRY结构的双重链接列表的开头删除条目。 |
ExIsProcessorFeaturePresent ExIsProcessorFeaturePresent 例程查询是否存在指定的处理器功能。 |
ExIsResourceAcquiredExclusiveLite ExIsResourceAcquiredExclusiveLite 例程返回当前线程是否对给定资源具有独占访问权限。 |
ExIsResourceAcquiredSharedLite ExIsResourceAcquiredSharedLite 例程返回当前线程是否有权访问 (共享或独占) 给定资源。 |
ExIsSoftBoot 确定系统是否已经历软重启。 |
ExLocalTimeToSystemTime ExLocalTimeToSystemTime 例程将当前时区的系统时间值转换为无偏见的 GreenGMT 值。 |
ExNotifyCallback ExNotifyCallback 例程会导致调用为给定对象注册的所有回调例程。 |
EXPAND_STACK_CALLOUT ExpandedStackCall 例程以有保证的堆栈大小执行。 |
ExpInterlockedPopEntrySList 描述 ExpInterlockedPopEntrySList 函数。 |
ExpInterlockedPushEntrySList 介绍 ExpInterlockedPushEntrySList 函数。 |
ExQueryDepthSList ExQueryDepthSList 例程返回给定序列单独链接列表中的当前条目数。 |
ExQueryTimerResolution ExQueryTimerResolution 例程报告系统时钟支持的计时器解析范围。 |
ExRaiseAccessViolation ExRaiseAccessViolation 例程可以与结构化异常处理结合使用,以便针对驱动程序处理 I/O 请求时发生的内存访问冲突引发驱动程序确定的异常。 |
ExRaiseDatatypeMisalignment ExRaiseDatatypeMisalignment 例程可以与结构化异常处理一起使用,以便为驱动程序处理 I/O 请求时发生的未对齐数据类型引发驱动程序确定的异常。 |
ExRaiseStatus ExRaiseStatus 例程由提供结构化异常处理程序的驱动程序调用,以处理处理 I/O 请求时发生的特定错误。 |
ExRegisterCallback ExRegisterCallback 例程使用给定的回调对象注册给定的回调例程。 |
ExReinitializeResourceLite ExReinitializeResourceLite 例程重新初始化现有资源变量。 |
ExReInitializeRundownProtection ExReInitializeRundownProtection 例程在关联的对象运行后重新初始化EX_RUNDOWN_REF结构。 |
ExReInitializeRundownProtectionCacheAware 本主题介绍 ExReInitializeRundownProtectionCacheAware 函数。 |
ExReleaseFastMutex 详细了解 ExReleaseFastMutex 例程。 |
ExReleaseFastMutexUnsafe 详细了解 ExReleaseFastMutexUnsafe 例程。 |
ExReleasePushLockExclusive 为当前线程拥有的独占访问释放指定的推送锁。 |
ExReleasePushLockShared 为当前线程拥有的共享访问释放指定的推送锁。 |
ExReleaseResourceAndLeaveCriticalRegion 详细了解 ExReleaseResourceAndLeaveCriticalRegion 例程。 |
ExReleaseResourceForThreadLite ExReleaseResourceForThreadLite 例程释放所指示线程的输入资源。 |
ExReleaseResourceLite ExReleaseResourceLite 例程释放当前线程拥有的指定执行资源。 |
ExReleaseRundownProtection ExReleaseRundownProtection 例程释放调用方以前通过调用 ExAcquireRundownProtection 例程获取的断开保护。 |
ExReleaseRundownProtectionCacheAware 本主题介绍 ExReleaseRundownProtectionCacheAware 函数。 |
ExReleaseRundownProtectionCacheAwareEx 本主题介绍 ExReleaseRundownProtectionCacheAwareEx 函数。 |
ExReleaseRundownProtectionEx ExReleaseRundownProtectionEx 例程释放调用方以前通过调用 ExAcquireRundownProtectionEx 例程获取的断开保护。 |
ExReleaseSpinLockExclusive ExReleaseSpinLockExclusive 例程释放调用方以前为独占访问而获取的旋转锁,并将 IRQL 还原到其原始值。 |
ExReleaseSpinLockExclusiveFromDpcLevel 详细了解 ExReleaseSpinLockExclusiveFromDpcLevel 例程。 |
ExReleaseSpinLockShared ExReleaseSpinLockShared 例程释放调用方以前为共享访问获取的旋转锁的所有权,并将 IRQL 还原到其原始值。 |
ExReleaseSpinLockSharedFromDpcLevel 详细了解 ExReleaseSpinLockSharedFromDpcLevel 例程。 |
ExRundownCompleted ExRundownCompleted 例程更新共享对象的运行状态,以指示该对象的运行已完成。 |
ExRundownCompletedCacheAware 本主题介绍 ExRundownCompletedCacheAware 函数。 |
ExSecurePoolUpdate ExSecurePoolUpdate 函数更新安全池分配的内容。 |
ExSecurePoolValidate ExSecurePoolValidate 函数验证提供的安全池是否确实是以前创建的安全池。 |
ExSetFirmwareEnvironmentVariable ExSetFirmwareEnvironmentVariable 例程设置指定的系统固件环境变量的值。 |
ExSetResourceOwnerPointer ExSetResourceOwnerPointer 例程设置执行资源的所有者线程指针。 |
ExSetResourceOwnerPointerEx ExSetResourceOwnerPointerEx 例程将执行资源的所有权从调用线程转移到所有者指针,所有者指针是标识资源所有者的系统地址。 |
ExSetTimer ExSetTimer 例程启动计时器操作,并将计时器设置为在指定的到期时间过期。 |
ExSetTimerResolution ExSetTimerResolution 例程修改系统时钟中断的频率。 请谨慎使用此例程 (请参阅以下“备注”部分) 。 |
ExSizeOfRundownProtectionCacheAware 本主题介绍 ExSizeOfRundownProtectionCacheAware 函数。 |
ExSystemTimeToLocalTime ExSystemTimeToLocalTime 例程将 GMT 系统时间值转换为当前时区的本地系统时间。 |
EXT_CALLBACK exTimerCallback 回调例程在EX_TIMER计时器对象的时间间隔到期后运行。 |
EXT_DELETE_CALLBACK 当操作系统删除EX_TIMER计时器对象时,将运行 ExTimerDeleteCallback 回调例程。 |
ExTryConvertSharedSpinLockExclusive ExTryConvertSharedSpinLockExclusive 例程尝试将旋转锁的访问状态从获取的共享访问转换为独占访问。 |
ExTryToAcquireFastMutex 详细了解 ExTryToAcquireFastMutex 例程。 |
ExUnregisterCallback ExUnregisterCallback 例程从通知过程中要调用的例程列表中删除以前使用回调对象注册的回调例程。 |
ExUuidCreate ExUuidCreate 例程将 UUID (GUID) 结构初始化为新生成的值。 |
ExWaitForRundownProtectionRelease ExWaitForRundownProtectionRelease 例程将一直等待,直到已被授予运行保护的所有驱动程序完成对共享对象的访问。 |
ExWaitForRundownProtectionReleaseCacheAware 本主题介绍 ExWaitForRundownProtectionReleaseCacheAware 函数。 |
FIELD_OFFSET FIELD_OFFSET宏 (miniport.h) 返回指定已知结构类型中指定字段的字节偏移量。 |
FIELD_OFFSET FIELD_OFFSET宏 (wdm.h) 返回指定已知结构类型中指定字段的字节偏移量。 |
FirstEntrySList FirstEntrySList 例程返回序列单独链接列表中的第一个条目。 |
FPGA_BUS_SCAN 保留供将来使用。 在 FPGA 设备的父级处触发总线扫描。 |
FPGA_CONTROL_CONFIG_SPACE 保留供将来使用。 启用或禁用对 FPGA 设备的配置空间的访问。 |
FPGA_CONTROL_ERROR_REPORTING 保留供将来使用。 切换 FPGA 设备及其父桥的错误报告。 |
FPGA_CONTROL_LINK 保留以供将来使用FPGA_CONTROL_LINK。 |
FREE_FUNCTION_EX 当客户端尝试将该条目插入到已满的 lookaside 列表中时,LookasideListFreeEx 例程释放 lookaside 列表条目的存储。 |
GET_D3COLD_CAPABILITY GetBusDriverD3ColdSupport 例程使设备的驱动程序能够查询枚举总线驱动程序是否支持 D3cold 设备电源状态。 |
GET_D3COLD_LAST_TRANSITION_STATUS GetLastTransitionStatus 例程使设备的驱动程序能够查询到 D3hot 子状态的最新转换后是否转换到 D3cold 子状态。 |
GET_DEVICE_RESET_STATUS 本主题介绍GET_DEVICE_RESET_STATUS回调函数。 |
GET_DMA_ADAPTER GetDmaAdapter 例程返回目标设备的DMA_ADAPTER结构。 |
GET_IDLE_WAKE_INFO GetIdleWakeInfo 例程使设备的驱动程序能够发现设备可以从中发出唤醒事件信号的设备电源状态。 |
GET_SDEV_IDENTIFIER 此材料尚不可用。 此占位符主题作为文档示例提供,可能包含在更高版本中。 |
GET_SET_DEVICE_DATA GetBusData 例程从设备的配置空间读取数据。 |
GET_UPDATED_BUS_RESOURCE 报告最新的资源列表。 |
HalAllocateHardwareCounters HalAllocateHardwareCounters 例程分配一组硬件性能计数器。 |
HalExamineMBR HalExamineMBR 函数 (MBR) 磁盘读取主启动记录,如果 MBR 为指定类型,则返回 MBR 数据。 |
HalFreeHardwareCounters HalFreeHardwareCounters 例程释放上一次调用 HalAllocateHardwareCounters 例程时获取的一组硬件性能计数器。 |
HalGetBusDataByOffset 此函数从偏移量开始检索有关 I/O 总线上的槽或地址的信息。 |
HalSetBusDataByOffset 此函数在具有已发布的标准接口的动态可配置 I/O 总线上设置设备的总线配置数据。 |
IMAGE_POLICY_OVERRIDE 为IMAGE_POLICY_OVERRIDE宏保留。 |
InitializeListHead InitializeListHead 例程初始化LIST_ENTRY结构,该结构表示双链接列表的标头。 |
InitializeSListHead InitializeSListHead 例程 (或 ExInitializeSListHead) 初始化表示序列单一链接列表的标头的SLIST_HEADER结构。 |
InsertHeadList InsertHeadList 例程在LIST_ENTRY结构的双链接列表的标头处插入一个条目。 |
InsertTailList InsertTailList 例程在LIST_ENTRY结构的双链接列表的末尾插入一个条目。 |
InterlockedAnd InterlockedAnd (miniport.h) 宏以原子方式计算具有指定变量和指定值的按位 AND 运算。 |
InterlockedAnd InterlockedAnd (wdm.h) 宏以原子方式计算具有指定变量和指定值的按位 AND 运算。 |
InterlockedCompareExchange InterlockedCompareExchange 例程执行原子操作,将 Destination 指向的输入值与 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) 以原子方式计算具有指定变量和指定值的按位异或运算。 |
InterlockedXor interlockedXor 函数 (wdm.h) 以原子方式计算具有指定变量和指定值的按位异或运算。 |
IO_COMPLETION_ROUTINE IoCompletion 例程完成 I/O 操作的处理。 |
IO_CSQ_ACQUIRE_LOCK 系统使用 CsqAcquireLock 例程获取驱动程序实现的取消安全 IRP 队列的锁。 |
IO_CSQ_COMPLETE_CANCELED_IRP 系统使用 CsqCompleteCanceledIrp 例程向驱动程序发出信号,表明它可以完成已取消的 IRP。 |
IO_CSQ_INSERT_IRP 系统使用 CsqInsertIrp 例程将 IRP 插入驱动程序实现的取消安全 IRP 队列。 |
IO_CSQ_INSERT_IRP_EX 系统使用 CsqInsertIrpEx 例程将 IRP 插入驱动程序实现的取消安全 IRP 队列。 |
IO_CSQ_PEEK_NEXT_IRP 系统使用 CsqPeekNextIrp 例程在驱动程序实现的取消安全 IRP 队列中查找下一个匹配的 IRP。 |
IO_CSQ_RELEASE_LOCK 系统使用 CsqReleaseLock 例程释放使用 CsqAcquireLock 获取的锁。 |
IO_CSQ_REMOVE_IRP 系统使用 CsqRemoveIrp 例程从驱动程序实现的取消安全 IRP 队列中删除指定的 IRP。 |
IO_DPC_ROUTINE 在 InterruptService 例程返回后,DpcForIsr 例程完成 I/O 操作的服务。 |
IO_SESSION_NOTIFICATION_FUNCTION IO_SESSION_NOTIFICATION_FUNCTION函数类型定义回调例程,驱动程序通过该例程接收有关驱动程序感兴趣的用户会话状态更改的通知。 |
IO_TIMER_ROUTINE IoTimer 例程是一个 DPC,如果已注册,则每秒调用一次。 |
IO_WORKITEM_ROUTINE WorkItem 例程对 IoQueueWorkItem 例程排队的工作项执行处理。 |
IO_WORKITEM_ROUTINE_EX WorkItemEx 例程对 IoQueueWorkItemEx 或 IoTryQueueWorkItem 例程排队的工作项执行处理。 |
IoAcquireCancelSpinLock 详细了解 IoAcquireCancelSpinLock 例程。 |
IoAcquireKsrPersistentMemory Microsoft 保留 IoAcquireKsrPersistentMemory 函数,仅供内部使用。 请勿在代码中使用此函数。 |
IoAcquireKsrPersistentMemoryEx Microsoft 保留 IoAcquireKsrPersistentMemoryEx 函数,仅供内部使用。 请勿在代码中使用此函数。 |
IoAcquireRemoveLock IoAcquireRemoveLock 例程递增删除锁的计数,指示不应从设备堆栈中分离或删除关联的设备对象。 |
IoAdjustPagingPathCount IoAdjustPagingPathCount 例程递增或递减调用方提供的页文件计数器作为原子操作。 |
IoAllocateAdapterChannel 已弃用。 使用 PALLOCATE_ADAPTER_CHANNEL。 |
IoAllocateController IoAllocateController 例程设置对驱动程序提供的 ControllerControl 例程的调用,只要设备控制器(由给定控制器对象表示)可用于对目标设备(由给定设备对象表示)执行 I/O 操作。 |
IoAllocateDriverObjectExtension IoAllocateDriverObjectExtension 例程分配每个驱动程序上下文区域(称为驱动程序对象扩展),并为其分配唯一标识符。 |
IoAllocateErrorLogEntry IoAllocateErrorLogEntry 例程分配错误日志条目,并返回指向调用方用来提供有关 I/O 错误信息的数据包的指针。 |
IoAllocateIrp IoAllocateIrp 例程分配 IRP,给定调用方下分层的每个驱动程序的 I/O 堆栈位置数,以及调用方(可选)的 I/O 堆栈位置数。 |
IoAllocateIrpEx IoAllocateIrpEx (IRP) 分配 I/O 请求数据包 |
IoAllocateMdl 给定缓冲区的起始地址和长度,IoAllocateMdl 例程分配内存描述符列表 (MDL) 足以映射缓冲区。 (可选)此例程将 MDL 与 IRP 相关联。 |
IoAllocateWorkItem IoAllocateWorkItem 例程分配工作项。 |
IoAssignArcName IoAssignArcName 例程在创建物理设备的 ARC 名称和相应设备对象的名称之间创建符号链接。 |
IoAttachDevice IoAttachDevice 例程将调用方的设备对象附加到命名的目标设备对象,以便首先将绑定到目标设备的 I/O 请求路由到调用方。 |
IoAttachDeviceToDeviceStack IoAttachDeviceToDeviceStack 例程将调用方的设备对象附加到链中最高的设备对象,并返回指向以前最高的设备对象的指针。 |
IoBuildAsynchronousFsdRequest IoBuildAsynchronousFsdRequest 例程分配并设置要发送到较低级别的驱动程序的 IRP。 |
IoBuildDeviceIoControlRequest IoBuildDeviceIoControlRequest 例程为同步处理的设备控制请求分配和设置 IRP。 |
IoBuildPartialMdl IoBuildPartialMdl 例程 (MDL) 生成新的内存描述符列表,该列表表示现有 MDL 描述的缓冲区的一部分。 |
IoBuildSynchronousFsdRequest IoBuildSynchronousFsdRequest 例程为同步处理的 I/O 请求分配和设置 IRP。 |
IoCallDriver IoCallDriver 例程将 IRP 发送到与指定设备对象关联的驱动程序。 |
IoCancelIrp IoCancelIrp 例程在给定的 IRP 中设置取消位,并调用 IRP 的取消例程(如果有)。 |
IoCheckFileObjectOpenedAsCopyDestination 详细了解 IoCheckFileObjectOpenedAsCopyDestination 函数。 |
IoCheckFileObjectOpenedAsCopySource 详细了解 IoCheckFileObjectOpenedAsCopySource 函数。 |
IoCheckLinkShareAccess 文件系统驱动程序 (FSD) 或其他最高级别的驱动程序调用 IoCheckLinkShareAccess 例程,以检查是否允许对文件对象的链接共享访问。 |
IoCheckShareAccess 文件系统驱动程序 (FSD) 或其他最高级别的驱动程序调用 IoCheckShareAccess 例程,以检查是否允许对文件对象的共享访问。 |
IoCheckShareAccessEx 文件系统驱动程序 (FSD) 或其他最高级别驱动程序调用 IoCheckShareAccessEx 例程,以检查是否允许对文件对象的共享访问。 |
IoClearActivityIdThread IoClearActivityIdThread 例程清除当前线程的活动 ID。 |
IoConnectInterrupt IoConnectInterrupt 例程 (ISR) 注册设备驱动程序的 InterruptService 例程,以便在设备在任何指定的处理器集上中断时调用它。 |
IoConnectInterruptEx 有关详细信息,请参阅 WdmlibIoConnectInterruptEx 函数。#define IoConnectInterruptEx WdmlibIoConnectInterruptEx |
IoCopyCurrentIrpStackLocationToNext IoCopyCurrentIrpStackLocationToNext 例程将 IRP 堆栈参数从当前 I/O 堆栈位置复制到下一个较低驱动程序的堆栈位置。 |
IoCreateController IoCreateController 例程为控制器对象分配内存,并使用驱动程序确定大小的控制器扩展初始化控制器对象。 |
IoCreateDevice IoCreateDevice 例程创建供驱动程序使用的设备对象。 |
IoCreateFile IoCreateFile 例程会导致创建新文件或目录,或者打开现有文件、设备、目录或卷,为调用方提供文件对象的句柄。 |
IoCreateNotificationEvent IoCreateNotificationEvent 例程创建或打开一个命名通知事件,用于通知一个或多个执行线程已发生事件。 |
IoCreateSymbolicLink IoCreateSymbolicLink 例程在设备对象名称和设备的用户可见名称之间设置符号链接。 |
IoCreateSynchronizationEvent IoCreateSynchronizationEvent 例程创建或打开一个命名的同步事件,用于序列化两个其他不相关的驱动程序之间的硬件访问。 |
IoCreateSystemThread IoCreateSystemThread 例程创建在内核模式下执行的系统线程,并为线程提供句柄。 |
IoCreateUnprotectedSymbolicLink IoCreateUnprotectedSymbolicLink 例程在设备对象名称和相应的 Win32 可见名称之间设置不受保护的符号链接。 |
IoCsqInitialize IoCsqInitialize 例程初始化驱动程序的取消安全 IRP 队列调度表。 |
IoCsqInitializeEx IoCsqInitializeEx 例程初始化取消安全 IRP 队列的调度表。 |
IoCsqInsertIrp IoCsqInsertIrp 例程在驱动程序的取消安全 IRP 队列中插入 IRP。 |
IoCsqInsertIrpEx IoCsqInsertIrpEx 例程将 IRP 插入驱动程序的取消安全 IRP 队列。 |
IoCsqRemoveIrp IoCsqRemoveIrp 例程从队列中删除特定的 IRP。 |
IoCsqRemoveNextIrp IoCsqRemoveNextIrp 例程删除队列中的下一个匹配 IRP。 |
IoDeassignArcName IoDeassignArcName 例程删除设备的 ARC 名称与命名设备对象之间的符号链接。 |
IoDecrementKeepAliveCount IoDecrementKeepAliveCount 例程递减与特定设备上的 Windows 应用关联的引用计数。 |
IoDeleteController IoDeleteController 例程从系统中删除给定的控制器对象,例如,当创建它的驱动程序被卸载时。 |
IoDeleteDevice IoDeleteDevice 例程从系统中删除设备对象,例如,从系统中删除基础设备时。 |
IoDeleteSymbolicLink IoDeleteSymbolicLink 例程从系统中删除符号链接。 |
IoDetachDevice IoDetachDevice 例程在调用方的设备对象和较低驱动程序的设备对象之间释放附件。 |
IoDisconnectInterrupt IoDisconnectInterrupt 例程在暂停或删除设备或卸载驱动程序时释放设备驱动程序的中断对象集 () 。 |
IoDisconnectInterruptEx 有关详细信息,请参阅 WdmlibIoDisconnectInterruptEx function.#define IoDisconnectInterruptEx WdmlibIoDisconnectInterruptEx |
IoEnumerateKsrPersistentMemoryEx Microsoft 保留 IoEnumerateKsrPersistentMemoryEx 函数仅供内部使用。 请勿在代码中使用此函数。 |
IofCallDriver 请改为调用 IoCallDriver 。 将 IRP 发送到与指定设备对象关联的驱动程序。 |
IofCompleteRequest IoCompleteRequest 例程指示调用方已完成给定 I/O 请求的所有处理,并将给定的 IRP 返回到 I/O 管理器。 |
IoForwardIrpSynchronously IoForwardIrpSynchronously 例程将 IRP 发送到指定的驱动程序,并等待该驱动程序完成 IRP。 |
IoFreeController 当驱动程序完成 I/O 请求时,IoFreeController 例程会释放以前分配的控制器对象。 |
IoFreeErrorLogEntry IoFreeErrorLogEntry 例程释放未使用的错误日志条目。 |
IoFreeIrp IoFreeIrp 例程从调用方 IoCompletion 例程释放调用方分配的 IRP。 |
IoFreeKsrPersistentMemory Microsoft 保留 IoFreeKsrPersistentMemory 函数仅供内部使用。 请勿在代码中使用此函数。 |
IoFreeMdl IoFreeMdl 例程释放调用方分配的内存描述符列表 (MDL) 。 |
IoFreeWorkItem IoFreeWorkItem 例程释放由 IoAllocateWorkItem 分配的工作项。 |
IoGetActivityIdIrp IoGetActivityIdIrp 例程检索与 IRP 关联的当前活动 ID。 |
IoGetActivityIdThread IoGetActivityIdThread 例程返回与当前线程关联的活动 ID。 |
IoGetAffinityInterrupt 有关详细信息,请参阅 WdmlibIoGetAffinityInterrupt function.#define IoGetAffinityInterrupt WdmlibIoGetAffinityInterrupt |
IoGetAttachedDeviceReference 详细了解 IoGetAttachedDeviceReference 例程。 |
IoGetAttachedDeviceReference wdm.h 中的 IoGetAttachedDeviceReference 例程返回指向驱动程序堆栈中最高级别设备对象的指针,并递增引用计数。 |
IoGetBootDiskInformation IoGetBootDiskInformation 例程返回描述启动磁盘和系统磁盘的信息。 |
IoGetConfigurationInformation ioGetConfigurationInformation 函数 (ntddk.h) 返回指向 I/O 管理器的全局配置信息结构的指针。 |
IoGetConfigurationInformation 详细了解 IoGetConfigurationInformation 函数。 |
IoGetContainerInformation IoGetContainerInformation 例程提供有关用户会话的当前状态的信息。 |
IoGetCurrentIrpStackLocation IoGetCurrentIrpStackLocation 例程返回指向调用方在指定 IRP 中的 I/O 堆栈位置的指针。 |
IoGetCurrentProcess IoGetCurrentProcess 例程返回指向当前进程的指针。 |
IoGetDeviceDirectory 返回磁盘上特定于指定驱动程序对象的目录的句柄,驱动程序可以在其中读取和写入文件。 |
IoGetDeviceInterfaceAlias IoGetDeviceInterfaceAlias 例程返回指定设备接口实例的别名设备接口(如果该别名存在)。 |
IoGetDeviceInterfacePropertyData IoGetDeviceInterfacePropertyData 例程检索设备接口属性的当前值。 |
IoGetDeviceInterfaces IoGetDeviceInterfaces 例程返回特定设备接口类的设备接口实例列表, (例如系统上支持 HID 接口) 的所有设备。 |
IoGetDeviceNumaNode IoGetDeviceNumaNode 例程获取设备的节点号。 |
IoGetDeviceObjectPointer IoGetDeviceObjectPointer 例程返回指向命名设备对象的堆栈中顶部对象的指针,以及指向相应文件对象的指针(如果可以授予对对象的请求访问权限)。 |
IoGetDeviceProperty IoGetDeviceProperty 例程检索有关设备的信息,例如配置信息及其 PDO 的名称。 |
IoGetDevicePropertyData IoGetDevicePropertyData 例程检索设备属性的当前设置。 |
IoGetDmaAdapter IoGetDmaAdapter 例程返回指向物理设备对象的 DMA 适配器结构的指针。 |
IoGetDriverDirectory 返回磁盘上目录的句柄,驱动程序可以从该目录读取和写入文件。 该目录中的文件适用于特定的驱动程序对象。 |
IoGetDriverObjectExtension IoGetDriverObjectExtension 例程检索以前按驱动程序分配的上下文区域。 |
IoGetFileObjectGenericMapping IoGetFileObjectGenericMapping 例程返回有关每个泛型访问权限与文件对象的特定访问权限集之间的映射的信息。 |
IoGetFunctionCodeFromCtlCode IoGetFunctionCodeFromCtlCode 宏返回 I/O 控制代码中包含的函数代码的值。 |
IoGetInitialStack IoGetInitialStack 例程返回当前线程堆栈的基址。 |
IoGetInitiatorProcess IoGetInitiatorProcess 例程检索发起创建文件对象的进程(如果不同于发出创建的进程)。 |
IoGetIommuInterface 检索指向接口的指针,该接口包含指向 IOMMU 例程的指针。 |
IoGetIommuInterfaceEx 检索指向包含一组 IOMMU 例程的扩展接口的指针。 |
IoGetIoPriorityHint IoGetIoPriorityHint 例程从 IRP 获取优先级提示值。 |
IoGetNextIrpStackLocation IoGetNextIrpStackLocation 例程为更高级别的驱动程序提供对 IRP 中下一个较低驱动程序的 I/O 堆栈位置的访问权限,以便调用方可以为较低级别的驱动程序设置它。 |
IoGetPagingIoPriority IoGetPagingIoPriority 例程指示分页 I/O 请求的优先级。 |
IoGetRelatedDeviceObject 给定文件对象后,IoGetRelatedDeviceObject 例程返回指向相应设备对象的指针。 |
IoGetRemainingStackSize IoGetRemainingStackSize 例程返回当前可用的内核模式堆栈空间量。 |
IoGetShadowFileInformation 本主题介绍 IoGetShadowFileInformation 函数。 |
IoGetStackLimits IoGetStackLimits 例程返回当前线程的堆栈帧的边界。 |
IoIncrementKeepAliveCount IoIncrementKeepAliveCount 例程递增与特定设备上的 Windows 应用进程关联的引用计数。 |
IoInitializeDpcRequest IoInitializeDpcRequest 例程注册驱动程序提供的 DpcForIsr 例程。 |
IoInitializeIrp IoInitializeIrp 例程初始化调用方分配的给定 IRP。 |
IoInitializeRemoveLock IoInitializeRemoveLock 例程初始化设备对象的 remove lock。 |
IoInitializeTimer IoInitializeTimer 例程设置与给定设备对象关联的驱动程序提供的 IoTimer 例程。 |
IoInitializeWorkItem IoInitializeWorkItem 例程初始化调用方已分配的工作项。 |
IoInvalidateDeviceRelations IoInvalidateDeviceRelations 例程通知 PnP 管理器,设备 (的关系(如总线关系、弹出关系、删除关系和目标设备关系) )已更改。 |
IoInvalidateDeviceState IoInvalidateDeviceState 例程通知 PnP 管理器设备 PnP 状态的某些方面已更改。 |
IoIs32bitProcess IoIs32bitProcess 例程检查当前 I/O 请求的发起方是否为 32 位用户模式应用程序。 |
IoIsErrorUserInduced IoIsErrorUserInduced 例程确定在处理对可移动媒体设备的请求时遇到的 I/O 错误是否由用户引起。 |
IoIsValidIrpStatus IoIsValidIrpStatus 例程验证指定的 NTSTATUS 状态代码值。 |
IoIsWdmVersionAvailable IoIsWdmVersionAvailable 例程检查操作系统是否支持给定的 WDM 版本。 |
IoMakeAssociatedIrp 此例程保留供文件系统和文件系统筛选器驱动程序使用。 |
IoMarkIrpPending IoMarkIrpPending 例程标记指定的 IRP,指示驱动程序的调度例程随后STATUS_PENDING返回,因为其他驱动程序例程需要进一步处理。 |
IOMMU_DEVICE_CREATE 获取物理设备对象并创建IOMMU_DMA_DEVICE。 |
IOMMU_DEVICE_DELETE 删除提供的IOMMU_DMA_DEVICE。 |
IOMMU_DEVICE_FAULT_HANDLER 报告来自特定设备和域的故障。 |
IOMMU_DEVICE_QUERY_DOMAIN_TYPES 查询允许IOMMU_DMA_DEVICE附加到的可用域类型,具体取决于环境因素,例如平台和 DMA 防护策略。 |
IOMMU_DOMAIN_ATTACH_DEVICE 将设备附加到现有域。 |
IOMMU_DOMAIN_ATTACH_DEVICE_EX 将IOMMU_DMA_DEVICE附加到现有 DMA 设备域。 |
IOMMU_DOMAIN_CONFIGURE 配置要使用的域。 |
IOMMU_DOMAIN_CREATE (一组页表的容器) 创建新的 DMA 重新映射设备域。 |
IOMMU_DOMAIN_CREATE_EX 基于提供的域类型创建新的 DMA 设备域。 |
IOMMU_DOMAIN_DELETE 删除现有域。 |
IOMMU_DOMAIN_DETACH_DEVICE 从现有域分离设备。 |
IOMMU_DOMAIN_DETACH_DEVICE_EX 从现有域分离IOMMU_DMA_DEVICE。 |
IOMMU_FLUSH_DOMAIN 刷新与此域匹配的所有条目的 TLB。 |
IOMMU_FLUSH_DOMAIN_VA_LIST 刷新与指定域的 ASID 和所提供的列表中某个地址匹配的所有条目的 TLB。 |
IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE 释放由 IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE 创建的逻辑地址令牌。 |
IOMMU_INTERFACE_STATE_CHANGE_CALLBACK 每当发生影响DMA_IOMMU_INTERFACE_EX的系统状态更改时,都会调用此例程。 |
IOMMU_MAP_IDENTITY_RANGE 为提供的域中提供的 MDL 创建标识映射。 |
IOMMU_MAP_IDENTITY_RANGE_EX 为提供的域中提供的物理地址空间创建标识映射。 |
IOMMU_MAP_LOGICAL_RANGE 将一系列页面映射到域的地址空间中。 |
IOMMU_MAP_LOGICAL_RANGE_EX 将物理地址空间映射到 IOMMU_DMA_DOMAIN的逻辑地址空间中。 |
IOMMU_MAP_RESERVED_LOGICAL_RANGE 映射保留的逻辑范围。 |
IOMMU_QUERY_INPUT_MAPPINGS 尝试查找对给定设备有效的输入映射 ID,并使用这些 ID 填充提供的缓冲区。 |
IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK 允许调用方注册每当发生与DMA_IOMMU_INTERFACE_EX相关的任何状态更改时要调用的回调。 |
IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE 预先分配可用于将来映射的逻辑地址空间。 |
IOMMU_SET_DEVICE_FAULT_REPORTING 此例程将设备故障报告状态设置为已附加到域的设备。 |
IOMMU_SET_DEVICE_FAULT_REPORTING_EX 此例程设置已附加到域的设备上的设备故障报告状态。 |
IOMMU_UNMAP_IDENTITY_RANGE 删除指定 MDL 的标识映射。 |
IOMMU_UNMAP_IDENTITY_RANGE_EX 删除由 IOMMU_MAP_IDENTITY_RANGE_EX 创建的标识映射。 |
IOMMU_UNMAP_LOGICAL_RANGE 取消映射域中的线性范围。 |
IOMMU_UNMAP_RESERVED_LOGICAL_RANGE 取消映射以前映射的保留逻辑范围。 |
IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK 允许调用方取消注册已注册IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK。 |
IoOpenDeviceInterfaceRegistryKey IoOpenDeviceInterfaceRegistryKey 例程返回注册表项的句柄,用于存储有关特定设备接口实例的信息。 |
IoOpenDeviceRegistryKey IoOpenDeviceRegistryKey 例程返回特定设备实例的注册表状态位置的句柄。 |
IoOpenDriverRegistryKey 保留给 IoOpenDriverRegistryKey 函数。 |
IoPropagateActivityIdToThread IoPropagateActivityIdToThread 例程将 IRP 中的活动 ID 与当前线程相关联。 |
IoQueryFullDriverPath IoQueryFullDriverPath 例程检索为指定驱动程序对象加载的二进制文件的完整路径名称。 |
IoQueryKsrPersistentMemorySize Microsoft 保留 IoQueryKsrPersistentMemorySize 函数仅供内部使用。 请勿在代码中使用此函数。 |
IoQueryKsrPersistentMemorySizeEx Microsoft 保留 IoQueryKsrPersistentMemorySizeEx 函数仅供内部使用。 请勿在代码中使用此函数。 |
IoQueueWorkItem IoQueueWorkItem 例程将 WorkItem 例程与工作项相关联,并将工作项插入队列中供系统工作线程稍后处理。 |
IoQueueWorkItemEx IoQueueWorkItemEx 例程将 WorkItemEx 例程与工作项相关联,并将工作项插入队列中供系统工作线程稍后处理。 |
IoRaiseHardError IoRaiseHardError 例程会导致出现一个对话框,警告用户发生设备 I/O 错误,这可能指示物理设备出现故障。 |
IoRaiseInformationalHardError IoRaiseInformationalHardError 例程向用户发送一个对话框,警告有关设备 I/O 错误的警告,指示用户 I/O 请求失败的原因。 |
IoRegisterBootDriverCallback IoRegisterBootDriverCallback 例程注册在初始化启动驱动程序及其依赖 DLL 期间要调用的BOOT_DRIVER_CALLBACK_FUNCTION例程。 |
IoRegisterBootDriverReinitialization IoRegisterBootDriverReinitialization 例程由启动驱动程序调用,以向 I/O 管理器注册驱动程序的重新初始化例程,该管理器将在枚举并启动所有设备后调用。 |
IoRegisterContainerNotification IoRegisterContainerNotification 例程注册内核模式驱动程序,以接收有关指定事件类的通知。 |
IoRegisterDeviceInterface IoRegisterDeviceInterface 例程注册设备接口类(如果以前尚未注册),并创建接口类的新实例,驱动程序随后可以启用该实例供应用程序或其他系统组件使用。 |
IoRegisterDriverReinitialization IoRegisterDriverReinitialization 例程在其初始化或重新初始化期间由驱动程序调用,以注册其要再次调用的 Reinitialize 例程,然后驱动程序(可能是系统的)初始化完成。 |
IoRegisterLastChanceShutdownNotification IoRegisterLastChanceShutdownNotification 例程注册驱动程序,以在系统关闭后(刷新所有文件系统后)接收IRP_MJ_SHUTDOWN IRP。 |
IoRegisterPlugPlayNotification IoRegisterPlugPlayNotification 例程注册一个即插即用 (PnP) 通知回调例程,该例程将在发生指定类别的 PnP 事件时调用。 |
IoRegisterShutdownNotification IoRegisterShutdownNotification 例程注册驱动程序,以在系统关闭时接收IRP_MJ_SHUTDOWN IRP。 |
IoReleaseCancelSpinLock 详细了解 IoReleaseCancelSpinLock 例程。 |
IoReleaseRemoveLock IoReleaseRemoveLock 例程释放通过先前调用 IoAcquireRemoveLock 获取的移除锁。 |
IoReleaseRemoveLockAndWait IoReleaseRemoveLockAndWait 例程释放驱动程序在上次调用 IoAcquireRemoveLock 时获取的删除锁,并等待所有获取的锁释放。 |
IoRemoveLinkShareAccess IoRemoveLinkShareAccess 例程删除文件对象的给定打开实例的访问和链接共享访问信息。 |
IoRemoveShareAccess IoRemoveShareAccess 例程删除文件对象的给定打开实例的访问和共享访问信息。 |
IoReportDetectedDevice IoReportDetectedDevice 例程向 PnP 管理器报告非 PnP 设备。 |
IoReportInterruptActive IoReportInterruptActive 例程通知操作系统, (ISR) 的已注册中断服务例程处于活动状态,并已准备好处理中断请求。 |
IoReportInterruptInactive IoReportInterruptInactive 例程通知操作系统, (ISR) 注册的中断服务例程处于非活动状态,并且不期望中断请求。 |
IoReportResourceForDetection IoReportResourceForDetection 例程声明旧设备的配置注册表中的硬件资源。 |
IoReportRootDevice IoReportRootDevice 例程向 PnP 管理器报告 PnP 总线驱动程序无法检测到的设备。 IoReportRootDevice 仅允许为每个驱动程序创建一个设备。 |
IoReportTargetDeviceChange IoReportTargetDeviceChange 例程通知 PnP 管理器设备上发生了自定义事件。 |
IoReportTargetDeviceChangeAsynchronous IoReportTargetDeviceChangeAsynchronous 例程通知 PnP 管理器设备上发生了自定义事件。 |
IoRequestDeviceEject IoRequestDeviceEject 例程通知 PnP 管理器设备弹出按钮已按下。 |
IoRequestDpc IoRequestDpc 例程将驱动程序提供的 DpcForIsr 例程排队,以较低的 IRQL 完成中断驱动的 I/O 处理。 |
IoReserveKsrPersistentMemory Microsoft 保留 IoReserveKsrPersistentMemory 函数仅供内部使用。 请勿在代码中使用此函数。 |
IoReserveKsrPersistentMemoryEx Microsoft 保留 IoReserveKsrPersistentMemoryEx 函数仅供内部使用。 请勿在代码中使用此函数。 |
IoReuseIrp IoReuseIrp 例程重新初始化 IRP,以便可以重复使用。 |
Iosb64ToIosb Iosb64ToIosb 函数... |
IosbToIosb64 IosbToIosb64 函数... |
IoSetActivityIdIrp IoSetActivityIdIrp 例程将活动 ID 与 IRP 相关联。 |
IoSetActivityIdThread IoSetActivityIdThread 例程将活动 ID 与当前线程相关联。 驱动程序在跟踪感知并在工作线程上发出 I/O 时,应使用此例程。 |
IoSetCancelRoutine IoSetCancelRoutine 例程设置驱动程序提供的 Cancel 例程,以在取消给定的 IRP 时调用。 |
IoSetCompletionRoutine IoSetCompletionRoutine 例程注册 IoCompletion 例程,该例程将在下一个较低级别的驱动程序完成给定 IRP 的请求操作时调用。 |
IoSetCompletionRoutineEx IoSetCompletionRoutineEx 例程注册一个 IoCompletion 例程,当下一个较低级别的驱动程序已完成给定 IRP 的请求操作时调用该例程。 |
IoSetDeviceInterfacePropertyData IoSetDeviceInterfacePropertyData 例程修改设备接口属性的当前值。 |
IoSetDeviceInterfaceState IoSetDeviceInterfaceState 例程启用或禁用以前注册的设备接口类的实例。 |
IoSetDevicePropertyData IoSetDevicePropertyData 例程修改设备属性的当前设置。 |
IoSetHardErrorOrVerifyDevice 较低级别的驱动程序调用 IoSetHardErrorOrVerifyDevice 例程来标识遇到错误的可移动媒体设备,以便文件系统驱动程序可以提示用户验证介质是否有效。 |
IoSetIoPriorityHint IoSetIoPriorityHint 例程设置 IRP 的优先级提示值。 |
IoSetLinkShareAccess IoSetLinkShareAccess 例程设置共享指定文件对象的链接的访问权限。 |
IoSetMasterIrpStatus IoSetMasterIrpStatus 例程有条件地将 IRP 中的 Status 值替换为指定的 NTSTATUS 值。 |
IoSetNextIrpStackLocation IoSetNextIrpStackLocation 例程将驱动程序分配的 IRP 中的 IRP 堆栈位置设置为调用方的位置。 |
IoSetShadowFileInformation 本主题介绍 IoSetShadowFileInformation 函数。 |
IoSetShareAccess IoSetShareAccess 例程设置共享给定文件对象的访问权限。 |
IoSetShareAccessEx IoSetShareAccessEx 例程设置共享指定文件对象的访问权限。 |
IoSetStartIoAttributes ntifs.h 中的 IoSetStartIoAttributes 例程为驱动程序的 StartIo 例程设置属性。 |
IoSetStartIoAttributes wdm.h 中的 IoSetStartIoAttributes 例程为驱动程序的 StartIo 例程设置属性。 |
IoSetSystemPartition IoSetSystemPartition 例程设置系统的启动分区。 |
IoSetThreadHardErrorMode IoSetThreadHardErrorMode 例程启用或禁用当前线程的硬错误报告。 |
IoSizeOfIrp 详细了解 IoSizeOfIrp 例程。 |
IoSizeOfIrp 给定 IRP 中的堆栈位置数,wdm.h 中的 IoSizeOfIrp 例程确定 IRP 的大小(以字节为单位)。 |
IoSizeofWorkItem IoSizeofWorkItem 例程返回IO_WORKITEM结构的大小(以字节为单位)。 |
IoStartNextPacket 详细了解 IoStartNextPacket 例程。 |
IoStartNextPacket wdm.h 中的 IoStartNextPacket 例程从给定设备对象的关联设备队列中取消下一个 IRP 的排队,并调用驱动程序的 StartIo 例程。 |
IoStartNextPacketByKey 详细了解 IoStartNextPacketByKey 例程。 |
IoStartNextPacketByKey wdm.h 中的 IoStartNextPacketByKey 例程从指定设备对象的关联设备队列取消下一个 I/O 请求数据包的排队。 |
IoStartPacket 详细了解 IoStartPacket 例程。 |
IoStartPacket wdm.h 中的 IoStartPacket 例程使用 IRP 调用驱动程序的 StartIo 例程,或将 IRP 插入给定设备对象的设备队列中。 |
IoStartTimer 详细了解 IoStartTimer 例程。 |
IoStartTimer wdm.h 中的 IoStartTimer 例程启用与给定设备对象关联的计时器,因此驱动程序提供的 IoTimer 例程每秒调用一次。 |
IoStopTimer 详细了解 IoStopTimer 例程。 |
IoStopTimer wdm.h 中的 IoStopTimer 例程禁用指定设备对象的计时器,以便不调用驱动程序提供的 IoTimer 例程。 |
IoTransferActivityId IoTransferActivityId 例程代表调用方使用 I/O 跟踪提供程序记录 ETW 传输事件。 这允许驱动程序关联两个相关活动 ID,而无需启用特定的提供程序。 |
IoUninitializeWorkItem IoUninitializeWorkItem 例程取消初始化由 IoInitializeWorkItem 初始化的工作项。 |
IoUnregisterBootDriverCallback IoUnRegisterBootDriverCallback 例程取消注册以前注册BOOT_DRIVER_CALLBACK_FUNCTION例程。 |
IoUnregisterContainerNotification IoUnregisterContainerNotification 例程取消以前由 IoRegisterContainerNotification 例程创建的容器通知注册。 |
IoUnregisterPlugPlayNotification 此例程在 Windows 7 及更高版本的 Windows 中已过时。 IoUnregisterPlugPlayNotification 例程删除 PnP 事件的驱动程序回调例程的注册。 |
IoUnregisterPlugPlayNotificationEx IoUnregisterPlugPlayNotificationEx 例程取消针对即插即用 (PnP) 事件的通知的驱动程序回调例程的注册。 |
IoUnregisterShutdownNotification IoUnregisterShutdownNotification 例程从关闭通知队列中删除已注册的驱动程序。 |
IoUpdateLinkShareAccess IoUpdateLinkShareAccess 例程更新给定文件对象的共享访问,通常在打开文件时。 |
IoUpdateLinkShareAccessEx IoUpdateLinkShareAccessEx 例程更新给定文件对象的共享访问,通常在打开文件时。 |
IoUpdateShareAccess IoUpdateShareAccess 例程更新给定文件对象的共享访问权限,通常在打开文件时。 |
IoValidateDeviceIoControlAccess 有关详细信息,请参阅 WdmlibIoValidateDeviceIoControlAccess 函数。 |
IoVerifyPartitionTable IoVerifyPartitionTable 例程检查磁盘分区表的有效性。 |
IoVolumeDeviceToDosName IoVolumeDeviceToDosName 例程返回表示文件系统卷的指定设备对象的 MS-DOS 路径。 |
IoWithinStackLimits IoWithinStackLimits 例程确定内存区域是否在当前线程的堆栈限制内。 |
IoWMIAllocateInstanceIds IoWMIAllocateInstanceIds 例程分配 GUID 唯一的一个或多个实例 ID。 |
IoWMIDeviceObjectToInstanceName IoWMIDeviceObjectToInstanceName 例程确定由设备对象指定的驱动程序实现的 WMI 类实例的实例名称。 |
IoWMIDeviceObjectToProviderId IoWMIDeviceObjectToProviderId 例程将指定的设备对象转换为相应的 WMI 提供程序 ID。 |
IoWMIExecuteMethod IoWMIExecuteMethod 例程在指定的 WMI 数据块实例上运行 WMI 类方法。 |
IoWMIHandleToInstanceName IoWMIHandleToInstanceName 例程确定由文件句柄指定的驱动程序实现的 WMI 类实例的实例名称。 |
IoWMIOpenBlock IoWMIOpenBlock 例程打开指定 WMI 类的 WMI 数据块对象。 |
IoWMIQueryAllData IoWMIQueryAllData 例程返回实现给定 WMI 类的所有 WMI 数据块。 |
IoWMIQueryAllDataMultiple IoWMIQueryAllDataMultiple 例程返回实现一组 WMI 类之一的所有 WMI 数据块。 |
IoWMIQuerySingleInstance IoWMIQuerySingleInstance 例程返回 WMI 数据块的指定实例。 |
IoWMIQuerySingleInstanceMultiple IoWMIQuerySingleInstanceMultiple 例程返回所有实现具有指定实例名称的指定 WMI 类的 WMI 数据块实例。 |
IoWMIRegistrationControl IoWMIRegistrationControl 例程将调用方注册或注销为指定设备对象的 WMI 数据提供程序。 |
IoWMISetNotificationCallback IoWMISetNotificationCallback 例程为 WMI 事件注册通知回调。 |
IoWMISetSingleInstance IoWMISetSingleInstance 例程设置与指定的 WMI 类和实例名称匹配的数据块实例中的属性值。 |
IoWMISetSingleItem IoWMISetSingleItem 例程在数据块实例中设置与指定的 WMI 类和实例名称匹配的单个属性。 |
IoWMISuggestInstanceName IoWMISuggestInstanceName 例程用于请求 WMI 建议一个基名称,驱动程序可以使用该名称为设备生成 WMI 实例名称。 |
IoWMIWriteEvent IoWMIWriteEvent 例程将给定事件传递给用户模式 WMI 组件以用于通知。 |
IoWriteErrorLogEntry 详细了解 IoWriteErrorLogEntry 例程。 |
IoWriteErrorLogEntry wdm.h 中的 IoWriteErrorLogEntry 例程将给定的错误日志数据包排队到系统错误日志记录线程。 |
IoWriteKsrPersistentMemory Microsoft 保留 IoWriteKsrPersistentMemory 函数仅供内部使用。 请勿在代码中使用此函数。 |
IsListEmpty IsListEmpty 例程指示LIST_ENTRY结构的双重链接列表是否为空。 |
KBUGCHECK_CALLBACK_ROUTINE 每当系统发出 bug 检查时,就会执行 BugCheckCallback 例程。 |
KBUGCHECK_REASON_CALLBACK_ROUTINE 驱动程序实现的回调函数,系统在发出 bug 检查时执行该回调函数。 |
KDEFERRED_ROUTINE 在 InterruptService 返回后,回调例程执行线程 DPC 的操作,CustomDpc 例程在 InterruptService 例程返回后完成 I/O 操作的服务。CustomThreadedDpc 例程执行线程 DPC 的操作。 当线程 DPC 运行时,系统会执行此例程。CustomTimerDpc 例程在计时器对象的时间间隔到期后执行。 |
KeAcquireGuardedMutex 详细了解 KeAcquireGuardedMutex 例程。 |
KeAcquireGuardedMutexUnsafe 详细了解 KeAcquireGuardedMutexUnsafe 函数。 |
KeAcquireInStackQueuedSpinLock 详细了解 KeAcquireInStackQueuedSpinLock 例程。 |
KeAcquireInStackQueuedSpinLockAtDpcLevel 详细了解 KeAcquireInStackQueuedSpinLockAtDpcLevel 例程。 |
KeAcquireInStackQueuedSpinLockForDpc 详细了解 KeAcquireInStackQueuedSpinLockForDpc 例程。 |
KeAcquireInterruptSpinLock 详细了解 KeAcquireInterruptSpinLock 例程。 |
KeAcquireSpinLock KeAcquireSpinLock 例程获取自旋锁,以便调用方可以通过引发 IRQL 以多处理器安全的方式同步对共享数据的访问。 |
KeAcquireSpinLockAtdpcLevel 当调用方已在 IRQL >= DISPATCH_LEVEL 运行时,KeAcquireSpinLockAtDpcLevel 例程获取旋转锁。 |
KeAcquireSpinLockForDpc 详细了解 KeAcquireSpinLockForDpc 例程。 |
KeAcquireSpinLockRaiseToDpc KeAcquireSpinLockRaiseToDpc 例程是 KeAcquireSpinLock 例程的更快版本。 |
KeAddTriageDumpDataBlock 将会审转储数据块添加到会审转储数据块数组。 |
KeAreAllApcsDisabled KeAreAllApcsDisabled 例程指示调用线程是在受保护的区域内还是在 IRQL >= APC_LEVEL 运行,这会禁用所有 APC 传递。 |
KeAreApcsDisabled keAreApcsDisabled 函数 (ntddk.h) 返回一个值,该值指示调用线程是位于关键区域还是受保护区域内。 |
KeAreApcsDisabled (wdm.h) 的 KeAreApcsDisabled 函数返回一个值,该值指示调用线程是位于关键区域还是受保护区域内。 |
KeBugCheck 当调用方发现不可恢复的不一致时,KeBugCheck 例程会以受控的方式关闭系统,如果调用方继续运行,该不一致会损坏系统。 |
KeBugCheckEx 当调用方发现不可恢复的不一致性时,KeBugCheckEx 例程以受控方式关闭系统,如果调用方继续运行,该不一致会损坏系统。 |
KeCancelTimer KeCancelTimer 例程在计时器间隔(如果已设置)过期之前将计时器对象取消排队。 |
KeClearEvent KeClearEvent 例程将事件设置为非信号状态。 |
KeConvertAuxiliaryCounterToPerformanceCounter KeConvertAuxiliaryCounterToPerformanceCounter 例程将指定的辅助计数器值转换为性能计数器值。 |
KeConvertPerformanceCounterToAuxiliaryCounter KeConvertPerformanceCounterToAuxiliaryCounter 例程将指定的性能计数器值转换为辅助计数器值。 |
KeDelayExecutionThread KeDelayExecutionThread 例程将当前线程置于指定间隔内可警报或不可等待状态。 |
KeDeregisterBoundCallback KeDeregisterBoundCallback 例程取消注册由 KeRegisterBoundCallback 注册的用户模式绑定异常回调。 |
KeDeregisterBugCheckCallback KeDeregisterBugCheckCallback 例程删除由 KeRegisterBugCheckCallback 注册的回调例程。 |
KeDeregisterBugCheckReasonCallback KeDeregisterBugCheckReasonCallback 例程删除由 KeRegisterBugCheckReasonCallback 注册的回调例程。 |
KeDeregisterNmiCallback KeDeregisterNmiCallback 例程 (KeRegisterNmiCallback 注册的 NMI) 回调取消注册不可屏蔽的中断。 |
KeDeregisterProcessorChangeCallback KeDeregisterProcessorChangeCallback 例程通过调用 KeRegisterProcessorChangeCallback 例程取消注册以前注册到操作系统的回调函数。 |
KeEnterCriticalRegion keEnterCriticalRegion 函数 (ntddk.h) 暂时禁用正常内核 APC 的执行,但不会阻止特殊内核 APC 运行。 |
KeEnterCriticalRegion keEnterCriticalRegion 函数 (wdm.h) 暂时禁用正常内核 APC 的执行,但不会阻止特殊内核 APC 运行。 |
KeEnterGuardedRegion keEnterGuardedRegion 函数 (ntddk.h) 进入受保护的区域,这会禁用当前线程的所有内核模式 APC 传递。 |
KeEnterGuardedRegion keEnterGuardedRegion 函数 (wdm.h) 进入受保护的区域,这会禁用当前线程的所有内核模式 APC 传递。 |
KeExpandKernelStackAndCallout KeExpandKernelStackAndCallout 例程调用具有保证堆栈空间量的例程。 |
KeExpandKernelStackAndCalloutEx 详细了解:KeExpandKernelStackAndCalloutEx |
KeFlushIoBuffers KeFlushIoBuffers 例程从所有处理器的缓存中刷新 MDL 描述的内存区域。 |
KeFlushQueuedDpcs 执行所有处理器上所有排队的 DPC 后,KeFlushQueuedDpcs 例程将返回。 |
KefReleaseSpinLockFromDpcLevel KeReleaseSpinLockFromDpcLevel 例程在不更改 IRQL 的情况下释放执行旋转锁。 |
KeGetCurrentIrql KeGetCurrentIrql 例程返回当前 IRQL。 |
KeGetCurrentNodeNumber KeGetCurrentNodeNumber 函数 (ntddk.h) 返回调用方正在运行的逻辑处理器的 NUMA 节点号。 |
KeGetCurrentNodeNumber keGetCurrentNodeNumber 函数 (wdm.h) 返回调用方运行的逻辑处理器的 NUMA 节点号。 |
KeGetCurrentProcessorNumber KeGetCurrentProcessorNumber 例程返回调用方正在运行的当前处理器的系统分配编号。 |
KeGetCurrentProcessorNumberEx KeGetCurrentProcessorNumberEx 函数 (ntddk.h) 返回调用方正在运行的逻辑处理器的处理器编号。 |
KeGetCurrentProcessorNumberEx keGetCurrentProcessorNumberEx 函数 (wdm.h) 返回调用方正在运行的逻辑处理器的处理器编号。 |
KeGetCurrentThread KeGetCurrentThread 例程标识当前线程。 |
KeGetProcessorIndexFromNumber ntifs.h 中的 KeGetProcessorIndexFromNumber 例程将组号和相对于组的处理器编号转换为系统范围的处理器索引。 |
KeGetProcessorIndexFromNumber wdm.h 中的 KeGetProcessorIndexFromNumber 例程将组号和组相对处理器编号转换为系统范围的处理器索引。 |
KeGetProcessorNumberFromIndex ntifs.h 中的 KeGetProcessorNumberFromIndex 例程将系统范围的处理器索引转换为组号和组相对处理器编号。 |
KeGetProcessorNumberFromIndex wdm.h 中的 KeGetProcessorNumberFromIndex 例程将系统范围的处理器索引转换为组号和组相对处理器编号。 |
KeGetRecommendedSharedDataAlignment KeGetRecommendedSharedDataAlignment 例程返回可由多个处理器访问的内存结构的首选对齐方式。 |
KeInitializeCrashDumpHeader KeInitializeCrashDumpHeader 例程提供系统为故障转储文件所需的标头信息。 |
KeInitializeCrashDumpHeader 了解 KeInitializeCrashDumpHeader 例程如何提供系统为故障转储文件所需的标头信息。 |
KeInitializeDeviceQueue KeInitializeDeviceQueue 例程将设备队列对象初始化为非繁忙状态。 |
KeInitializeDpc KeInitializeDpc 例程初始化 DPC 对象,并为该对象注册 CustomDpc 例程。 |
KeInitializeEvent KeInitializeEvent 例程将事件对象初始化为 (单个服务员) 或通知类型事件的同步,并将其设置为有信号或未发出信号的状态。 |
KeInitializeGuardedMutex KeInitializeGuardedMutex 例程初始化受保护的互斥体。 |
KeInitializeMutex KeInitializeMutex 例程初始化互斥对象,并将其设置为信号状态。 |
KeInitializeSemaphore KeInitializeSemaphore 例程使用指定的计数初始化信号灯对象,并指定计数可以达到的上限。 |
KeInitializeSpinLock KeInitializeSpinLock 例程初始化KSPIN_LOCK类型的变量。 |
KeInitializeThreadedDpc KeInitializeThreadedDpc 例程初始化线程 DPC 对象,并为该对象注册 CustomThreadedDpc 例程。 |
KeInitializeTimer KeInitializeTimer 例程初始化计时器对象。 |
KeInitializeTimerEx KeInitializeTimerEx 例程初始化扩展的内核计时器对象。 |
KeInsertByKeyDeviceQueue KeInsertByKeyDeviceQueue 例程获取指定 DeviceQueue 的旋转锁,如果设备队列设置为忙碌状态,则根据指定的排序键值将条目排队。 |
KeInsertDeviceQueue KeInsertDeviceQueue 例程获取指定设备队列对象的旋转锁,如果设备队列设置为繁忙状态,则会将指定的条目排队。 |
KeInsertQueueDpc KeInsertQueueDpc 例程将 DPC 排队等待执行。 |
KeInvalidateAllCaches KeInvalidateAllCaches 例程会刷新所有处理器缓存。 |
KeInvalidateRangeAllCaches KeInvalidateRangeAllCaches 例程从所有处理器缓存中刷新指定的虚拟地址范围。 |
KeIpiGenericCall KeIpiGenericCall 例程会导致指定的例程在所有处理器上同时运行。 |
KeIsExecutingDpc 检查是否在当前处理器上执行 DPC。 |
KeLeaveCriticalRegion KeLeaveCriticalRegion 例程可重新启用通过之前调用 KeEnterCriticalRegion 而禁用的正常内核模式 APC 的传递。 |
KeLeaveCriticalRegion 了解 KeLeaveCriticalRegion 例程如何重新启用对 KeEnterCriticalRegion 的调用所禁用的正常内核模式 APC 的传递。 |
KeLeaveGuardedRegion KeLeaveGuardedRegion 例程退出 KeEnterGuardedRegion 进入的受保护的区域。 |
KeLeaveGuardedRegion 了解 KeLeaveGuardedRegion 例程如何退出 KeEnterGuardedRegion 进入的受保护区域。 |
KeLowerIrql KeLowerIrql 例程将当前处理器上的 IRQL 还原为其原始值。 |
KeMemoryBarrier KeMemoryBarrier 例程在代码中的位置上创建了一个屏障,编译器和处理器无法通过该屏障移动任何操作。 |
KePulseEvent KePulseEvent 例程以原子方式将事件对象设置为信号状态,尝试满足尽可能多的等待,然后将事件对象重置为未发出信号的状态。 |
KeQueryActiveGroupCount KeQueryActiveGroupCount 例程返回多处理器系统中活动处理器组的数目。 |
KeQueryActiveGroupCount 了解 KeQueryActiveGroupCount 例程如何返回多处理器系统中的活动处理器组数。 |
KeQueryActiveProcessorCount KeQueryActiveProcessorCount 例程返回当前活动处理器的数量。 |
KeQueryActiveProcessorCount 了解 KeQueryActiveProcessorCount 例程如何返回当前活动处理器的数量。 |
KeQueryActiveProcessorCountEx KeQueryActiveProcessorCountEx 例程返回多处理器系统或整个系统中指定组中的活动逻辑处理器数。 |
KeQueryActiveProcessorCountEx 了解 KeQueryActiveProcessorCountEx 例程如何返回多处理器系统或整个系统中指定组中的活动逻辑处理器数。 |
KeQueryActiveProcessors KeQueryActiveProcessors 例程返回当前活动处理器的位掩码。 |
KeQueryActiveProcessors 了解 KeQueryActiveProcessors 例程如何返回当前活动处理器的位掩码。 |
KeQueryAuxiliaryCounterFrequency KeQueryAuxiliaryCounterFrequency 例程返回辅助计数器的频率(以 Hz 为单位)。 |
KeQueryDpcWatchdogInformation KeQueryDpcWatchdogInformation 例程返回延迟过程调用 (DPC) 当前处理器的监视器计时器值。 |
KeQueryGroupAffinity KeQueryGroupAffinity 例程返回一个关联掩码,用于标识多处理器系统中指定组中的活动逻辑处理器。 |
KeQueryGroupAffinity 了解 KeQueryGroupAffinity 例程如何返回关联掩码,用于标识多处理器系统中指定组中的活动逻辑处理器。 |
KeQueryHardwareCounterConfiguration KeQueryHardwareCounterConfiguration 例程在操作系统中查询用于线程分析的硬件计数器列表。 |
KeQueryHighestNodeNumber KeQueryHighestNodeNumber 例程返回多处理器系统中具有非统一内存访问 (NUMA) 体系结构的最高节点数。 |
KeQueryHighestNodeNumber 了解 KeQueryHighestNodeNumber 例程如何在多处理器系统中返回具有非统一内存访问 (NUMA) 体系结构的最高节点数。 |
KeQueryInterruptTime KeQueryInterruptTime 例程返回系统中断时间计数的当前值,精确到系统时钟周期内。 |
KeQueryInterruptTimePrecise KeQueryInterruptTimePrecise 例程返回系统中断时间计数的当前值,准确度在微秒内。 |
KeQueryLogicalProcessorRelationship KeQueryLogicalProcessorRelationship 例程获取有关一个或多个处理器与多处理器系统中其他处理器的关系的信息。 |
KeQueryMaximumGroupCount KeQueryMaximumGroupCount 例程返回多处理器系统中的最大组数。 |
KeQueryMaximumGroupCount 了解 KeQueryMaximumGroupCount 例程如何返回多处理器系统中的最大组数。 |
KeQueryMaximumProcessorCount KeQueryMaximumProcessorCount 例程返回最大处理器数。 |
KeQueryMaximumProcessorCount 了解 KeQueryMaximumProcessorCount 例程如何返回最大数量的处理器。 |
KeQueryMaximumProcessorCountEx KeQueryMaximumProcessorCountEx 例程返回多处理器系统中指定组中逻辑处理器的最大数目。 |
KeQueryMaximumProcessorCountEx 了解 KeQueryMaximumProcessorCountEx 例程如何返回多处理器系统中指定组中的最大逻辑处理器数。 |
KeQueryNodeActiveAffinity KeQueryNodeActiveAffinity 例程获取多处理器系统中指定节点的当前处理器相关性,该多处理器系统中具有非统一内存访问 (NUMA) 体系结构。 |
KeQueryNodeActiveAffinity2 此例程返回给定 NUMA 节点的当前多组处理器相关性。 |
KeQueryNodeActiveProcessorCount 此例程返回所有组中给定 NUMA 节点中的活动处理器数。 |
KeQueryNodeMaximumProcessorCount KeQueryNodeMaximumProcessorCount 例程返回非统一内存访问 (NUMA) 多处理器系统可以包含的最大逻辑处理器数。 |
KeQueryNodeMaximumProcessorCount 了解 KeQueryNodeMaximumProcessorCount 例程如何返回非统一内存访问中的指定节点 (多处理器系统) 可以包含的最大逻辑处理器数。 |
KeQueryPerformanceCounter wdm.h 中的 KeQueryPerformanceCounter 例程检索性能计数器的当前值和频率。 |
KeQueryPriorityThread KeQueryPriorityThread 例程返回特定线程的当前优先级。 |
KeQueryRuntimeThread KeQueryRuntimeThread 例程以时钟周期为单位报告线程累积的内核模式和用户模式运行时间。 |
KeQuerySystemTime KeQuerySystemTime 例程获取当前系统时间。 |
KeQuerySystemTimePrecise KeQuerySystemTimePrecise 例程检索当前系统时间,并且比 KeQuerySystemTime 例程更精确。 |
KeQueryTickCount KeQueryTickCount 例程维护自系统启动以来发生的间隔计时器中断的计数。 |
KeQueryTickCount 了解 KeQueryTickCount 例程如何维护自系统启动以来发生的间隔计时器中断计数。 |
KeQueryTimeIncrement KeQueryTimeIncrement 例程返回每次间隔时钟中断时添加到系统时间的 100 纳秒单位数。 |
KeQueryTotalCycleTimeThread KeQueryTotalCycleTimeThread 例程返回指定线程的累积周期时间。 |
KeQueryUnbiasedInterruptTime KeQueryUnbiasedInterruptTime 例程返回系统中断时间计数的当前值。 |
KeRaiseIrql KeRaiseIrql 例程将硬件优先级提高到指定的 IRQL 值,从而屏蔽当前处理器上等效或更低 IRQL 的中断。 |
KeRaiseIrqlToDpcLevel KeRaiseIrqlToDpcLevel 例程将硬件优先级提高到 IRQL = DISPATCH_LEVEL,从而屏蔽当前处理器上等效或更低 IRQL 的中断。 |
KeRaiseIrqlToDpcLevel 了解 KeRaiseIrqlToDpcLevel 例程如何将硬件优先级提高到 IRQL = DISPATCH_LEVEL,从而屏蔽当前处理器上等效或更低 IRQL 的中断。 |
KeReadStateEvent KeReadStateEvent 例程返回事件对象的当前状态(已发出信号或未发出信号)。 |
KeReadStateMutex KeReadStateMutex 例程返回指定互斥对象的当前状态(已发出信号或未发出信号)。 |
KeReadStateSemaphore KeReadStateSemaphore 例程返回指定信号灯对象的当前状态(已发出信号或未发出信号)。 |
KeReadStateTimer KeReadStateTimer 例程读取计时器对象的当前状态。 |
KeRegisterBoundCallback KeRegisterBoundCallback 例程注册每当发生用户模式绑定异常时要调用的例程。 |
KeRegisterBugCheckCallback KeRegisterBugCheckCallback 例程注册 BugCheckCallback 例程,该例程在操作系统发出 bug 检查时执行。 |
KeRegisterBugCheckReasonCallback KeRegisterBugCheckReasonCallback 例程注册 KbCallbackDumpIo、KbCallbackSecondaryDumpData 或 KbCallbackAddPages 例程,该例程在操作系统发出 bug 检查时执行。 |
KeRegisterNmiCallback KeRegisterNmiCallback 例程注册每当发生不可屏蔽的中断 (NMI) 时将调用的例程。 |
KeRegisterProcessorChangeCallback KeRegisterProcessorChangeCallback 例程向操作系统注册回调函数,以便操作系统在向硬件分区添加新处理器时通知驱动程序。 |
KeReleaseGuardedMutex KeReleaseGuardedMutex 例程释放使用 KeAcquireGuardedMutex 或 KeTryToAcquireGuardedMutex 获取的受保护的互斥体。 |
KeReleaseGuardedMutexUnsafe KeReleaseGuardedMutexUnsafe 例程释放 KeAcquireGuardedMutexUnsafe 获取的受保护的互斥体。 |
KeReleaseInStackQueuedSpinLock KeReleaseInStackQueuedSpinLock 例程释放由 KeAcquireInStackQueuedSpinLock 获取的排队旋转锁。 |
KeReleaseInStackQueuedSpinLockForDpc KeReleaseInStackQueuedSpinLockForDpc 例程释放通过调用 KeAcquireInStackQueuedSpinLockForDpc 获取的排队自旋锁。 |
KeReleaseInStackQueuedSpinLockFromDpcLevel KeReleaseInStackQueuedSpinLockFromDpcLevel 例程释放由 KeAcquireInStackQueuedSpinLockAtDpcLevel 获取的排队旋转锁。 |
KeReleaseInterruptSpinLock KeReleaseInterruptSpinLock 例程释放 KeAcquireInterruptSpinLock 获取的中断旋转锁。 |
KeReleaseMutex KeReleaseMutex 例程释放互斥对象,并指定调用方是否在 KeReleaseMutex 返回控件后立即调用 KeWaitXxx 例程之一。 |
KeReleaseSemaphore KeReleaseSemaphore 例程释放指定的信号灯对象。 |
KeReleaseSpinLock KeReleaseSpinLock 例程释放自旋锁并还原调用方运行的原始 IRQL。 |
KeReleaseSpinLockForDpc KeReleaseSpinLockForDpc 例程释放通过调用 KeAcquireSpinLockForDpc 获取的旋转锁。 |
KeReleaseSpinLockFromDpcLevel 了解 KeReleaseSpinLockFromDpcLevel 例程如何在不更改 IRQL 的情况下释放执行旋转锁。 |
KeRemoveByKeyDeviceQueue KeRemoveByKeyDeviceQueue 例程从指定的设备队列中删除根据排序键值选择的条目。 |
KeRemoveDeviceQueue KeRemoveDeviceQueue 例程从指定设备队列的头中删除条目。 |
KeRemoveEntryDeviceQueue KeRemoveEntryDeviceQueue 例程返回指定的项是否在设备队列中,并将其从设备队列中删除(如果已排队)。 |
KeRemoveQueueDpc KeRemoveQueueDpc 例程从系统 DPC 队列中删除指定的 DPC 对象。 |
KeResetEvent KeResetEvent 例程将指定的事件对象重置为未发出信号的状态,并返回该事件对象的先前状态。 |
KeRestoreExtendedProcessorState KeRestoreExtendedProcessorState 例程还原以前保存的扩展处理器状态信息。 |
KeRestoreFloatingPointState KeRestoreFloatingPointState 例程还原由前面对 KeSaveFloatingPointState 的调用保存的非易失性浮点上下文。 |
KeRevertToUserAffinityThreadEx KeRevertToUserAffinityThreadEx 例程还原当前线程以前的关联。 |
KeRevertToUserGroupAffinityThread KeRevertToUserGroupAffinityThread 例程将调用线程的组相关性还原到创建线程时的原始值。 |
KeSaveExtendedProcessorState KeSaveExtendedProcessorState 例程保存扩展处理器状态信息。 |
KeSaveFloatingPointState KeSaveFloatingPointState 例程保存非易失浮点上下文,以便调用方可以执行浮点操作。 |
KeSetBasePriorityThread KeSetBasePriorityThread 例程为给定线程设置相对于当前进程的运行时优先级。 |
KeSetCoalescableTimer KeSetCoalescableTimer 例程设置计时器对象的初始过期时间和时间段,并指定在过期时间内可以容忍的延迟量。 |
KeSetEvent KeSetEvent 例程将事件对象设置为信号状态(如果事件尚未发出信号),并返回事件对象的先前状态。 |
KeSetHardwareCounterConfiguration KeSetHardwareCounterConfiguration 例程指定要用于线程分析的硬件计数器列表。 |
KeSetImportanceDpc KeSetImportanceDpc 例程指定 DPC 例程的运行快。 |
KeSetImportanceDpc 了解 KeSetImportanceDpc 例程如何指定 DPC 例程的运行方式。 |
KeSetKernelStackSwapEnable 详细了解 KeSetKernelStackSwapEnable 例程。 |
KeSetPriorityThread KeSetPriorityThread 例程设置驱动程序创建的线程的运行时优先级。 |
KeSetSystemAffinityThread KeSetSystemAffinityThread 例程设置当前线程的系统相关性。 |
KeSetSystemAffinityThreadEx KeSetSystemAffinityThreadEx 例程设置当前线程的系统相关性。 |
KeSetSystemGroupAffinityThread KeSetSystemGroupAffinityThread 例程更改调用线程的组号和地缘掩码。 |
KeSetTargetProcessorDpc KeSetTargetProcessorDpc 例程指定运行 DPC 例程的处理器。 |
KeSetTargetProcessorDpc 了解 KeSetTargetProcessorDpc 例程如何指定运行 DPC 例程的处理器。 |
KeSetTargetProcessorDpcEx KeSetTargetProcessorDpcEx 例程指定运行 DPC 例程的处理器。 |
KeSetTimer KeSetTimer 例程设置计时器对象设置为信号状态的绝对或相对间隔,并根据需要提供 CustomTimerDpc 例程,该间隔到期时要执行。 |
KeSetTimerEx KeSetTimerEx 例程设置计时器对象设置为信号状态的绝对或相对间隔,可以选择提供 CustomTimerDpc 例程,以便在该间隔过期时执行,并选择性地为计时器提供定期间隔。 |
KeShouldYieldProcessor 详细了解:KeShouldYieldProcessor 函数 |
KeStallExecutionProcessor 详细了解 KeStallExecutionProcessor 例程。 |
KeStallExecutionProcessor wdm.h 中的 KeStallExecutionProcessor 例程将当前处理器上的调用方停止指定的时间间隔。 |
KeSynchronizeExecution KeSynchronizeExecution 例程将指定的例程的执行与分配给一个或多个中断对象的 ISR) (中断服务例程同步。 |
KeTestSpinLock KeTestSpinLock 例程测试旋转锁的可用性。 |
KeTryToAcquireGuardedMutex KeTryToAcquireGuardedMutex 例程获取受保护的互斥体(如果可用)。 |
KeTryToAcquireSpinLockAtDpcLevel KeTryToAcquireSpinLockAtDpcLevel 例程尝试在DISPATCH_LEVEL获取旋转锁。 |
KeWaitForMultipleObjects KeWaitForMultipleObjects 例程将当前线程置于可警报或不可更改的等待状态,直到将任意或所有调度程序对象设置为信号状态或 (可以选择) ,直到等待超时。 |
KeWaitForSingleObject KeWaitForSingleObject 例程将当前线程置于等待状态,直到给定调度程序对象设置为已发出信号的状态,或者可以选择 () ,直到等待超时。 |
KIPI_BROADCAST_WORKER IpiGenericCall 例程在所有处理器上同时运行。 |
KMESSAGE_SERVICE_ROUTINE InterruptMessageService 例程为消息信号中断提供服务。 |
KSERVICE_ROUTINE ISR (InterruptService 例程) 快速为设备中断提供服务,并在必要时计划接收数据的中断后处理。 |
KSTART_ROUTINE ThreadStart 例程为驱动程序创建的系统线程提供入口点。 |
KSYNCHRONIZE_ROUTINE SynchCritSection 例程用于访问与驱动程序的 InterruptService 例程共享的硬件资源或驱动程序数据。 |
KzLowerIrql 将当前处理器上的 IRQL 还原到其原始值。 |
KzRaiseIrql 将硬件优先级提高到指定的 IRQL 值,从而屏蔽当前处理器上等效或更低 IRQL 的中断。 |
MM_MDL_ROUTINE 驱动程序提供的回调例程,在内存描述符列表 (MDL) 通过调用 MmMapMdl 函数进行映射后调用。 |
MmAdvanceMdl MmAdvanceMdl 例程将 MDL 的虚拟内存范围的开头提前指定的字节数。 |
MmAllocateContiguousMemory MmAllocateContiguousMemory 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。 |
MmAllocateContiguousMemory 了解 MmAllocateContiguousMemory 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。 |
MmAllocateContiguousMemoryEx MmAllocateContiguousMemoryEx 函数分配一系列物理连续的非分页内存,并返回其虚拟地址。 |
MmAllocateContiguousMemorySpecifyCache MmAllocateContiguousMemorySpecifyCache 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。 |
MmAllocateContiguousMemorySpecifyCache 了解 MmAllocateContiguousMemorySpecifyCache 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。 |
MmAllocateContiguousMemorySpecifyCacheNode MmAllocateContiguousMemorySpecifyCacheNode 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。 |
MmAllocateContiguousMemorySpecifyCacheNode 了解 MmAllocateContiguousMemorySpecifyCacheNode 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。 |
MmAllocateContiguousNodeMemory MmAllocateContiguousNodeMemory 例程分配一系列连续的非分页物理内存,并将其映射到系统地址空间。 |
MmAllocateContiguousNodeMemory 了解 MmAllocateContiguousNodeMemory 例程如何分配一系列连续的非分页物理内存并将其映射到系统地址空间。 |
MmAllocateMappingAddress MmAllocateMappingAddress 例程保留指定大小的系统虚拟地址空间范围。 |
MmAllocateMappingAddressEx MmAllocateMappingAddressEx 函数分配请求长度的系统 PTE 映射,稍后可用于映射任意地址。 |
MmAllocateMdlForIoSpace MmAllocateMdlForIoSpace 例程分配 MDL 并初始化此 MDL 以描述 I/O 地址空间中的一组物理地址范围。 |
MmAllocateNodePagesForMdlEx MmAllocateNodePagesForMdlEx 例程从理想节点分配非分页物理内存,并分配 MDL 结构来描述此内存。 |
MmAllocateNonCachedMemory MmAllocateNonCachedMemory 例程分配非缓存内存和缓存对齐内存的虚拟地址范围。 |
MmAllocatePagesForMdl MmAllocatePagesForMdl 例程将零填充的、非分页的物理内存页分配给 MDL。 |
MmAllocatePagesForMdlEx MmAllocatePagesForMdlEx 例程将非分页的物理内存页分配给 MDL。 使用此例程而不是 MmAllocatePagesForMdl。 |
MmBuildMdlForNonPagedPool MmBuildMdlForNonPagedPool 例程接收指定非分页虚拟内存缓冲区的 MDL,并更新它以描述基础物理页。 |
MmCopyMemory MmCopyMemory 例程将指定的虚拟内存或物理内存范围复制到调用方提供的缓冲区中。 |
MmFreeContiguousMemory MmFreeContiguousMemory 例程释放由 MmAllocateContiguousMemoryXxx 例程分配的一系列物理连续内存。 |
MmFreeContiguousMemory 了解 MmFreeContiguousMemory 例程如何释放由 MmAllocateContiguousMemoryXxx 例程分配的一系列物理连续内存。 |
MmFreeContiguousMemorySpecifyCache MmFreeContiguousMemorySpecifyCache 例程释放由 MmAllocateContiguousMemorySpecifyCacheXxx 例程分配的缓冲区。 |
MmFreeContiguousMemorySpecifyCache 了解 MmFreeContiguousMemorySpecifyCache 例程如何释放由 MmAllocateContiguousMemorySpecifyCacheXxx 例程分配的缓冲区。 |
MmFreeMappingAddress MmFreeMappingAddress 例程释放由 MmAllocateMappingAddress 例程保留的一系列虚拟内存。 |
MmFreeNonCachedMemory MmFreeNonCachedMemory 例程释放由 MmAllocateNonCachedMemory 例程分配的一系列非缓存内存。 |
MmFreePagesFromMdl MmFreePagesFromMdl 例程释放由 MmAllocatePagesForMdl 例程创建的 MDL 描述的所有物理页面。 |
MmGetMdlByteCount MmGetMdlByteCount 宏返回指定 MDL 描述的缓冲区的长度(以字节为单位)。 |
MmGetMdlPfnArray MmGetMdlPfnArray 宏返回指向与内存描述符列表 (MDL) 关联的物理页面编号数组开头位置的指针。 |
MmGetPhysicalAddress MmGetPhysicalAddress 例程返回与有效的非分页虚拟地址对应的物理地址。 |
MmGetPhysicalMemoryRangesEx2 MmGetPhysicalMemoryRangesEx2 例程返回非分页池块的虚拟地址,该块包含系统中的物理内存范围。 |
MmGetSystemAddressForMdl MmGetSystemAddressForMdl 例程已过时。 请改用 MmGetSystemAddressForMdlSafe。 |
MmGetSystemRoutineAddress MmGetSystemRoutineAddress 例程返回指向 SystemRoutineName 指定的函数的指针。 |
MmGetSystemRoutineAddressEx MmGetSystemRoutineAddressEx 函数返回指定系统模块中指定函数的地址。 |
MmIsAddressValid MmIsAddressValid 例程检查给定虚拟地址的读取或写入操作是否会发生页面错误。警告 不建议使用此函数。 |
MmIsDriverSuspectForVerifier MmIsDriverSuspectForVerifier 例程指示指定驱动程序对象表示的驱动程序是否位于选择要由驱动程序验证程序验证的驱动程序列表中。 |
MmIsDriverVerification MmIsDriverVerification 例程指示是验证由指定驱动程序对象标识的内核模式驱动程序,还是调用由驱动程序验证程序验证的驱动程序。 |
MmIsDriverVerificationByAddress MmIsDriverVerificationByAddress 例程检查是否正在验证由指定映像地址标识的内核模式驱动程序,或者是否正在调用由驱动程序验证程序验证的驱动程序。 |
MmIsThisAnNtAsSystem 对于 Windows XP 和更高版本的 Windows,MmIsThisAnNtAsSystem 例程已过时。 请改用 RtlGetVersion 或 RtlVerifyVersionInfo。 |
MmLockPagableCodeSection MmLockPagableCodeSection 例程将驱动程序代码部分(包含一组用特殊编译器指令标记的驱动程序例程)锁定到系统空间中。 |
MmLockPagableDataSection MmLockPagableDataSection 例程将整个驱动程序数据部分锁定到系统空间中。 |
MmLockPagableSectionByHandle MmLockPagableSectionByHandle 例程通过将节的句柄上的引用计数递增,将可分页代码或数据节锁定到系统内存中。 |
MmMapIoSpace MmMapIoSpace 例程将给定的物理地址范围映射到非分页系统空间。 |
MmMapIoSpaceEx MmMapIoSpaceEx 例程使用指定的页面保护将给定的物理地址范围映射到非分页系统空间。 |
MmMapLockedPages 对于 Windows 2000 及更高版本的 Windows 以及 Windows Me,MmMapLockedPages 例程已过时。 |
MmMapLockedPagesSpecifyCache MmMapLockedPagesSpecifyCache 例程将 MDL 描述的物理页面映射到虚拟地址,并使调用方能够指定用于创建映射的缓存属性。 |
MmMapLockedPagesWithReservedMapping MmMapLockedPagesWithReservedMapping 例程映射以前由 MmAllocateMappingAddress 例程保留的全部或部分地址范围。 |
MmMapMdl 此函数将内存描述符列表描述的物理页 (MDL) 映射到系统虚拟地址空间。 |
MmMapMemoryDumpMdlEx MmMapMemoryDumpMdlEx 函数将 MDL 映射到指定的虚拟地址。 |
MmMapViewInSystemSpace MmMapViewInSystemSpace 函数将指定的部分映射到系统的地址空间中。 |
MmPageEntireDriver MmPageEntireDriver 例程会导致驱动程序的所有代码和数据可分页,从而覆盖构成驱动程序映像的各个部分的属性。 |
MmProbeAndLockPages MmProbeAndLockPages 例程探测指定的虚拟内存页,使其驻留,并将其锁定在内存中。 |
MmProbeAndLockSelectedPages MmProbeAndLockSelectedPages 例程探测所选虚拟内存页,使其驻留,并将其锁定在内存中。 |
MmProtectDriverSection MmProtectDriverSection 只读使用虚拟安全模式 (VSM) 提供的服务来保护加载的驱动程序的一部分。 |
MmProtectMdlSystemAddress MmProtectMdlSystemAddress 例程为内存地址范围设置保护类型。 |
MmQuerySystemSize MmQuerySystemSize 例程返回系统中内存量的估计值。 |
MmResetDriverPaging MmResetDriverPaging 例程将驱动程序部分的可分页状态重置为编译驱动程序时指定的状态。 |
MmSecureVirtualMemory MmSecureVirtualMemory 例程保护用户空间内存地址范围,使其无法释放,并且无法使其保护类型更加严格。 |
MmSecureVirtualMemoryEx 此例程探测请求的地址范围,并防止指定的地址范围使其保护更加严格并被删除。 |
MmSizeOfMdl MmSizeOfMdl 例程返回要为描述给定地址范围的 MDL 分配的字节数。 |
MmUnlockPagableImageSection MmUnlockPagableImageSection 例程会发布一部分驱动程序代码或驱动程序数据,这些数据以前使用 MmLockPagableCodeSection、MmLockPagableDataSection 或 MmLockPagableSectionByHandle 锁定在系统空间中,因此该部分可以再次分页。 |
MmUnlockPages MmUnlockPages 例程解锁由指定的内存描述符列表描述的物理页面 (MDL) 。 |
MmUnmapIoSpace MmUnmapIoSpace 例程取消映射以前由 MmMapIoSpace 映射的指定物理地址范围。 |
MmUnmapLockedPages MmUnmapLockedPages 例程会释放一个映射,该映射是通过之前对 MmMapLockedPages 或 MmMapLockedPagesSpecifyCache 例程的调用设置的。 |
MmUnmapReservedMapping MmUnmapReservedMapping 例程取消映射由 MmMapLockedPagesWithReservedMapping 例程映射的内存缓冲区。 |
MmUnmapViewInSystemSpace 详细了解:MmUnmapViewInSystemSpace 函数 |
MmUnsecureVirtualMemory MmUnsecureVirtualMemory 例程取消保护由 MmSecureVirtualMemory 例程保护的内存地址范围。 |
NtAllocateVirtualMemory 详细了解 NtAllocateVirtualMemory 例程。 |
NtClose 详细了解 NtClose 例程。 |
NtCommitComplete ZwCommitComplete 例程通知 KTM 调用的资源管理器已完成提交事务的数据。 |
NtCommitEnlistment ZwCommitEnlistment 例程为指定的登记事务启动提交操作。 |
NtCommitTransaction ZwCommitTransaction 例程启动指定事务的提交操作。 |
NtCreateEnlistment ZwCreateEnlistment 例程为事务创建新的登记对象。 |
NtCreateFile 详细了解 NtCreateFile 函数。 |
NtCreateResourceManager ZwCreateResourceManager 例程创建资源管理器对象。 |
NtCreateSection ntifs.h 中的 NtCreateSection 例程创建一个 section 对象。 指向的句柄不再使用后,驱动程序必须关闭它。 |
NtCreateSectionEx 创建 section 对象。 |
NtCreateTransaction ZwCreateTransaction 例程创建事务对象。 |
NtCreateTransactionManager ZwCreateTransactionManager 例程创建新的事务管理器对象。 |
NtDeviceIoControlFile 详细了解 NtDeviceIoControlFile 函数。 |
NtDuplicateToken 详细了解 NtDuplicateToken 函数。 |
NtEnumerateTransactionObject ZwEnumerateTransactionObject 例程枚举计算机上的 KTM 对象。 |
NtFlushBuffersFileEx 详细了解 NtFlushBuffersFileEx 例程。 |
NtFreeVirtualMemory 详细了解 NtFreeVirtualMemory 例程。 |
NtFsControlFile 详细了解 NtFsControlFile 例程。 |
NtGetNotificationResourceManager ZwGetNotificationResourceManager 例程从指定的资源管理器的通知队列中检索下一个事务通知。 |
NtLockFile NtLockFile 例程请求指定文件的字节范围锁。 |
NtManagePartition NtManagePartition 函数获取并设置分区的信息。 |
NtOpenEnlistment ZwOpenEnlistment 例程获取现有登记对象的句柄。 |
NtOpenFile 详细了解 NtOpenFile 例程。 |
NtOpenProcess ZwOpenProcess 例程打开进程对象的句柄,并设置对此对象的访问权限。 |
NtOpenProcessToken NtOpenProcessToken 例程打开与进程关联的访问令牌,并返回可用于访问该令牌的句柄。 |
NtOpenProcessTokenEx NtOpenProcessTokenEx 例程打开与进程关联的访问令牌,并返回可用于访问该令牌的句柄。 |
NtOpenResourceManager ZwOpenResourceManager 例程返回现有资源管理器对象的句柄。 |
NtOpenThreadToken NtOpenThreadToken 例程打开与线程关联的访问令牌,并返回可用于访问该令牌的句柄。 |
NtOpenThreadTokenEx NtOpenThreadTokenEx 例程打开与线程关联的访问令牌。 |
NtOpenTransaction ZwOpenTransaction 例程获取现有事务对象的句柄。 |
NtOpenTransactionManager ZwOpenTransactionManager 例程获取现有事务管理器对象的句柄。 |
NtPowerInformation 了解 ZwPowerInformation 例程如何设置或检索系统电源信息。 |
NtPowerInformation 了解 zwPowerInformation 例程 (wdm.h) 如何设置或检索系统电源信息。 |
NtPrepareComplete ZwPrepareComplete 例程通知 KTM 调用的资源管理器已完成事务数据的准备。 |
NtPrepareEnlistment ZwPrepareEnlistment 例程为指定的登记事务启动准备操作。 |
NtPrepareComplete ZwPrepareComplete 例程通知 KTM 调用的资源管理器已完成事务数据的初步准备。 |
NtPrepareEnlistment ZwPrepareEnlistment 例程为指定登记的事务启动预准备操作。 |
NtPrivilegeCheck NtPrivilegeCheck 例程确定是否在使用者的访问令牌中启用了一组指定的特权。 |
NtQueryDirectoryFile NtQueryDirectoryFile 例程返回有关给定文件句柄指定的目录中文件的各种信息。 |
NtQueryDirectoryFileEx 详细了解 NtQueryDirectoryFileEx |
NtQueryInformationEnlistment ZwQueryInformationEnlistment 例程检索有关指定登记对象的信息。 |
NtQueryInformationFile NtQueryInformationFile 例程返回有关文件对象的各种类型的信息。 |
NtQueryInformationResourceManager ZwQueryInformationResourceManager 例程检索有关指定资源管理器对象的信息。 |
NtQueryInformationToken NtQueryInformationToken 例程检索有关访问令牌的指定类型的信息。 |
NtQueryInformationTransaction ZwQueryInformationTransaction 例程检索有关指定事务的信息。 |
NtQueryInformationTransactionManager ZwQueryInformationTransactionManager 例程检索有关指定事务管理器对象的信息。 |
NtQueryObject NtQueryObject 例程提供有关所提供的对象的信息。 如果调用在用户模式下发生,请使用名称 NtQueryObject。 |
NtQueryQuotaInformationFile NtQueryQuotaInformationFile 例程检索与 FileHandle 参数指定的卷关联的配额条目。 |
NtQuerySecurityObject NtQuerySecurityObject 例程检索对象的安全描述符的副本。 安全描述符可以采用绝对或自相对形式。 |
NtQueryVirtualMemory 详细了解 NtQueryVirtualMemory 函数。 |
NtQueryVolumeInformationFile 此例程检索与给定文件、目录、存储设备或卷关联的卷的相关信息。 |
NtReadFile 详细了解 NtReadFile 例程。 |
NtReadOnlyEnlistment ZwReadOnlyEnlistment 例程将指定的登记设置为只读。 |
NtRecoverEnlistment ZwRecoverEnlistment 例程为与指定登记关联的事务启动恢复操作。 |
NtRecoverResourceManager ZwRecoverResourceManager 例程尝试恢复与指定资源管理器对象的每次登记关联的事务。 |
NtRecoverTransactionManager ZwRecoverTransactionManager 例程重建事务管理器对象的状态, (包括从日志流中的恢复信息) 的所有事务、登记和资源管理器。 |
NtRenameTransactionManager NtRenameTransactionManager 例程更改存储在日志文件名称中包含的 CLFS 日志文件流中的事务管理器对象的标识。 |
NtRollbackComplete ZwRollbackComplete 例程通知 KTM 调用的资源管理器已完成回滚事务的数据。 |
NtRollbackEnlistment ZwRollbackEnlistment 例程回滚与指定登记关联的事务。 |
NtRollbackTransaction ZwRollbackTransaction 例程为指定事务启动回滚操作。 |
NtRollforwardTransactionManager ZwRollforwardTransactionManager 例程针对分配给指定事务管理器的所有正在进行的事务启动恢复操作。 |
NtSetInformationEnlistment ZwSetInformationEnlistment 例程设置指定登记对象的信息。 |
NtSetInformationFile ntifs.h 中的 NtSetInformationFile 例程更改有关文件对象的各种信息。 |
NtSetInformationResourceManager 不使用 ZwSetInformationResourceManager 例程。 |
NtSetInformationThread 了解 ZwSetInformationThread 例程如何设置线程的优先级。 |
NtSetInformationToken NtSetInformationToken 例程修改指定令牌中的信息。 调用进程必须具有访问权限才能设置信息。 |
NtSetInformationTransaction ZwSetInformationTransaction 例程设置指定事务的信息。 |
NtSetInformationTransactionManager 不要从内核模式代码调用此例程。 |
NtSetQuotaInformationFile NtSetQuotaInformationFile 例程更改与 FileHandle 参数关联的卷的配额条目。 |
NtSetSecurityObject 详细了解 NtSetSecurityObject 例程。 |
NtSinglePhaseReject ZwSinglePhaseReject 例程通知 KTM,调用资源管理器不支持对指定的登记执行单阶段提交操作。 |
NtUnlockFile 中的 NtUnlockFile 例程解锁文件中的字节范围锁。 如果调用处于用户模式,请使用名称 NtUnlockFile 而不是 ZwUnlockFile。 |
NtWriteFile 详细了解 NtWriteFile 例程。 |
ObCloseHandle ObCloseHandle 例程关闭对象句柄。 |
ObDereferenceObject ObDereferenceObject 例程递减给定对象的引用计数并执行保留检查。 |
ObDereferenceObjectDeferDelete ObDereferenceObjectDeferDelete 例程可递减给定对象的引用计数、检查对象保留期并避免死锁。 |
ObDereferenceObjectDeferDeleteWithTag ObDereferenceObjectDeferDeleteWithTag 例程递减指定对象的引用计数,延迟删除对象以避免死锁,并将四字节标记值写入对象以支持对象引用跟踪。 |
ObDereferenceObjectWithTag ObDereferenceObjectWithTag 例程递减指定对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。 |
ObfReferenceObject ObfReferenceObject 例程将引用计数递增到给定对象。 |
ObGetObjectSecurity ObGetObjectSecurity 例程获取给定对象的安全描述符。 |
ObReferenceObject ObReferenceObject 例程将引用计数递增到给定对象。 |
ObReferenceObjectByHandle ObReferenceObjectByHandle 例程在对象句柄上提供访问验证,如果可以授予访问权限,则返回指向对象正文的相应指针。 |
ObReferenceObjectByHandleWithTag ObReferenceObjectByHandleWithTag 例程递增由指定句柄标识的对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。 |
ObReferenceObjectByPointer ObReferenceObjectByPointer 例程递增给定对象的指针引用计数。 |
ObReferenceObjectByPointerWithTag ObReferenceObjectByPointerWithTag 例程递增指定对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。 |
ObReferenceObjectSafe ObReferenceObjectSafe 函数递增对象的引用计数,并确定使用 对象是否安全。 如果删除对象,则返回 FALSE;如果可以安全地进一步使用该对象,则返回 TRUE。 |
ObReferenceObjectWithTag ObReferenceObjectWithTag 例程递增指定对象的引用计数,并将四字节标记值写入对象以支持对象引用跟踪。 |
ObRegisterCallbacks ObRegisterCallbacks 例程注册线程、进程和桌面句柄操作的回调例程列表。 |
ObReleaseObjectSecurity ObReleaseObjectSecurity 例程是 ObGetObjectSecurity 的倒数。 |
ObUnRegisterCallbacks ObUnRegisterCallbacks 例程注销注册到 ObRegisterCallbacks 例程的一组回调例程。 |
PALLOCATE_ADAPTER_CHANNEL AllocateAdapterChannel 例程代表目标设备对象为系统准备 DMA 操作,然后调用驱动程序提供的 AdapterControl 例程来执行 DMA 操作。 |
PALLOCATE_ADAPTER_CHANNEL_EX AllocateAdapterChannelEx 例程分配执行 DMA 传输所需的资源,然后调用驱动程序提供的 AdapterControl 例程来启动 DMA 传输。 |
PALLOCATE_COMMON_BUFFER AllocateCommonBuffer 例程分配内存并映射内存,以便可以同时从处理器和设备进行 DMA 操作。 |
PALLOCATE_COMMON_BUFFER_EX AllocateCommonBufferEx 例程为公共缓冲区分配内存并映射此内存,以便处理器和执行 DMA 操作的设备都可以访问该内存。 |
PALLOCATE_COMMON_BUFFER_VECTOR 详细了解:PALLOCATE_COMMON_BUFFER_VECTOR回调函数 |
PALLOCATE_COMMON_BUFFER_WITH_BOUNDS 此回调函数为公共缓冲区分配内存并将其映射,以便主设备和 CPU 可以访问该内存。 |
PALLOCATE_DOMAIN_COMMON_BUFFER 此回调函数为域公共缓冲区分配内存。 |
PBUILD_MDL_FROM_SCATTER_GATHER_LIST BuildMdlFromScatterGatherList 例程从系统分配的散点/收集列表生成 MDL。注意 此例程保留供系统使用。 |
PBUILD_SCATTER_GATHER_LIST BuildScatterGatherList 例程使用驱动程序提供的缓冲区生成散点/收集列表,为系统准备 DMA 操作。 |
PBUILD_SCATTER_GATHER_LIST_EX BuildScatterGatherListEx 例程分配 DMA 传输所需的资源,生成散点/收集列表,并调用驱动程序提供的 AdapterListControl 例程来启动 DMA 传输。 |
PCALCULATE_SCATTER_GATHER_LIST_SIZE CalculateScatterGatherList 例程计算保存给定缓冲区所需的散点/收集列表的大小(以字节为单位)。 |
PCANCEL_ADAPTER_CHANNEL CancelAdapterChannel 例程尝试取消用于分配 DMA 通道的挂起请求。 |
PCANCEL_MAPPED_TRANSFER CancelMappedTransfer 例程取消当前映射到适配器的系统 DMA 传输。 |
PCI_MSIX_MASKUNMASK_ENTRY MaskTableEntry 例程在 MSI-X 硬件中断表中屏蔽中断。 |
PCI_MSIX_SET_ENTRY SetTableEntry 例程为 MSI-X 硬件中断表中的表项设置消息 ID。 |
PCLFS_CLIENT_ADVANCE_TAIL_CALLBACK ClfsAdvanceTailCallback 函数将基本日志序列号 (LSN) 的客户端日志推进。 |
PCLFS_CLIENT_LFF_HANDLER_COMPLETE_CALLBACK ClfsLogGrowthCompleteCallback 函数实现在以前已满的日志中释放空间时客户端将采取的操作。 |
PCLFS_CLIENT_LOG_UNPINNED_CALLBACK ClfsLogUnpinnedCallback 函数实现客户端在以前固定的日志变为取消固定时将执行的任何操作。 |
PCONFIGURE_ADAPTER_CHANNEL ConfigureAdapterChannel 例程调用由适配器对象表示的 DMA 控制器实现的自定义函数。 |
PCREATE_PROCESS_NOTIFY_ROUTINE 由驱动程序实现的进程创建回调,用于跟踪系统范围内针对驱动程序内部状态创建和删除的进程。 |
PCREATE_PROCESS_NOTIFY_ROUTINE_EX 驱动程序实现的回调例程,用于在创建或退出进程时通知调用方。 |
PCREATE_THREAD_NOTIFY_ROUTINE 驱动程序实现的回调例程,用于在创建或删除线程时通知调用方。 |
PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE 了解 PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS 结构。 |
PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE PEP_ACPI_INITIALIZE_EXTENDED_IO_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS 结构。 |
PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE 了解 PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_EXTENDED_ADDRESS 结构。 |
PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE PEP_ACPI_INITIALIZE_EXTENDED_MEMORY_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_EXTENDED_ADDRESS 结构。 |
PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE 了解 PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE PEP_ACPI_INITIALIZE_GPIO_INT_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE 了解 PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE PEP_ACPI_INITIALIZE_GPIO_IO_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_GPIO_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE 了解 PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_INTERRUPT_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE PEP_ACPI_INITIALIZE_INTERRUPT_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_INTERRUPT_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_IOPORT_RESOURCE 了解 PEP_ACPI_INITIALIZE_IOPORT_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_IOPORT_RESOURCE PEP_ACPI_INITIALIZE_IOPORT_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_MEMORY_RESOURCE 了解 PEP_ACPI_INITIALIZE_MEMORY_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_MEMORY_RESOURCE PEP_ACPI_INITIALIZE_MEMORY_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_IO_MEMORY_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE 了解 PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_SPB_I2C_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE PEP_ACPI_INITIALIZE_SPB_I2C_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_I2C_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE 了解 PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE 函数如何初始化平台扩展插件的 (PEP) PEP_ACPI_SPB_SPI_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE PEP_ACPI_INITIALIZE_SPB_SPI_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_SPI_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE 了解 PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE 函数如何初始化平台扩展插件 (PEP) PEP_ACPI_SPB_UART_RESOURCE 结构。 |
PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE PEP_ACPI_INITIALIZE_SPB_UART_RESOURCE 函数初始化平台扩展插件 (PEP) PEP_ACPI_SPB_UART_RESOURCE 结构。 |
PEPCALLBACKNOTIFYACPI 了解 AcceptAcpiNotification 事件回调例程如何处理来自 Windows 电源管理框架的 ACPI 通知 (PoFx) 。 |
PEPCALLBACKNOTIFYACPI AcceptAcpiNotification 事件回调例程处理来自 Windows 电源管理框架的 ACPI 通知 (PoFx) 。 |
PEPCALLBACKNOTIFYDPM 了解 AcceptDeviceNotification 事件回调例程如何处理设备电源管理 (DPM) 来自 Windows 电源管理框架 (PoFx) 通知。 |
PEPCALLBACKNOTIFYDPM AcceptDeviceNotification 事件回调例程处理设备电源管理 (DPM) 来自 Windows 电源管理框架的通知 (PoFx) 。 |
PEPCALLBACKNOTIFYPPM 了解 AcceptProcessorNotification 事件回调例程如何处理来自 Windows 电源管理框架的处理器电源管理 (PPM) 通知 (PoFx) 。 |
PEPCALLBACKNOTIFYPPM AcceptProcessorNotification 事件回调例程处理来自 Windows 电源管理框架的处理器电源管理 (PPM) 通知 (PoFx) 。 |
PEPCALLBACKPOWERONCRASHDUMPDEVICE 了解 PowerOnDumpDeviceCallback 回调例程如何在故障转储设备上打开。 |
PEPCALLBACKPOWERONCRASHDUMPDEVICE PowerOnDumpDeviceCallback 回调例程会打开故障转储设备。 |
PFLUSH_ADAPTER_BUFFERS FlushAdapterBuffers 例程在 DMA 传输操作结束时刷新系统 DMA 控制器的内部缓存或总线-主适配器的内部缓存中剩余的任何数据。 |
PFLUSH_ADAPTER_BUFFERS_EX FlushAdapterBuffersEx 例程在系统 DMA 控制器或总线主设备执行的 DMA 传输操作结束时刷新数据缓存中保留的任何数据。 |
PFLUSH_DMA_BUFFER 回调例程会刷新 MDL 描述的内存区域中剩余的任何数据。 |
PFREE_ADAPTER_CHANNEL 当驱动程序已完成满足当前 IRP 所需的所有 DMA 操作时,FreeAdapterChannel 例程会释放系统 DMA 控制器。 |
PFREE_ADAPTER_OBJECT FreeAdapterObject 例程在驱动程序完成所有 DMA 操作后释放指定的适配器对象。 |
PFREE_COMMON_BUFFER FreeCommonBuffer 例程释放由 AllocateCommonBuffer 分配的通用缓冲区,以及该缓冲区使用的所有资源。 |
PFREE_COMMON_BUFFER_FROM_VECTOR 描述PFREE_COMMON_BUFFER_FROM_VECTOR回调函数。 |
PFREE_COMMON_BUFFER_VECTOR 描述PFREE_COMMON_BUFFER_VECTOR回调函数。 |
PFREE_MAP_REGISTERS FreeMapRegisters 例程释放一组从调用 AllocateAdapterChannel 保存的映射寄存器。 |
PGET_COMMON_BUFFER_FROM_VECTOR_BY_INDEX 描述PGET_COMMON_BUFFER_FROM_VECTOR_BY_INDEX回调函数。 |
PGET_DMA_ADAPTER_INFO GetDmaAdapterInfo 例程检索有关系统 DMA 通道的硬件功能的信息。 |
PGET_DMA_ALIGNMENT GetDmaAlignment 例程返回 DMA 系统的对齐要求。 |
PGET_DMA_DOMAIN PGET_DMA_DOMAIN回调函数获取 DMA 域的句柄。 |
PGET_DMA_TRANSFER_INFO GetDmaTransferInfo 例程计算散点/收集 DMA 传输的分配要求。 |
PGET_LOCATION_STRING PnpGetLocationString 例程提供设备SPDRP_LOCATION_PATHS属性特定于设备的部分。 |
PGET_SCATTER_GATHER_LIST GetScatterGatherList 例程通过系统 DMA 控制器或总线主适配器代表目标设备对象为 DMA 散点/收集操作准备系统。 |
PGET_SCATTER_GATHER_LIST_EX GetScatterGatherListEx 例程分配 DMA 传输所需的资源,生成散点/收集列表,并调用驱动程序提供的 AdapterListControl 例程来启动 DMA 传输。 |
pHalExamineMBR 调用 pHalExamineMBR 回调函数以读取磁盘 (MBR) 的主启动记录,如果 MBR 为指定类型,则返回 MBR 数据。 |
pHalQuerySystemInformation pHalQuerySystemInformation 回调函数读取 MCA 银行的状态寄存器。 |
pHalSetSystemInformation 向 HAL 注册 MCA 驱动程序。 |
PINITIALIZE_DMA_TRANSFER_CONTEXT InitializeDmaTransferContext 例程初始化不透明的 DMA 传输上下文,该上下文用于跟踪 DMA 资源的挂起分配。 |
PINTERFACE_DEREFERENCE PINTERFACE_DEREFERENCE回调函数 (miniport.h) 递减驱动程序定义的接口上的引用计数。 |
PINTERFACE_DEREFERENCE wdm.h (PINTERFACE_DEREFERENCE回调函数) 递减驱动程序定义的接口上的引用计数。 |
PINTERFACE_REFERENCE miniport.h (PINTERFACE_REFERENCE 回调函数) 递增驱动程序定义的接口上的引用计数。 |
PINTERFACE_REFERENCE PINTERFACE_REFERENCE回调函数 (wdm.h) 递增驱动程序定义的接口上的引用计数。 |
PJOIN_DMA_DOMAIN PJOIN_DMA_DOMAIN回调函数联接指定的 DMA 域。 |
PLEAVE_DMA_DOMAIN PLEAVE_DMA_DOMAIN回调函数离开指定的 DMA 域。 |
PLOAD_IMAGE_NOTIFY_ROUTINE 例如,当驱动程序映像或用户映像 (DLL 或 EXE) 映射到虚拟内存时,由操作系统调用以通知驱动程序。 |
PMAP_TRANSFER MapTransfer 例程为适配器对象设置映射寄存器,以映射锁定缓冲区中的 DMA 传输。 |
PMAP_TRANSFER_EX MapTransferEx 例程设置映射寄存器,以将散点/收集列表中的物理地址映射到执行 DMA 传输所需的逻辑地址。 |
PO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK ComponentActiveConditionCallback 回调例程通知驱动程序指定的组件已完成从空闲条件到活动条件的转换。 |
PO_FX_COMPONENT_CRITICAL_TRANSITION_CALLBACK ComponentCriticalTransitionCallback 回调例程处理指定组件在 F0 (完全) 和低功率 Fx 组件电源状态之间的转换。 |
PO_FX_COMPONENT_IDLE_CONDITION_CALLBACK ComponentIdleConditionCallback 回调例程通知驱动程序指定的组件已完成从活动条件到空闲条件的转换。 |
PO_FX_COMPONENT_IDLE_STATE_CALLBACK ComponentIdleStateCallback 回调例程通知驱动程序对指定组件的 Fx 电源状态的挂起更改。 |
PO_FX_COMPONENT_PERF_STATE_CALLBACK ComponentPerfStateCallback 回调例程通知驱动程序其更改组件性能状态的请求已完成。 |
PO_FX_DEVICE_POWER_NOT_REQUIRED_CALLBACK DevicePowerNotRequiredCallback 回调例程通知设备驱动程序,设备不需要保持 D0 电源状态。 |
PO_FX_DEVICE_POWER_REQUIRED_CALLBACK DevicePowerRequiredCallback 回调例程通知设备驱动程序设备必须进入并保持 D0 电源状态。 |
PO_FX_DIRECTED_POWER_DOWN_CALLBACK PO_FX_DIRECTED_POWER_DOWN_CALLBACK回调函数由客户端驱动程序实现,以代表 DFx 处理特定于驱动程序的关机活动。 |
PO_FX_DIRECTED_POWER_UP_CALLBACK PO_FX_DIRECTED_POWER_UP_CALLBACK回调函数由客户端驱动程序实现,以代表 DFx 处理特定于驱动程序的启动活动。 |
PO_FX_POWER_CONTROL_CALLBACK PowerControlCallback 回调例程执行电源管理框架 (PoFx) 请求的电源控制操作。 |
POB_POST_OPERATION_CALLBACK ObjectPostCallback 例程在进程或线程句柄操作发生后由操作系统调用。 |
POB_PRE_OPERATION_CALLBACK 发生进程或线程句柄操作时,操作系统会调用 ObjectPreCallback 例程。 |
PoCallDriver ntifs.h 中的 PoCallDriver 例程将电源 IRP 传递给设备堆栈中下一个较低的驱动程序。 仅 (Windows Server 2003、Windows XP 和 Windows 2000。) 。 |
PoCallDriver wdm.h 中的 PoCallDriver 例程将电源 IRP 传递给设备堆栈中下一个较低的驱动程序。 仅 (Windows Server 2003、Windows XP 和 Windows 2000。) 。 |
PoClearPowerRequest 详细了解 PoClearPowerRequest 例程。 |
PoClearPowerRequest wdm.h 文件中的 PoClearPowerRequest 例程会减少指定电源请求类型的计数。 |
PoCreatePowerRequest 详细了解 PoCreatePowerRequest 例程。 |
PoCreatePowerRequest wdm.h 中的 PoCreatePowerRequest 例程创建电源请求对象。 若要启用电源请求,请创建一个电源请求对象并将其用于所有调用。 |
PoDeletePowerRequest 详细了解 PoDeletePowerRequest 例程。 |
PoDeletePowerRequest wdm.h 中的 PoDeletePowerRequest 例程删除电源请求对象。 驱动程序必须先删除电源请求对象,然后才能删除设备对象。 |
PoEndDeviceBusy 详细了解 PoEndDeviceBusy 例程。 |
PoEndDeviceBusy wdm.h 文件中的 PoEndDeviceBusy 例程标记设备繁忙时段的结束时间。 |
PoFxActivateComponent PoFxActivateComponent 例程递增指定组件上的激活引用计数。 |
POFXCALLBACKCRITICALRESOURCE 了解 TransitionCriticalResource 例程如何更改核心系统组件的主动/非活动状态。 |
POFXCALLBACKCRITICALRESOURCE TransitionCriticalResource 例程更改核心系统组件的活动/非活动状态。 |
POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS 了解 EnumerateUnmaskedInterrupts 例程如何枚举取消屏蔽并启用了中断的中断源。 |
POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS EnumerateUnmaskedInterrupts 例程枚举中断已取消屏蔽并启用的中断源。 |
POFXCALLBACKPLATFORMIDLEVETO 了解 PlatformIdleVeto 例程如何增加或减少平台空闲状态的否决代码的否决计数。 |
POFXCALLBACKPLATFORMIDLEVETO PlatformIdleVeto 例程增加或减少平台空闲状态的否决代码的否决计数。 |
POFXCALLBACKPROCESSORHALT 了解 ProcessorHalt 例程如何准备要停止的处理器。 |
POFXCALLBACKPROCESSORHALT ProcessorHalt 例程准备要停止的处理器。 |
POFXCALLBACKPROCESSORIDLEVETO 了解 ProcessorIdleVeto 例程如何增加或减少处理器空闲状态的否决代码的否决计数。 |
POFXCALLBACKPROCESSORIDLEVETO ProcessorIdleVeto 例程递增或递减处理器空闲状态的否决代码的否决计数。 |
POFXCALLBACKREQUESTCOMMON 了解 RequestCommon 例程如何成为泛型请求处理程序。 |
POFXCALLBACKREQUESTCOMMON RequestCommon 例程是一个泛型请求处理程序。 |
POFXCALLBACKREQUESTINTERRUPT 了解 RequestInterrupt 例程如何请求操作系统重播边缘触发的中断,该中断可能在硬件平台处于低功耗状态时丢失。 |
POFXCALLBACKREQUESTINTERRUPT RequestInterrupt 例程请求操作系统重播边缘触发的中断,该中断可能在硬件平台处于低功耗状态时丢失。 |
POFXCALLBACKREQUESTWORKER 了解平台扩展插件 (PEP) 如何调用 RequestWorker 例程,以通知 Windows 电源管理框架 (PoFx) 平台扩展插件 (PEP) 具有代表指定设备提交的工作请求。 |
POFXCALLBACKREQUESTWORKER RequestWorker 例程由平台扩展插件 (PEP) 调用,以通知 Windows 电源管理框架 (PoFx) 平台扩展插件 (PEP) 具有代表指定设备提交的工作请求。 |
POFXCALLBACKUPDATEPLATFORMIDLESTATE 了解平台扩展插件如何调用 UpdatePlatformIdleState 例程, (PEP) 更新指定平台空闲状态的属性。 |
POFXCALLBACKUPDATEPLATFORMIDLESTATE UpdatePlatformIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定平台空闲状态的属性。 |
POFXCALLBACKUPDATEPROCESSORIDLESTATE 了解平台扩展插件如何调用 UpdateProcessorIdleState 例程, (PEP) 更新指定处理器空闲状态的属性。 |
POFXCALLBACKUPDATEPROCESSORIDLESTATE UpdateProcessorIdleState 例程由平台扩展插件 (PEP) 调用,以更新指定处理器空闲状态的属性。 |
PoFxCompleteDevicePowerNotRequired PoFxCompleteDevicePowerNotRequired 例程通知电源管理框架 (PoFx) 调用驱动程序已完成对驱动程序的 DevicePowerNotRequiredCallback 回调例程的调用的响应。 |
PoFxCompleteDirectedPowerDown (DFx) 客户端驱动程序的定向 Power Framework 调用此函数来完成定向关机转换。 |
PoFxCompleteIdleCondition PoFxCompleteIdleCondition 例程通知电源管理框架 (PoFx) 指定的组件已完成对空闲条件的挂起更改。 |
PoFxCompleteIdleState PoFxCompleteIdleState 例程通知电源管理框架 (PoFx) 指定的组件已完成对 Fx 状态的挂起更改。 |
PoFxIdleComponent PoFxIdleComponent 例程递减指定组件上的激活引用计数。 |
PoFxIssueComponentPerfStateChange PoFxIssueComponentPerfStateChange 例程提交将设备组件置于特定性能状态的请求。 |
PoFxIssueComponentPerfStateChangeMultiple PoFxIssueComponentPerfStateChangeMultiple 例程提交请求,以同时更改设备组件的多个性能状态集中的性能状态。 |
PoFxNotifySurprisePowerOn PoFxNotifySurprisePowerOn 例程通知电源管理框架 (PoFx) 设备已打开,这是向其他设备供电的副作用。 |
PoFxPowerControl PoFxPowerControl 例程将电源控制请求发送到电源管理框架 (PoFx) 。 |
PoFxPowerOnCrashdumpDevice PoFxPowerOnCrashdumpDevice 例程请求启用故障转储设备。 |
PoFxQueryCurrentComponentPerfState PoFxQueryCurrentComponentPerfState 例程检索组件性能状态集中的活动性能状态。 |
PoFxRegisterComponentPerfStates PoFxRegisterComponentPerfStates 例程注册设备组件,以便通过电源管理框架 (PoFx) 进行性能状态管理。 |
PoFxRegisterCoreDevice 了解 PoFxRegisterCoreDevice 例程如何将新的核心系统资源注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterCoreDevice PoFxRegisterCoreDevice 例程将新的核心系统资源注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterCrashdumpDevice PoFxRegisterCrashdumpDevice 例程注册故障转储设备。 |
PoFxRegisterDevice PoFxRegisterDevice 例程将设备注册到电源管理框架 (PoFx) 。 |
PoFxRegisterPlugin 了解 PoFxRegisterPlugin 例程如何将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterPlugin PoFxRegisterPlugin 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterPluginEx 了解 PoFxRegisterPluginEx 例程如何将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxRegisterPluginEx PoFxRegisterPluginEx 例程将平台扩展插件 (PEP) 注册到 Windows 电源管理框架 (PoFx) 。 |
PoFxReportDevicePoweredOn PoFxReportDevicePoweredOn 例程通知电源管理框架 (PoFx) ,设备在完全) 电源状态上完成了到 D0 的请求转换 (。 |
PoFxSetComponentLatency PoFxSetComponentLatency 例程指定在从空闲条件转换为指定组件中的活动条件时可以容忍的最大延迟。 |
PoFxSetComponentResidency PoFxSetComponentResidency 例程设置组件进入空闲条件后组件可能保持空闲状态的估计时间。 |
PoFxSetComponentWake PoFxSetComponentWake 例程指示每当组件进入空闲条件时,驱动程序是否支持指定的组件进行唤醒。 |
PoFxSetDeviceIdleTimeout PoFxSetDeviceIdleTimeout 例程指定从设备最后一个组件进入空闲条件到电源管理框架 (PoFx) 调用驱动程序的 DevicePowerNotRequiredCallback 例程的最短时间间隔。 |
PoFxSetTargetDripsDevicePowerState 调用此例程以通知电源管理器 DRIPS 的设备目标设备电源状态。 驱动程序可以替代 PEP 提供的 DRIPS 约束。 |
PoFxStartDevicePowerManagement PoFxStartDevicePowerManagement 例程完成设备注册到电源管理框架 (PoFx) 并启动设备电源管理。 |
PoFxUnregisterDevice PoFxUnregisterDevice 例程从电源管理框架中删除设备注册 (PoFx) 。 |
PoGetSystemWake PoGetSystemWake 例程确定指定的 IRP 是否已标记为将系统从睡眠状态唤醒。 |
PopEntryList PopEntryList 例程从SINGLE_LIST_ENTRY结构的单独链接列表中删除第一个条目。 |
PoQueryWatchdogTime 详细了解 PoQueryWatchdogTime 例程。 |
PoQueryWatchdogTime wdm.h 中的 PoQueryWatchdogTime 例程指示电源管理器是否为分配给设备堆栈的任何电源 IRP 启用了超时计数器。 |
PoRegisterDeviceForIdleDetection 详细了解 PoRegisterDeviceForIdleDetection 例程。 |
PoRegisterDeviceForIdleDetection wdm.h 中的 PoRegisterDeviceForIdleDetection 例程启用或取消空闲检测,并为设备设置空闲超时值。 |
PoRegisterPowerSettingCallback 详细了解 PoRegisterPowerSettingCallback 例程。 |
PoRegisterPowerSettingCallback wdm.h 中的 PoRegisterPowerSettingCallback 例程注册电源设置回调例程,以接收指定电源设置中更改的通知。 |
PoRegisterSystemState 详细了解 PoRegisterSystemState 例程。 |
PoRegisterSystemState wdm.h 中的 PoRegisterSystemState 例程将系统注册为忙,因为标志指示的某些活动。 |
PoRequestPowerIrp PoRequestPowerIrp 例程分配电源 IRP 并将其发送到指定设备的设备堆栈中的顶部驱动程序。 |
PoSetDeviceBusy 详细了解:PoSetDeviceBusy |
PoSetDeviceBusyEx 详细了解 PoSetDeviceBusyEx 例程。 |
PoSetDeviceBusyEx wdm.h 中的 PoSetDeviceBusyEx 例程通知电源管理器与指定的空闲计数器关联的设备正忙。 |
PoSetPowerRequest ntifs.h 中的 PoSetPowerRequest 例程递增电源请求类型的计数。 电源管理器对每种电源请求类型的请求进行计数。 |
PoSetPowerRequest wdm.h 中的 PoSetPowerRequest 例程递增指定的电源请求类型的计数。 电源管理器对每种电源请求类型的请求进行计数。 |
PoSetPowerState ntifs.h 中的 PoSetPowerState 例程通知系统设备电源状态发生更改。 |
PoSetPowerState wdm.h 中的 PoSetPowerState 例程通知系统设备电源状态发生更改。 |
PoSetSystemState 驱动程序调用 PoSetSystemState 例程以指示系统处于活动状态。 |
PoSetSystemWake PoSetSystemWake 例程将指定的 IRP 标记为有助于将系统从睡眠状态唤醒的 IRP。 |
PoSetSystemWakeDevice PoSetSystemWakeDevice 函数尝试从提供的设备对象中提取 PDO。 |
PoStartDeviceBusy ntifs.h 中的 PoStartDeviceBusy 例程标记设备繁忙时段的开始时间。 |
PoStartDeviceBusy wdm.h 中的 PoStartDeviceBusy 例程标记设备繁忙时段的开始时间。 |
PoStartNextPowerIrp ntifs.h 中的 PoStartNextPowerIrp 例程向电源管理器发出信号,表明驱动程序已准备好处理下一个电源 IRP。 |
PoStartNextPowerIrp wdm.h 中的 PoStartNextPowerIrp 例程向电源管理器发出信号,表明驱动程序已准备好处理下一个电源 IRP。 |
PoUnregisterPowerSettingCallback ntifs.h 中的 PoUnregisterPowerSettingCallback 例程取消注册驱动程序以前注册的电源设置回调例程。 |
PoUnregisterPowerSettingCallback wdm.h 中的 PoUnregisterPowerSettingCallback 例程取消注册驱动程序以前注册的电源设置回调例程。 |
PoUnregisterSystemState ntifs.h 中的 PoUnregisterSystemState 例程取消由 PoRegisterSystemState 创建的系统状态注册。 |
PoUnregisterSystemState wdm.h 中的 PoUnregisterSystemState 例程取消由 PoRegisterSystemState 创建的系统状态注册。 |
PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER 详细了解:PPHYSICAL_COUNTER_EVENT_BUFFER_OVERFLOW_HANDLER回调函数 |
PPHYSICAL_COUNTER_OVERFLOW_HANDLER PPHYSICAL_COUNTER_OVERFLOW_HANDLER由客户端驱动程序实现,以处理通过 HalAllocateHardwareCounters 例程获取的计数器资源溢出。 |
PPO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK 了解 EnumerateInterruptSource 回调例程如何提供平台扩展插件 (PEP) 以及有关中断源的信息。 |
PPO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK EnumerateInterruptSource 回调例程提供平台扩展插件 (PEP) 有关中断源的信息。 |
PPUT_DMA_ADAPTER PutDmaAdapter 例程释放以前由 IoGetDmaAdapter 分配的DMA_ADAPTER结构。 |
PPUT_SCATTER_GATHER_LIST PutScatterGatherList 例程释放之前分配的映射寄存器以及散点/收集 DMA 中使用的散点/收集列表。 |
PREAD_DMA_COUNTER ReadDmaCounter 例程返回当前从属 DMA 操作期间要传输的剩余字节数。 |
PREENUMERATE_SELF ReenumerateSelf 例程请求总线驱动程序重新调用子设备。 |
ProbeForRead ProbeForRead 例程检查用户模式缓冲区是否实际驻留在地址空间的用户部分,并且是否正确对齐。 |
ProbeForWrite ProbeForWrite 例程检查用户模式缓冲区是否实际驻留在地址空间的用户模式部分、是否可写以及是否正确对齐。 |
PROCESSOR_HALT_ROUTINE Halt 回调例程将处理器转换为空闲状态。 |
PsAllocateAffinityToken PsAllocateAffinityToken 函数分配线程相关性令牌。 |
PsAllocSiloContextSlot 此例程分配一个槽,该槽可用于在所有接收器中插入、检索和删除对象。 |
PsAttachSiloToCurrentThread 此例程将线程暂时放入指定的 Silo 中。 |
PsCreateSiloContext 此例程创建一个对象,该对象将插入 Silo 中。 |
PsCreateSystemThread PsCreateSystemThread 例程创建一个系统线程,该线程在内核模式下执行,并返回线程的句柄。 |
PsDereferenceSiloContext 此例程递减对象上的引用计数。 |
PsDetachSiloFromCurrentThread 此例程从由附加添加的 silo 中删除线程。 有关附加的详细信息,请参阅 PsAttachSiloToCurrentThread 例程。 |
PsFreeAffinityToken PsFreeAffinityToken 函数释放由 PsAllocateAffinityToken 分配的关联令牌。 |
PsFreeSiloContextSlot 此例程释放指定的槽,并使它在系统中可用。 它会撤消 PsAllocSiloContextSlot 例程的效果。 |
PsGetCurrentProcessId PsGetCurrentProcessId 例程标识当前线程的进程。 |
PsGetCurrentServerSilo 此例程返回线程的有效服务器接收器。 |
PsGetCurrentSilo 此例程返回调用线程的当前 silo。 首先检查线程,以查看它是否已附加到 silo。 如果没有,则检查线程以查看它是否在 silo 中。 |
PsGetCurrentThread PsGetCurrentThread 例程标识当前线程。 |
PsGetCurrentThread 了解 PsGetCurrentThread 例程如何标识当前线程。 |
PsGetCurrentThread 了解 PsGetCurrentThread 例程 (wdm.h) 如何标识当前线程。 |
PsGetCurrentThreadId PsGetCurrentThreadId 例程标识当前线程。 |
PsGetCurrentThreadTeb PsGetCurrentThreadTeb 例程返回当前线程的线程环境块 (TEB) 。 必须在内核模式下进行调用。 |
PsGetEffectiveServerSilo 此例程遍历 Silo 的父链,直到找到有效的服务器 silo 或主机 silo。 |
PsGetHostSilo 此例程返回主机接收器。 |
PsGetJobServerSilo 此例程返回作业的有效 ServerSilo。 只要提供的 Job 对象仍被引用,返回的指针就有效。 |
PsGetJobSilo 此例程返回层次结构中作为 Silo 的第一个作业。 只要提供的 Job 对象仍被引用,返回的指针就有效。 |
PsGetParentSilo 检索给定作业对象的层次结构中最直接的父接收器。 |
PsGetPermanentSiloContext 此例程检索插入到 Silo 中的对象,而不增加引用计数。 |
PsGetProcessCreateTimeQuadPart PsGetProcessCreateTimeQuadPart 例程返回一个 LONGLONG 值,该值表示创建进程的时间。 |
PsGetProcessId PsGetProcessId 例程返回与指定进程关联的进程标识符 (进程 ID) 。 |
PsGetServerSiloActiveConsoleId 获取所提供线程的当前服务器 silo 上下文的活动控制台。 |
PsGetSiloContainerId 获取给定 Silo 的 ContainerId。 |
PsGetSiloContext 此例程从指定的 silo 和槽中检索 silo 上下文。 |
PsGetSiloMonitorContextSlot 此例程返回注册期间由监视器分配的 silo 上下文槽。 |
PsGetThreadProcessId PsGetThreadProcessId 例程返回与指定线程的进程关联的进程标识符。 |
PsGetThreadServerSilo 确定给定线程是否为 silo。 |
PsGetVersion 此函数在 Windows XP 和更高版本的 Windows 操作系统中已过时。 请改用 RtlGetVersion。PsGetVersion 返回调用方选择的有关基于 NT 的操作系统的当前版本的信息。 |
PsInsertPermanentSiloContext 此例程在 Silo 的空槽中插入对象。 |
PsInsertSiloContext 了解此例程如何在 Silo 的空槽中插入对象。 |
PsIsHostSilo 如果提供的 Silo 是主机接收器,则此例程将检查。 |
PsIsSystemThread PsIsSystemThread 例程检查给定线程是否为系统线程。 |
PsMakeSiloContextPermanent 此例程使 silo 实例中的槽为只读,从而允许检索槽中的对象,而不会影响该对象的引用计数。 |
PsQueryTotalCycleTimeProcess PsQueryTotalCycleTimeProcess 例程返回指定进程的累积周期时间。 |
PsReferenceSiloContext 此例程递增对象上的引用计数。 |
PsRegisterSiloMonitor 此例程注册可以接收有关服务器 silo 事件的通知的服务器 silo 监视器。 |
PsRemoveCreateThreadNotifyRoutine PsRemoveCreateThreadNotifyRoutine 例程删除由 PsSetCreateThreadNotifyRoutine 例程注册的回调例程。 |
PsRemoveLoadImageNotifyRoutine PsRemoveLoadImageNotifyRoutine 例程删除由 PsSetLoadImageNotifyRoutine 例程注册的回调例程。 |
PsRemoveSiloContext 此例程将删除已插入 Silo 中的对象。 |
PsReplaceSiloContext 此例程在 Silo 中插入对象。 |
PsRevertToUserMultipleGroupAffinityThread PsRevertToUserMultipleGroupAffinityThread 函数将当前线程还原为给定关联令牌指示的以前的关联。 |
PsSetCreateProcessNotifyRoutine PsSetCreateProcessNotifyRoutine 例程在创建或删除进程时要调用的例程列表中添加驱动程序提供的回调例程,或者从中删除该例程。 |
PsSetCreateProcessNotifyRoutineEx PsSetCreateProcessNotifyRoutineEx 例程注册或删除一个回调例程,该例程在创建或退出进程时通知调用方。 |
PsSetCreateProcessNotifyRoutineEx2 PsSetCreateProcessNotifyRoutineEx2 例程注册或删除一个回调例程,该例程在创建或删除进程时通知调用方。 |
PsSetCreateThreadNotifyRoutine PsSetCreateThreadNotifyRoutine 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。 |
PsSetCreateThreadNotifyRoutineEx PsSetCreateThreadNotifyRoutineEx 例程注册驱动程序提供的回调,该回调随后会在创建新线程和删除此类线程时收到通知。 |
PsSetLoadImageNotifyRoutine PsSetLoadImageNotifyRoutine 例程注册驱动程序提供的回调,每当映像加载 (或映射到内存) 时,该回调就会发出通知。 |
PsSetLoadImageNotifyRoutineEx PsSetLoadImageNotifyRoutineEx 例程注册驱动程序提供的回调,每当映像加载 (或映射到内存) 时,该回调就会发出通知。 |
PsSetSystemMultipleGroupAffinityThread PsSetSystemMultipleGroupAffinityThread 函数设置当前线程的多组系统相关性。 |
PsStartSiloMonitor 此例程尝试启动服务器 silo 监视器。 |
PsTerminateServerSilo 此例程终止指定的 silo。 |
PsTerminateSystemThread PsTerminateSystemThread 例程终止当前系统线程。 |
PsUnregisterSiloMonitor 此例程取消注册服务器 silo 监视器。 |
PTM_RM_NOTIFICATION 资源管理器的 ResourceManagerNotification 回调例程接收并处理事务通知。 |
PushEntryList PushEntryList 例程在SINGLE_LIST_ENTRY结构的单独链接列表的开头插入一个条目。 |
READ_PORT_BUFFER_UCHAR READ_PORT_BUFFER_UCHAR 函数 (miniport.h) 将指定端口地址中的多个字节读取到缓冲区中。 |
READ_PORT_BUFFER_UCHAR READ_PORT_BUFFER_UCHAR 函数 (wdm.h) 将指定端口地址中的多个字节读取到缓冲区中。 |
READ_PORT_BUFFER_ULONG READ_PORT_BUFFER_ULONG 函数 (miniport.h) 将指定端口地址中的多个 ULONG 值读取到缓冲区中。 |
READ_PORT_BUFFER_ULONG READ_PORT_BUFFER_ULONG 函数 (wdm.h) 将指定端口地址中的多个 ULONG 值读取到缓冲区中。 |
READ_PORT_BUFFER_USHORT READ_PORT_BUFFER_USHORT 函数 (miniport.h) 将指定端口地址中的大量 USHORT 值读取到缓冲区中。 |
READ_PORT_BUFFER_USHORT READ_PORT_BUFFER_USHORT 函数 (wdm.h) 将指定端口地址中的许多 USHORT 值读取到缓冲区中。 |
READ_PORT_UCHAR READ_PORT_UCHAR 函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。 |
READ_PORT_UCHAR READ_PORT_UCHAR 函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。 |
READ_PORT_UCHAR READ_PORT_UCHAR 函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的字节。 |
READ_PORT_ULONG READ_PORT_ULONG 函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。 |
READ_PORT_ULONG READ_PORT_ULONG 函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。 |
READ_PORT_ULONG READ_PORT_ULONG函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的 ULONG 值。 |
READ_PORT_USHORT READ_PORT_USHORT 函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。 |
READ_PORT_USHORT READ_PORT_USHORT 函数 (miniport.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。 |
READ_PORT_USHORT READ_PORT_USHORT 函数 (wdm.h) 返回从驻留的映射设备内存中的指定端口地址读取的 USHORT 值。 |
READ_REGISTER_BUFFER_UCHAR READ_REGISTER_BUFFER_UCHAR 函数 (miniport.h) 将指定寄存器地址中的多个字节读取到缓冲区中。 |
READ_REGISTER_BUFFER_UCHAR READ_REGISTER_BUFFER_UCHAR 函数 (wdm.h) 将指定寄存器地址中的多个字节读取到缓冲区中。 |
READ_REGISTER_BUFFER_ULONG READ_REGISTER_BUFFER_ULONG 函数 (miniport.h) 将指定寄存器地址中的多个 ULONG 值读取到缓冲区中。 |
READ_REGISTER_BUFFER_ULONG READ_REGISTER_BUFFER_ULONG 函数 (wdm.h) 将指定寄存器地址中的多个 ULONG 值读取到缓冲区中。 |
READ_REGISTER_BUFFER_ULONG64 READ_REGISTER_BUFFER_ULONG64 函数 (wdm.h) 将指定寄存器地址中的多个 ULONG64 值读取到缓冲区中。 |
READ_REGISTER_BUFFER_USHORT READ_REGISTER_BUFFER_USHORT函数 (miniport.h) 将指定寄存器地址中的许多 USHORT 值读取到缓冲区中。 |
READ_REGISTER_BUFFER_USHORT READ_REGISTER_BUFFER_USHORT 函数 (wdm.h) 将指定寄存器地址中的许多 USHORT 值读取到缓冲区中。 |
READ_REGISTER_UCHAR READ_REGISTER_UCHAR 函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的字节。 |
READ_REGISTER_UCHAR READ_REGISTER_UCHAR函数 (miniport.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的字节。 |
READ_REGISTER_UCHAR READ_REGISTER_UCHAR 函数 (wdm.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的字节。 |
READ_REGISTER_ULONG READ_REGISTER_ULONG 函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 ULONG 值。 |
READ_REGISTER_ULONG READ_REGISTER_ULONG 函数 (miniport.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 ULONG 值。 |
READ_REGISTER_ULONG READ_REGISTER_ULONG函数 (wdm.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 ULONG 值。 |
READ_REGISTER_ULONG64 READ_REGISTER_ULONG64函数 (wdm.h) 从指定的寄存器地址读取 ULONG64 值。 |
READ_REGISTER_USHORT READ_REGISTER_USHORT 函数 (ioaccess.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 USHORT 值。 |
READ_REGISTER_USHORT READ_REGISTER_USHORT 函数 (miniport.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 USHORT 值。 |
READ_REGISTER_USHORT READ_REGISTER_USHORT 函数 (wdm.h) 返回从驻留的映射设备内存中的指定寄存器地址读取的 USHORT 值。 |
ReadBooleanRaw 介绍 ReadBooleanRaw 函数。 |
ReadBooleanRaw 本主题介绍 ReadBooleanRaw 函数。 |
ReadInt32Acquire 本主题介绍 ReadInt32Acquire 函数。 |
ReadInt32Acquire ReadInt32Acquire 函数... |
ReadInt32NoFence 本主题介绍 ReadInt32NoFence 函数。 |
ReadInt32NoFence ReadInt32NoFence 函数... |
ReadInt32Raw 本主题介绍 ReadInt32Raw 函数。 |
ReadInt32Raw ReadInt32Raw 函数... |
ReadUInt32Acquire 本主题介绍 ReadUInt32Acquire 函数。 |
ReadUInt32Acquire ReadUInt32Acquire 函数... |
ReadUInt32NoFence 本主题介绍 ReadUInt32NoFence 函数。 |
ReadUInt32NoFence ReadUInt32NoFence 函数... |
ReadUInt32Raw 本主题介绍 ReadUInt32Raw 函数。 |
ReadUInt32Raw ReadUInt32Raw 函数... |
RemoveEntryList RemoveEntryList 例程从LIST_ENTRY结构的双重链接列表中删除条目。 |
RemoveHeadList RemoveHeadList 例程从LIST_ENTRY结构的双重链接列表的开头删除条目。 |
RemoveTailList RemoveTailList 例程从LIST_ENTRY结构的双链接列表末尾删除条目。 |
REQUEST_POWER_COMPLETE PowerCompletion 回调例程完成电源 IRP 的处理。 |
RTL_QUERY_REGISTRY_ROUTINE QueryRoutine 例程提供有关在前面调用 RtlQueryRegistryValues 例程时请求的注册表值的信息。 |
RTL_RUN_ONCE_INIT_FN RunOnceInitialization 例程执行一次性初始化操作。 |
RtlAnsiStringToUnicodeSize RtlAnsiStringToUnicodeSize 例程返回保存转换为 Unicode 字符串的 ANSI 字符串所需的字节数。 |
RtlAnsiStringToUnicodeString RtlAnsiStringToUnicodeString 将给定的 ANSI 源字符串转换为 Unicode 字符串。 |
RtlAppendUnicodeStringToString RtlAppendUnicodeStringToString 例程连接两个 Unicode 字符串。 |
RtlAppendUnicodeToString RtlAppendUnicodeToString 例程将提供的 Unicode 字符串连接到缓冲的 Unicode 字符串。 |
RtlAreBitsClear RtlAreBitsClear 例程确定位图变量中的给定位范围是否清晰。 |
RtlAreBitsSet RtlAreBitsSet 例程确定是否设置位图变量中的给定位范围。 |
RtlByteToChar 将 BYTE 类型的值转换为 CHAR 类型的值。 |
RtlByteToInt8 将 BYTE 类型的值转换为 INT8 类型的值。 |
RtlCharToInteger RtlCharToInteger 例程将单字节字符串转换为指定基数中的整数值。 |
RtlCheckBit RtlCheckBit 例程确定给定位图变量中的特定位是清除还是已设置。 |
RtlCheckRegistryKey RtlCheckRegistryKey 例程检查注册表中是否存在给定的命名项。 |
RtlClearAllBits RtlClearAllBits 例程将给定位图变量中的所有位设置为零。 |
RtlClearBit RtlClearBit 例程将位图中的指定位设置为零。 |
RtlClearBits RtlClearBits 例程将位图中指定位范围内的所有位设置为零。 |
RtlCmDecodeMemIoResource RtlCmDecodeMemIoResource 例程提供描述内存或 I/O 端口地址范围的CM_PARTIAL_RESOURCE_DESCRIPTOR结构的起始地址和长度。 |
RtlCmEncodeMemIoResource RtlCmEncodeMemIoResource 例程更新CM_PARTIAL_RESOURCE_DESCRIPTOR结构,以描述内存或 I/O 端口地址的范围。 |
RtlCompareMemory RtlCompareMemory 例程比较两个内存块,并返回在第一个差异之前匹配的字节数。 |
RtlCompareString RtlCompareString 例程比较两个计数字符串。 |
RtlCompareUnicodeString RtlCompareUnicodeString 例程比较两个 Unicode 字符串。 |
RtlConstantTimeEqualMemory 本主题介绍 RtlConstantTimeEqualMemory 函数。 |
RtlConvertLongToLargeInteger RtlConvertLongToLargeInteger 例程将输入有符号整数转换为有符号大整数。 |
RtlConvertLongToLuid RtlConvertLongToLuid 例程将长整数转换为本地唯一标识符 (LUID) ,系统使用该标识符来表示安全特权。 |
RtlConvertUlongToLargeInteger RtlConvertUlongToLargeInteger 例程将输入无符号整数转换为有符号大整数。 对于 Windows XP 和更高版本的 Windows,请勿使用此例程;使用对__int64的本机支持。 |
RtlConvertUlongToLuid RtlConvertUlongToLuid 例程将无符号长整型转换为本地唯一标识符 (LUID) ,系统使用该标识符来表示安全特权。 |
RtlCopyMemory 了解 RtlCopyMemory 例程如何将源内存块的内容复制到目标内存块。 |
RtlCopyMemoryNonTemporal 此函数使用不会污染缓存的非临时移动从一个缓冲区复制到另一个缓冲区。 缓冲区不应重叠。 |
RtlCopyString RtlCopyString 例程将源字符串复制到目标字符串。 |
RtlCopyUnicodeString RtlCopyUnicodeString 例程将源字符串复制到目标字符串。 |
RtlCreateRegistryKey RtlCreateRegistryKey 例程在注册表中沿给定的相对路径添加键对象。 |
RtlCreateSecurityDescriptor RtlCreateSecurityDescriptor 例程初始化新的绝对格式安全描述符。 返回时,安全描述符初始化时,没有系统 ACL、无任意 ACL、无所有者、没有主组,并且所有控制标志都设置为零。 |
RtlDeleteRegistryValue RtlDeleteRegistryValue 例程沿给定相对路径从注册表中删除指定的条目名称和关联的值。 |
RtlDowncaseUnicodeChar RtlDowncaseUnicodeChar 例程将指定的 Unicode 字符转换为小写。 |
RtlDWordPtrAdd 将两个类型为 DWORD_PTR 的值相加。 |
RtlDWordPtrMult 将DWORD_PTR类型的一个值乘以另一个值。 |
RtlDWordPtrSub 从另一个值中减去DWORD_PTR类型的一个值。 |
RtlEqualMemory RtlEqualMemory 例程比较两个内存块,以确定指定的字节数是否相同。 |
RtlEqualString RtlEqualString 例程比较两个计数字符串以确定它们是否相等。 |
RtlEqualUnicodeString RtlEqualUnicodeString 例程比较两个 Unicode 字符串以确定它们是否相等。 |
RtlExtendCorrelationVector 此例程扩展所提供的相关向量。 对于 X.i 形式的相关向量,扩展值为 X.i.0。 |
RtlFillMemory RtlFillMemory 例程使用指定的填充值填充内存块。 |
RtlFillMemoryNonTemporal 此函数使用不污染缓存的非临时移动,使用指定的填充值填充内存块。 |
RtlFindClearBits RtlFindClearBits 例程在位图中搜索请求大小的明文位范围。 |
RtlFindClearBitsAndSet RtlFindClearBitsAndSet 例程在位图中搜索请求大小的明文位范围,并在找到时设置该区域中的所有位。 |
RtlFindClearRuns RtlFindClearRuns 例程在给定位图中查找指定数量的清除位。 |
RtlFindFirstRunClear RtlFindFirstRunClear 例程在给定位图中搜索初始连续的明文位范围。 |
RtlFindLastBackwardRunClear RtlFindLastBackwardRunClear 例程从指定的索引位置开始,在给定位图中搜索前面明文运行的位。 |
RtlFindLeastSignificantBit RtlFindLeastSignificantBit 例程返回其参数中最小有效非零位的从零开始的位置。 |
RtlFindLongestRunClear RtlFindLongestRunClear 例程在给定位图中搜索最大连续的明文位范围。 |
RtlFindMostSignificantBit RtlFindMostSignificantBit 例程返回其参数中最重要的非零位的从零开始的位置。 |
RtlFindNextForwardRunClear RtlFindNextForwardRunClear 例程从指定的索引位置开始,搜索给定位图变量以查找下一个明确的位。 |
RtlFindSetBits RtlFindSetBits 例程在位图中搜索请求大小的集位范围。 |
RtlFindSetBitsAndClear RtlFindSetBitsAndClear 例程在位图中搜索请求大小的集位范围,并在找到该范围时清除该范围中的所有位。 |
RtlFreeAnsiString RtlFreeAnsiString 例程释放由 RtlUnicodeStringToAnsiString 分配的存储。 |
RtlFreeUnicodeString RtlFreeUnicodeString 例程释放由 RtlAnsiStringToUnicodeString 或 RtlUpcaseUnicodeString 分配的存储。 |
RtlFreeUTF8String RtlFreeUTF8String 函数释放由 RtlUnicodeStringToUTF8String 分配的存储。 |
RtlGetEnabledExtendedFeatures RtlGetEnabledExtendedFeatures 例程返回由系统启用的扩展处理器功能的掩码。 |
RtlGetPersistedStateLocation 从重定向映射中检索指定 SourceID 的重定向位置。 |
RtlGetVersion RtlGetVersion 例程返回有关当前正在运行的操作系统的版本信息。 |
RtlGUIDFromString RtlGUIDFromString 例程将给定的 Unicode 字符串转换为二进制格式的 GUID。 |
RtlHashUnicodeString RtlHashUnicodeString 例程根据给定的 Unicode 字符串和哈希算法创建哈希值。 |
RtlIncrementCorrelationVector 递增指定的相关向量。 对于形式的 X.i 的相关向量,递增值为 X. (i+1) 。 |
RtlInitAnsiString RtlInitAnsiString 例程初始化 ANSI 字符的计数字符串。 |
RtlInitializeBitMap RtlInitializeBitMap 例程初始化位图变量的标头。 |
RtlInitializeCorrelationVector 使用提供的 GUID 初始化指定的相关向量。 |
RtlInitString RtlInitString 例程初始化 8 位字符的计数字符串。 |
RtlInitStringEx ntifs.h 中的 RtlInitStringEx 例程初始化 8 位字符的计数字符串。 RtlInitStringEx 不会更改源字符串。 |
RtlInitStringEx wdm.h 中的 RtlInitStringEx 例程初始化 8 位字符的计数字符串。 RtlInitStringEx 不会更改源字符串。 |
RtlInitUnicodeString 有关详细信息,请参阅 WdmlibRtlInitUnicodeStringEx 函数。 |
RtlInitUTF8String RtlInitUTF8String 函数初始化 UTF-8 字符的计数字符串。 |
RtlInitUTF8StringEx RtlInitUTF8StringEx 例程初始化 UTF-8 字符的计数字符串。 |
RtlInt64ToUnicodeString RtlInt64ToUnicodeString 例程将指定的无符号 64 位整数值转换为表示指定基中的值的 Unicode 字符串。 |
RtlInt8Add 添加 INT8 类型的两个值。 |
RtlInt8Mult 将 INT8 类型的一个值乘以另一个值。 |
RtlInt8Sub 从另一个值中减去 INT8 类型的一个值。 |
RtlInt8ToUChar 将 INT8 类型的值转换为 UCHAR 类型的值。 |
RtlInt8ToUInt 将 INT8 类型的值转换为 UINT 类型的值。 |
RtlInt8ToUInt8 将 INT8 类型的值转换为 UINT8 类型的值。 |
RtlInt8ToUIntPtr 将 INT8 类型的值转换为 UINT_PTR 类型的值。 |
RtlInt8ToULong 将 INT8 类型的值转换为 ULONG 类型的值。 |
RtlInt8ToULong 将 INT8 类型的值转换为 ULONGLONG 类型的值。 |
RtlInt8ToULongPtr 将 INT8 类型的值转换为 ULONG_PTR 类型的值。 |
RtlInt8ToUShort 将 INT8 类型的值转换为 USHORT 类型的值。 |
RtlIntAdd 添加 INT 类型的两个值。 |
RtlIntegerToUnicodeString RtlIntegerToUnicodeString 例程将无符号整数值转换为以 null 结尾的字符串,该字符串由指定基中的一个或多个 Unicode 字符构成。 |
RtlIntMult 将 INT 类型的一个值乘以另一个值。 |
RtlIntPtrAdd 将INT_PTR类型的两个值相加。 |
RtlIntPtrMult 将INT_PTR类型的一个值乘以另一个值。 |
RtlIntPtrSub 从另一个值中减去INT_PTR类型的值。 |
RtlIntPtrToChar 将 INT_PTR 类型的值转换为 CHAR 类型的值。 |
RtlIntPtrToInt 将 INT_PTR 类型的值转换为 INT 类型的值。 |
RtlIntPtrToInt8 将 INT_PTR 类型的值转换为 INT8 类型的值。 |
RtlIntPtrToLong 将 INT_PTR 类型的值转换为 LONG 类型的值。 |
RtlIntPtrToLongPtr 将 INT_PTR 类型的值转换为 LONG_PTR 类型的值。 |
RtlIntPtrToShort 将 INT_PTR 类型的值转换为 SHORT 类型的值。 |
RtlIntPtrToUChar 将 INT_PTR 类型的值转换为 UCHAR 类型的值。 |
RtlIntPtrToUInt 将 INT_PTR 类型的值转换为 UINT 类型的值。 |
RtlIntPtrToUInt8 将 INT_PTR 类型的值转换为 UINT8 类型的值。 |
RtlIntPtrToUIntPtr 将 INT_PTR 类型的值转换为 UINT_PTR 类型的值。 |
RtlIntPtrToULong 将 INT_PTR 类型的值转换为 ULONG 类型的值。 |
RtlIntPtrToULongLong 将 INT_PTR 类型的值转换为 ULONGLONG 类型的值。 |
RtlIntPtrToULongPtr 将 INT_PTR 类型的值转换为 ULONG_PTR 类型的值。 |
RtlIntPtrToUnicodeString RtlIntPtrToUnicodeString 例程将指定的ULONG_PTR值转换为表示指定基中的值的 Unicode 字符串。 |
RtlIntPtrToUShort 将 INT_PTR 类型的值转换为 USHORT 类型的值。 |
RtlIntSub 从另一个值中减去一个 INT 类型的值。 |
RtlIntToChar 将 INT 类型的值转换为 CHAR 类型的值。 |
RtlIntToInt8 将 INT 类型的值转换为 INT8 类型的值。 |
RtlIntToShort 将 INT 类型的值转换为 SHORT 类型的值。 |
RtlIntToUChar 将 INT 类型的值转换为 UCHAR 类型的值。 |
RtlIntToUInt 将 INT 类型的值转换为 UINT 类型的值。 |
RtlIntToUInt8 将 INT 类型的值转换为 UINT8 类型的值。 |
RtlIntToULong 将 INT 类型的值转换为 ULONG 类型的值。 |
RtlIntToULongLong 将 INT 类型的值转换为 ULONGLONG 类型的值。 |
RtlIntToUShort 将 INT 类型的值转换为 USHORT 类型的值。 |
RtlIoDecodeMemIoResource RtlIoDecodeMemIoResource 例程提供包含在描述内存或 I/O 端口地址范围的IO_RESOURCE_DESCRIPTOR结构中的地址信息。 |
RtlIoEncodeMemIoResource RtlIoEncodeMemIoResource 例程更新IO_RESOURCE_DESCRIPTOR结构,以描述内存或 I/O 端口地址的范围。 |
RtlIsNtDdiVersionAvailable RtlIsNtDdiVersionAvailable 例程确定指定版本的 Microsoft Windows 设备驱动程序接口 (DDI) 是否可用。 |
RtlIsServicePackVersionInstalled RtlIsServicePackVersionInstalled 例程确定是否安装了 Microsoft Windows 设备驱动程序接口的指定 Service Pack 版本 (DDI) 。 |
RtlIsStateSeparationEnabled 检查当前上下文的 SKU 是否支持多个会话。 |
RtlIsZeroMemory 此例程检查未对齐内存块是否全部为零。 |
RtlLengthSecurityDescriptor RtlLengthSecurityDescriptor 例程返回给定安全描述符的大小。 |
RtlLongAdd 将 LONG 类型的两个值相加。 |
RtlLongLongAdd 将 LONGLONG 类型的两个值相加。 |
RtlLongLongMult 将 LONGLONG 类型的一个值乘以另一个值。 |
RtlLongLongSub 将 LONGLONG 类型的一个值从另一个值减去。 |
RtlLongLongToChar 将 LONGLONG 类型的值转换为 CHAR 类型的值。 |
RtlLongLongToInt 将 LONGLONG 类型的值转换为 INT 类型的值。 |
RtlLongLongToInt8 将 LONGLONG 类型的值转换为 INT8 类型的值。 |
RtlLongLongToIntPtr 将 LONGLONG 类型的值转换为 INT_PTR 类型的值。 |
RtlLongLongToLong 将 LONGLONG 类型的值转换为 LONG 类型的值。 |
RtlLongLongToLongPtr 将 LONGLONG 类型的值转换为 LONG_PTR 类型的值。 |
RtlLongLongToShort 将 LONGLONG 类型的值转换为 SHORT 类型的值。 |
RtlLongLongToUChar 将 LONGLONG 类型的值转换为 UCHAR 类型的值。 |
RtlLongLongToUInt 将 LONGLONG 类型的值转换为 UINT 类型的值。 |
RtlLongLongToUInt8 将 LONGLONG 类型的值转换为 UNIT8 类型的值。 |
RtlLongLongToULong 将 LONGLONG 类型的值转换为 ULONG 类型的值。 |
RtlLongLongToULongLong 将 LONGLONG 类型的值转换为 LONGLONG 类型的值。 |
RtlLongLongToUShort 将 LONGLONG 类型的值转换为 USHORT 类型的值。 |
RtlLongMult 将 LONG 类型的一个值乘以另一个值。 |
RtlLongPtrAdd 将两个类型的值相加LONG_PTR。 |
RtlLongPtrMult 将LONG_PTR类型的一个值乘以另一个值。 |
RtlLongPtrSub 从另一个值中减去LONG_PTR类型的一个值。 |
RtlLongPtrToChar 将 LONG_PTR 类型的值转换为 CHAR 类型的值。 |
RtlLongPtrToInt 将 LONG_PTR 类型的值转换为 INT 类型的值。 |
RtlLongPtrToInt8 将 LONG_PTR 类型的值转换为 INT8 类型的值。 |
RtlLongPtrToIntPtr 将 LONG_PTR 类型的值转换为 INT_PTR 类型的值。 |
RtlLongPtrToLong 将 LONG_PTR 类型的值转换为 LONG 类型的值。 |
RtlLongPtrToShort 将 LONG_PTR 类型的值转换为 SHORT 类型的值。 |
RtlLongPtrToUChar 将 LONG_PTR 类型的值转换为 UCHAR 类型的值。 |
RtlLongPtrToUInt 将 LONG_PTR 类型的值转换为 UINT 类型的值。 |
RtlLongPtrToUInt8 将 LONG_PTR 类型的值转换为 UINT8 类型的值。 |
RtlLongPtrToUIntPtr 将 LONG_PTR 类型的值转换为 UINT_PTR 类型的值。 |
RtlLongPtrToULong 将 LONG_PTR 类型的值转换为 ULONG 类型的值。 |
RtlLongPtrToULongLong 将 LONG_PTR 类型的值转换为 ULONGLONG 类型的值。 |
RtlLongPtrToULongPtr 将 LONG_PTR 类型的值转换为 ULONG_PTR 类型的值。 |
RtlLongPtrToUShort 将 LONG_PTR 类型的值转换为 USHORT 类型的值。 |
RtlLongSub 将 LONG 类型的一个值从另一个值减去。 |
RtlLongToChar 将 LONG 类型的值转换为 CHAR 类型的值。 |
RtlLongToInt 将 LONG 类型的值转换为 INT 类型的值。 |
RtlLongToInt8 将 LONG 类型的值转换为 INT8 类型的值。 |
RtlLongToIntPtr 将 LONG 类型的值转换为 INT_PTR 类型的值。 |
RtlLongToShort 将 LONG 类型的值转换为 SHORT 类型的值。 |
RtlLongToUChar 将 LONG 类型的值转换为 UCHAR 类型的值。 |
RtlLongToUInt 将 LONG 类型的值转换为 UINT 类型的值。 |
RtlLongToUInt8 将 LONG 类型的值转换为 UINT8 类型的值。 |
RtlLongToUIntPtr 将 LONG 类型的值转换为 UINT_PTR 类型的值。 |
RtlLongToULong 将 LONG 类型的值转换为 ULONG 类型的值。 |
RtlLongToULongLong 将 LONG 类型的值转换为 ULONGLONG 类型的值。 |
RtlLongToULongPtr 将 LONG 类型的值转换为 ULONG_PTR 类型的值。 |
RtlLongToUShort 将 LONG 类型的值转换为 USHORT 类型的值。 |
RtlMapGenericMask RtlMapGenericMask 例程确定ACCESS_MASK指定的非泛型访问权限。 |
RtlMoveMemory RtlMoveMemory 例程将源内存块的内容复制到目标内存块,并支持重叠的源内存块和目标内存块。 |
RtlNormalizeSecurityDescriptor 检查安全描述符,了解修改其布局的方法。 |
RtlNumberOfClearBits RtlNumberOfClearBits 例程返回给定位图变量中清除位的计数。 |
RtlNumberOfSetBits RtlNumberOfSetBits 例程返回给定位图变量中设置位的计数。 |
RtlNumberOfSetBitsUlongPtr RtlNumberOfSetBitsUlongPtr 例程返回指定ULONG_PTR整数值中设置为 1 的位数。 |
RtlPrefetchMemoryNonTemporal RtlPrefetchMemoryNonTemporal 例程向处理器提供一个提示,提示应暂时将缓冲区移动到处理器缓存中。 |
RtlPrefixUnicodeString RtlPrefixUnicodeString 例程比较两个 Unicode 字符串,以确定一个字符串是否为另一个字符串的前缀。 |
RtlPtrdiffTAdd PTRDIFF_T 类型的两个值相加。 |
RtlPtrdiffTMult 将PTRDIFF_T 类型的一个值乘以另一个值。 |
RtlPtrdiffTSub 从另一个值中减去PTRDIFF_T类型的一个值。 |
RtlQueryRegistryValues RtlQueryRegistryValues 例程允许调用方通过单个调用查询注册表子树中的多个值。 |
RtlQueryRegistryValueWithFallback 通过使用主句柄检索注册表项的值条目;如果未找到,则使用回退句柄。 |
RtlRaiseCustomSystemEventTrigger 允许 NT 服务和内核模式和用户模式驱动程序为设备引发自定义触发器。 |
RtlRunOnceBeginInitialize RtlRunOnceBeginInitialize 例程开始一次性初始化。 |
RtlRunOnceComplete RtlRunOnceComplete 例程完成由 RtlRunOnceBeginInitialize 开始的一次性初始化。 |
RtlRunOnceExecuteOnce RtlRunOnceExecuteOnce 执行一次性初始化。 |
RtlRunOnceInitialize RtlRunOnceInitialize 例程初始化RTL_RUN_ONCE结构。 |
RtlSanitizeUnicodeStringPadding 清理 Unicode 字符串的填充。 |
RtlSecureZeroMemory RtlSecureZeroMemory 例程以保证安全的方式用零填充内存块。 |
RtlSetAllBits RtlSetAllBits 例程设置给定位图变量中的所有位。 |
RtlSetBit RtlSetBit 例程将位图中的指定位设置为 1。 |
RtlSetBits RtlSetBits 例程设置给定位图变量的给定范围内的所有位。 |
RtlSetDaclSecurityDescriptor RtlSetDaclSecurityDescriptor 例程设置绝对格式安全描述符的 DACL 信息,或者如果安全描述符中已存在 DACL,则将其取代。 |
RtlShortAdd 添加两个 SHORT 类型的值。 |
RtlShortMult 将 SHORT 类型的一个值乘以另一个。 |
RtlShortSub 将 SHORT 类型的一个值从另一个值减去。 |
RtlShortToChar 将 SHORT 类型的值转换为 CHAR 类型的值。 |
RtlShortToDWordPtr 将 SHORT 类型的值转换为 DWORD_PTR 类型的值。 |
RtlShortToInt8 将 SHORT 类型的值转换为 INT8 类型的值。 |
RtlShortToUChar 将 SHORT 类型的值转换为 UCHAR 类型的值。 |
RtlShortToUInt 将 SHORT 类型的值转换为 UINT 类型的值。 |
RtlShortToUInt8 将 SHORT 类型的值转换为 UINT8 类型的值。 |
RtlShortToUIntPtr 将 SHORT 类型的值转换为 UINT_PTR 类型的值。 |
RtlShortToULong 将 SHORT 类型的值转换为 ULONG 类型的值。 |
RtlShortToULongLong 将 SHORT 类型的值转换为 ULONGLONG 类型的值。 |
RtlShortToULongPtr 将 SHORT 类型的值转换为 ULONG_PTR 类型的值。 |
RtlShortToUShort 将 SHORT 类型的值转换为 USHORT 类型的值。 |
RtlSizeTAdd SIZE_T 类型的两个值相加。 |
RtlSizeTMult 将SIZE_T类型的一个值乘以另一个值。 |
RtlSizeTSub 从另一个值中减去SIZE_T类型的一个值。 |
RtlSSIZETAdd 将两个类型为 SSIZE_T 的值相加。 |
RtlSSIZETMult 将SSIZE_T类型的一个值乘以另一个值。 |
RtlSSIZETSub 从另一个值中减去SSIZE_T类型的一个值。 |
RtlStringCbCatA RtlStringCbCatW 和 RtlStringCbCatA 函数连接两个字节计数的字符串。 |
RtlStringCbCatExA RtlStringCbCatExW 和 RtlStringCbCatExA 函数连接两个字节计数的字符串。 |
RtlStringCbCatExW 了解 RtlStringCbCatExW 和 RtlStringCbCatExA 函数如何连接两个字节计数的字符串。 |
RtlStringCbCatNA RtlStringCbCatNW 和 RtlStringCbCatNA 函数连接两个字节计数字符串,同时限制追加字符串的大小。 |
RtlStringCbCatNExA RtlStringCbCatNExW 和 RtlStringCbCatNExA 函数连接两个字节计数字符串,同时限制追加字符串的大小。 |
RtlStringCbCatNExW 了解 RtlStringCbCatNExW 和 RtlStringCbCatNExA 函数如何连接两个字节计数字符串,同时限制追加字符串的大小。 |
RtlStringCbCatNW 了解 RtlStringCbCatNW 和 RtlStringCbCatNA 函数如何连接两个字节计数字符串,同时限制追加字符串的大小。 |
RtlStringCbCatW 了解 RtlStringCbCatW 和 RtlStringCbCatA 函数如何连接两个字节计数的字符串。 |
RtlStringCbCopyA RtlStringCbCopyW 和 RtlStringCbCopyA 函数将字节计数的字符串复制到缓冲区中。 |
RtlStringCbCopyExA RtlStringCbCopyExW 和 RtlStringCbCopyExA 函数将字节计数的字符串复制到缓冲区中。 |
RtlStringCbCopyExW 了解 RtlStringCbCopyExW 和 RtlStringCbCopyExA 函数如何将字节计数的字符串复制到缓冲区中。 |
RtlStringCbCopyNA RtlStringCbCopyNW 和 RtlStringCbCopyNA 函数将字节计数的字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCbCopyNExA RtlStringCbCopyNExW 和 RtlStringCbCopyNExA 函数将字节计数字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCbCopyNExW 了解 RtlStringCbCopyNExW 和 RtlStringCbCopyNExA 函数如何将字节计数字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCbCopyNW 了解 RtlStringCbCopyNW 和 RtlStringCbCopyNA 函数如何将字节计数字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCbCopyUnicodeString RtlStringCbCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlStringCbCopyUnicodeStringEx RtlStringCbCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlStringCbCopyW 了解 RtlStringCbCopyW 和 RtlStringCbCopyA 函数如何将字节计数的字符串复制到缓冲区中。 |
RtlStringCbLengthA RtlStringCbLengthW 和 RtlStringCbLengthA 函数确定提供的字符串的长度(以字节为单位)。 |
RtlStringCbLengthW 了解 RtlStringCbLengthW 和 RtlStringCbLengthA 函数如何确定提供的字符串的长度(以字节为单位)。 |
RtlStringCbPrintfA RtlStringCbPrintfW 和 RtlStringCbPrintfA 函数创建字节计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbPrintfExA RtlStringCbPrintfExW 和 RtlStringCbPrintfExA 函数创建字节计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbPrintfExW 了解 RtlStringCbPrintfExW 和 RtlStringCbPrintfExA 函数如何创建字节计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbPrintfW 了解 RtlStringCbPrintfW 和 RtlStringCbPrintfA 函数如何创建字节计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbVPrintfA RtlStringCbVPrintfW 和 RtlStringCbVPrintfA 函数使用基于提供的格式设置信息创建字节计数的文本字符串。 |
RtlStringCbVPrintfExA RtlStringCbVPrintfExW 和 RtlStringCbVPrintfExA 函数创建字节计数的文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbVPrintfExW 了解 RtlStringCbVPrintfExW 和 RtlStringCbVPrintfExA 函数如何创建字节计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCbVPrintfW 了解 RtlStringCbVPrintfW 和 RtlStringCbVPrintfA 函数如何创建字节计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchCatA RtlStringCchCatW 和 RtlStringCchCatA 函数连接两个字符计数的字符串。 |
RtlStringCchCatExA RtlStringCchCatExW 和 RtlStringCchCatExA 函数连接两个字符计数的字符串。 |
RtlStringCchCatExW 了解 RtlStringCchCatExW 和 RtlStringCchCatExA 函数如何连接两个字符计数的字符串。 |
RtlStringCchCatNA RtlStringCchCatNW 和 RtlStringCchCatNA 函数连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCatNExA RtlStringCchCatNExW 和 RtlStringCchCatNExA 函数连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCatNExW 了解 RtlStringCchCatNExW 和 RtlStringCchCatNExA 函数如何连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCatNW 了解 RtlStringCchCatNW 和 RtlStringCchCatNA 函数如何连接两个字符计数字符串,同时限制追加字符串的大小。 |
RtlStringCchCatW 了解 RtlStringCchCatW 和 RtlStringCchCatA 函数如何连接两个字符计数的字符串。 |
RtlStringCchCopyA RtlStringCchCopyW 和 RtlStringCchCopyA 函数将以 null 结尾的源字符串复制到指定长度的目标缓冲区中。 |
RtlStringCchCopyExA RtlStringCchCopyExW 和 RtlStringCchCopyExA 函数将字符计数的字符串复制到缓冲区中。 |
RtlStringCchCopyExW 了解 RtlStringCchCopyExW 和 RtlStringCchCopyExA 函数如何将字符计数的字符串复制到缓冲区中。 |
RtlStringCchCopyNA RtlStringCchCopyNW 和 RtlStringCchCopyNA 函数将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCchCopyNExA RtlStringCchCopyNExW 和 RtlStringCchCopyNExA 函数将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCchCopyNExW 了解 RtlStringCchCopyNExW 和 RtlStringCchCopyNExA 函数如何将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCchCopyNW 了解 RtlStringCchCopyNW 和 RtlStringCchCopyNA 函数如何将字符计数字符串复制到缓冲区,同时限制复制的字符串的大小。 |
RtlStringCchCopyUnicodeString RtlStringCchCopyUnicodeString 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlStringCchCopyUnicodeStringEx RtlStringCchCopyUnicodeStringEx 函数将UNICODE_STRING结构的内容复制到指定的目标。 |
RtlStringCchCopyW 了解 RtlStringCchCopyW 和 RtlStringCchCopyA 函数如何将以 null 结尾的源字符串复制到指定长度的目标缓冲区中。 |
RtlStringCchLengthA RtlStringCchLengthW 和 RtlStringCchLengthA 函数确定提供的字符串的长度(以字符为单位)。 |
RtlStringCchLengthW 了解 RtlStringCchLengthW 和 RtlStringCchLengthA 函数如何确定提供的字符串的长度(以字符为单位)。 |
RtlStringCchPrintfA RtlStringCchPrintfW 和 RtlStringCchPrintfA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchPrintfExA RtlStringCchPrintfExW 和 RtlStringCchPrintfExA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchPrintfExW 了解 RtlStringCchPrintfExW 和 RtlStringCchPrintfExA 函数如何创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchPrintfW 了解 RtlStringCchPrintfW 和 RtlStringCchPrintfA 函数如何创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchVPrintfA RtlStringCchVPrintfW 和 RtlStringCchVPrintfA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchVPrintfExA RtlStringCchVPrintfExW 和 RtlStringCchVPrintfExA 函数创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchVPrintfExW 了解 RtlStringCchVPrintfExW 和 RtlStringCchVPrintfExA 函数如何创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringCchVPrintfW 了解 RtlStringCchVPrintfW 和 RtlStringCchVPrintfA 函数如何创建字符计数文本字符串,其格式基于提供的格式设置信息。 |
RtlStringFromGUID RtlStringFromGUID 例程将给定 GUID 从二进制格式转换为 Unicode 字符串。 |
RtlTestBit RtlTestBit 例程返回位图中位的值。 |
RtlTimeFieldsToTime RtlTimeFieldsToTime 例程将TIME_FIELDS信息转换为系统时间值。 |
RtlTimeToTimeFields RtlTimeToTimeFields 例程将系统时间转换为TIME_FIELDS结构。 |
RtlUInt8Add 将 UINT8 类型的两个值相加。 |
RtlUInt8Mult 将 UINT8 类型的一个值乘以另一个值。 |
RtluInt8Sub RtlUInt8Sub 例程将 UINT8 类型的一个值从另一个值减去。 |
RtlUInt8ToChar 将 UINT8 类型的值转换为 CHAR 类型的值。 |
RtlUInt8ToInt8 将 UINT8 类型的值转换为 INT8 类型的值。 |
RtlUIntAdd 将两个 UINT 类型的值相加。 |
RtlUIntMult 将 UINT 类型的一个值乘以另一个。 |
RtlUIntPtrAdd 将两个类型为 UINT_PTR 的值相加。 |
RtlUIntPtrMult 将类型UINT_PTR的一个值乘以另一个值。 |
RtlUIntPtrSub 从另一个值中减去UINT_PTR类型的一个值。 |
RtlUIntPtrToChar 将 UINT_PTR 类型的值转换为 CHAR 类型的值。 |
RtlUIntPtrToInt 将 UINT_PTR 类型的值转换为 INT 类型的值。 |
RtlUIntPtrToInt16 将 UINT_PTR 类型的值转换为 INT16 类型的值。 |
RtlUIntPtrToInt8 将 UINT_PTR 类型的值转换为 INT8 类型的值。 |
RtlUIntPtrToIntPtr 将 UINT_PTR 类型的值转换为 INT_PTR 类型的值。 |
RtlUIntPtrToLong 将 UINT_PTR 类型的值转换为 LONG 类型的值。 |
RtlUIntPtrToLongLong 将 UINT_PTR 类型的值转换为 LONGLONG 类型的值。 |
RtlUIntPtrToLongPtr 将 UINT_PTR 类型的值转换为 LONG_PTR 类型的值。 |
RtlUIntPtrToShort 将 UINT_PTR 类型的值转换为 SHORT 类型的值。 |
RtlUIntPtrToUChar 将 UINT_PTR 类型的值转换为 UCHAR 类型的值。 |
RtlUIntPtrToUInt 将 UINT_PTR 类型的值转换为 UINT 类型的值。 |
RtlUIntPtrToUInt16 将 UINT_PTR 类型的值转换为 UINT16 类型的值。 |
RtlUIntPtrToUInt8 将 UINT_PTR 类型的值转换为 UINT8 类型的值。 |
RtlUIntPtrToULong 了解此函数如何将 UINT_PTR 类型的值转换为 LONG 类型的值。 |
RtlUIntPtrToUShort 将 UINT_PTR 类型的值转换为 USHORT 类型的值。 |
RtlUIntSub 将 UINT 类型的一个值从另一个值减去。 |
RtlUIntToChar 将 UINT 类型的值转换为 CHAR 类型的值。 |
RtlUIntToInt 将 UINT 类型的值转换为 INT 类型的值。 |
RtlUIntToInt8 将 UINT 类型的值转换为 INT8 类型的值。 |
RtlUIntToIntPtr 将 UINT 类型的值转换为 INT_PTR 类型的值。 |
RtlUIntToLong 将 UINT 类型的值转换为 LONG 类型的值。 |
RtlUIntToLongPtr 将 UINT 类型的值转换为 LONG_PTR 类型的值。 |
RtlUIntToShort 将 UINT 类型的值转换为 SHORT 类型的值。 |
RtlUIntToUChar 将 UINT 类型的值转换为 UCHAR 类型的值。 |
RtlUIntToUInt8 将 UINT 类型的值转换为 UINT8 类型的值。 |
RtlUIntToUShort 将 UINT 类型的值转换为 USHORT 类型的值。 |
RtlULongAdd 将 ULONG 类型的两个值相加。 |
RtlUlongByteSwap RtlUlongByteSwap 例程反转 32 位无符号整数值中四个字节的顺序。 |
RtlULongLongAdd 将 ULONGLONG 类型的两个值相加。 |
RtlUlonglongByteSwap RtlUlonglongByteSwap 例程反转 64 位无符号整数值中的 8 个字节的顺序。 |
RtlULongLongMult 将 ULONGLONG 类型的一个值乘以另一个值。 |
RtlULongLongSub 从另一个值中减去 ULONGLONG 类型的一个值。 |
RtlULongLongToChar 将 ULONGLONG 类型的值转换为 CHAR 类型的值。 |
RtlULongLongToInt 将 ULONGLONG 类型的值转换为 INT 类型的值。 |
RtlULongLongToInt8 将 ULONGLONG 类型的值转换为 INT8 类型的值。 |
RtlULongLongToLong 将 ULONGLONG 类型的值转换为 LONG 类型的值。 |
RtlULongLongToLongLong 将 ULONGLONG 类型的值转换为 LONGLONG 类型的值。 |
RtlULongLongToLongPtr 将 ULONGLONG 类型的值转换为 LONG_PTR 类型的值。 |
RtlULongLongToShort 将 ULONGLONG 类型的值转换为 SHORT 类型的值。 |
RtlULongLongToUChar 将 ULONGLONG 类型的值转换为 UCHAR 类型的值。 |
RtlULongLongToUInt 将 ULONGLONG 类型的值转换为 UINT 类型的值。 |
RtlULongLongToUInt8 将 ULONGLONG 类型的值转换为 UINT8 类型的值。 |
RtlULongLongToUIntPtr 将 ULONGLONG 类型的值转换为 UINT_PTR 类型的值。 |
RtlULongLongToULong 将 ULONGLONG 类型的值转换为 ULONG 类型的值。 |
RtlULongLongToULongPtr 将 ULONGLONG 类型的值转换为 ULONG_PTR 类型的值。 |
RtlULongLongToUShort 将 ULONGLONG 类型的值转换为 USHORT 类型的值。 |
RtlULongMult 将 ULONG 类型的一个值乘以另一个值。 |
RtlULongPtrAdd 将两个类型为 ULONG_PTR 的值相加。 |
RtlULongPtrMult 将类型ULONG_PTR的一个值乘以另一个值。 |
RtlULongPtrSub 从另一个值中减去ULONG_PTR类型的一个值。 |
RtlULongPtrToChar 将 ULONG_PTR 类型的值转换为 CHAR 类型的值。 |
RtlULongPtrToInt 将 ULONG_PTR 类型的值转换为 INT 类型的值。 |
RtlULongPtrToInt8 将 ULONG_PTR 类型的值转换为 INT8 类型的值。 |
RtlULongPtrToIntPtr 将 ULONG_PTR 类型的值转换为 INT_PTR 类型的值。 |
RtlULongPtrToLong 将 ULONG_PTR 类型的值转换为 LONG 类型的值。 |
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 输入字符串为 时,UTF-8 输出才以 null 结尾。 |
RtlUnicodeToUTF8N wdm.h 中的 RtlUnicodeToUTF8N 例程将 Unicode 字符串转换为 UTF-8 字符串。 仅当 Unicode 输入字符串为 时,UTF-8 输出才以 null 结尾。 |
RtlUpcaseUnicodeChar RtlUpcaseUnicodeChar 例程将指定的 Unicode 字符转换为大写。 |
RtlUpcaseUnicodeString RtlUpcaseUnicodeString 例程将源字符串的副本转换为大写,并在目标缓冲区中写入转换后的字符串。 |
RtlUpperChar RtlUpperChar 例程将指定的字符转换为大写。 |
RtlUpperString RtlUpperString 例程将给定的 SourceString 复制到 DestinationString 缓冲区,并将其转换为大写。 |
RtlUShortAdd 将 USHORT 类型的两个值相加。 |
RtlUshortByteSwap RtlUshortByteSwap 例程反转 16 位无符号整数值中两个字节的顺序。 |
RtlUShortMult 将 USHORT 类型的一个值乘以另一个值。 |
RtlUShortSub 从另一个值中减去 USHORT 类型的一个值。 |
RtlUShortToChar 将 USHORT 类型的值转换为 CHAR 类型的值。 |
RtlUShortToInt8 将 USHORT 类型的值转换为 INT8 类型的值。 |
RtlUShortToShort 将 USHORT 类型的值转换为 SHORT 类型的值。 |
RtlUShortToUChar 将 USHORT 类型的值转换为 UCHAR 类型的值。 |
RtlUShortToUInt8 将 USHORT 类型的值转换为 UINT8 类型的值。 |
RtlUTF8StringToUnicodeString RtlUTF8StringToUnicodeString 函数根据当前系统区域设置信息将指定的 UTF8 源字符串转换为 Unicode 字符串。 |
RtlUTF8ToUnicodeN ntifs.h 中的 RtlUTF8ToUnicodeN 例程将 UTF-8 字符串转换为 Unicode 字符串。 仅当 UTF-8 输入字符串为 时,Unicode 输出才以 null 结尾。 |
RtlUTF8ToUnicodeN wdm.h 中的 RtlUTF8ToUnicodeN 例程将 UTF-8 字符串转换为 Unicode 字符串。 仅当 UTF-8 输入字符串为 时,Unicode 输出才以 null 结尾。 |
RtlValidateCorrelationVector 验证指定的相关向量,以检查它是否符合相关向量规范 (v2) 。 |
RtlValidRelativeSecurityDescriptor RtlValidRelativeSecurityDescriptor 例程检查自相对安全描述符的有效性。 |
RtlValidSecurityDescriptor RtlValidSecurityDescriptor 例程检查给定安全描述符的有效性。 |
RtlVerifyVersionInfo RtlVerifyVersionInfo 例程将一组指定的操作系统版本要求与当前运行的操作系统版本的相应属性进行比较。 |
RtlVolumeDeviceToDosName RtlVolumeDeviceToDosName 例程已过时,适用于 Windows XP 和更高版本的 Windows。 请改用 IoVolumeDeviceToDosName。RtlVolumeDeviceToDosName 返回表示文件系统卷的指定设备对象的 MS-DOS 路径。 |
RtlWriteRegistryValue RtlWriteRegistryValue 例程将调用方提供的数据沿给定值名称处的指定相对路径写入注册表。 |
RtlxAnsiStringToUnicodeSize RtlxAnsiStringToUnicodeSize 例程返回与指定的 ANSI 字符串等效的以 null 结尾的 Unicode 字符串所需的字节数。 |
RtlxUnicodeStringToAnsiSize RtlxUnicodeStringToAnsiSize 例程返回与指定 Unicode 字符串等效的以 null 结尾的 ANSI 字符串所需的字节数。 |
RtlZeroMemory rtlZeroMemory 宏 (wdm.h) 为内存块填充零,给定指向块的指针和要填充的长度(以字节为单位)。 |
SeAccessCheck SeAccessCheck 例程确定是否可以向受安全描述符和对象所有者保护的对象授予请求的访问权限。 |
SeAssignSecurity SeAssignSecurity 例程为新对象生成一个自相对安全描述符,给定其父目录的安全描述符以及该对象最初请求的任何安全性。 |
SeAssignSecurityEx SeAssignSecurityEx 例程在给定以下可选参数的情况下为新对象生成自相对安全描述符:_a对象的父目录的安全描述符、对象的显式安全描述符和对象类型。 |
SeDeassignSecurity SeDeassignSecurity 例程解除分配与使用 SeAssignSecurity 分配的安全描述符关联的内存。 |
SeFreePrivileges SeFreePrivileges 例程释放 SeAccessCheck 返回的权限集。 |
SeSinglePrivilegeCheck SeSinglePrivilegeCheck 例程在当前线程的上下文中检查传递的权限值。 |
SET_D3COLD_SUPPORT SetD3ColdSupport 例程启用或禁用到 D3cold 设备电源状态的转换。 |
SeValidSecurityDescriptor SeValidSecurityDescriptor 例程返回给定的安全描述符在结构上是否有效。 |
SILO_CONTEXT_CLEANUP_CALLBACK 当上下文对象达到零的引用计数时,将调用此回调。 |
SILO_MONITOR_CREATE_CALLBACK 这是在创建新 silo 时调用的回调。 |
SILO_MONITOR_TERMINATE_CALLBACK 当 silo 终止时,将调用此回调。 |
TmCommitComplete TmCommitComplete 例程通知 KTM 调用的资源管理器已完成提交事务。 |
TmCommitEnlistment TmCommitEnlistment 例程启动指定登记事务的提交操作。 |
TmCommitTransaction TmCommitTransaction 例程启动指定事务的提交操作。 |
TmCreateEnlistment TmCreateEnlistment 例程为事务创建新的登记对象。 |
TmDereferenceEnlistmentKey TmDereferenceEnlistmentKey 例程递减指定登记对象的键的引用计数。 |
TmEnableCallbacks TmEnableCallbacks 例程启用接收事务通知的回调例程。 |
TmGetTransactionId TmGetTransactionId 例程检索事务对象的工作单元 (UOW) 标识符。 |
TmInitializeTransactionManager TmInitializeTransactionManager 例程初始化事务管理器对象。 |
TmIsTransactionActive TmIsTransactionActive 例程指示指定的事务是否处于活动状态。 |
TmPrepareComplete TmPrepareComplete 例程通知 KTM 调用的资源管理器已完成事务数据的准备。 |
TmPrepareEnlistment TmPrepareEnlistment 例程为指定的登记事务启动准备操作。 |
TmPrepareComplete TmPrepareComplete 例程通知 KTM 调用的资源管理器已完成事务数据的初步准备。 |
TmPrepareEnlistment TmPreprepareEnlistment 例程为指定登记的事务启动预准备操作。 |
TmReadOnlyEnlistment TmReadOnlyEnlistment 例程将指定的登记设置为只读。 |
TmRecoverEnlistment TmRecoverEnlistment 例程为与指定登记关联的事务启动恢复操作。 |
TmRecoverResourceManager TmRecoverResourceManager 例程尝试恢复与指定资源管理器对象的每次登记关联的事务。 |
TmRecoverTransactionManager TmRecoverTransactionManager 例程重新构造事务管理器对象的状态, (包括从日志流中的恢复信息) 的所有事务、登记和资源管理器。 |
TmReferenceEnlistmentKey TmReferenceEnlistmentKey 例程递增指定登记对象的键的引用计数并检索密钥。 |
TmRenameTransactionManager TmRenameTransactionManager 例程更改事务管理器对象的标识,该对象存储在日志文件名中包含的 CLFS 日志文件流中。 |
TmRequestOutcomeEnlistment TmRequestOutcomeEnlistment 例程要求 KTM 尝试为与指定登记关联的事务提供即时结果 (提交或回滚) 。 |
TmRollbackComplete TmRollbackComplete 例程通知 KTM 调用的资源管理器已完成回滚事务的数据。 |
TmRollbackEnlistment TmRollbackEnlistment 例程回滚指定的登记。 |
TmRollbackTransaction TmRollbackTransaction 例程为指定事务启动回滚操作。 |
TmSinglePhaseReject TmSinglePhaseReject 例程通知 KTM,调用的资源管理器不支持对指定的登记执行单阶段提交操作。 |
TRANSLATE_BUS_ADDRESS TranslateBusAddress 例程将父总线上的地址转换为逻辑地址。 |
VslCreateSecureSection 此 VslCreateSecureSection 材料尚不可用。 此占位符主题作为文档示例提供,可能包含在更高版本中。 |
VslDeleteSecureSection 此 VslDeleteSecureSection 材料尚不可用。 此占位符主题作为文档示例提供,可能包含在更高版本中。 |
WdmlibIoConnectInterruptEx WdmlibIoConnectInterruptEx 函数为设备的中断注册中断处理例程。 |
WdmlibIoCreateDeviceSecure WdmlibIoCreateDeviceSecure 函数 (或 IoCreateDeviceSecure) 创建命名设备对象并应用指定的安全设置。 |
WdmlibIoDisconnectInterruptEx WdmlibIoDisconnectInterruptEx 函数 (ISR) 取消注册由上一次调用 WdmlibIoConnectInterruptEx 函数注册的中断服务例程。 |
WdmlibIoGetAffinityInterrupt WdmlibIoGetAffinityInterrupt 函数获取中断对象的组相关性。 |
WdmlibIoValidateDeviceIoControlAccess WdmlibIoValidateDeviceIoControlAccess 函数验证IRP_MJ_DEVICE_CONTROL或IRP_MJ_FILE_SYSTEM_CONTROL IRP 的发送方是否具有对设备对象的指定访问权限。 |
WdmlibProcgrpInitialize WdmlibProcgrpInitialize 函数初始化处理器组 (ProcGrp) 兼容性库。 |
WdmlibRtlInitUnicodeStringEx WdmlibRtlInitUnicodeStringEx 函数初始化 Unicode 字符的计数字符串。 |
WheaAdd2Ptr 本主题介绍 WheaAdd2Ptr 宏。 |
WheaErrorRecordBuilderAddPacket 此例程将数据包添加到错误记录中。 |
WheaErrorRecordBuilderAddSection WheaErrorRecordBuilderAddSection 函数查找下一节,初始化其描述符,并返回一个指针,供调用方填充数据。 |
WheaErrorRecordBuilderInit WheaErrorRecordBuilderInit 函数初始化记录生成器帮助程序函数的错误记录。 |
WheaRegisterErrorSourceOverride 本主题介绍 WheaRegisterErrorSourceOverride 函数。 |
WheaSignalHandlerOverride 本主题介绍 WheaSignalHandlerOverride 函数。 |
WheaUnregisterErrorSourceOverride 本主题介绍 WheaUnregisterErrorSourceOverride 函数。 |
WMI_EXECUTE_METHOD_CALLBACK DpWmiExecuteMethod 例程执行与数据块关联的方法。 此例程是可选的。 |
WMI_FUNCTION_CONTROL_CALLBACK DpWmiFunctionControl 例程启用或禁用事件通知,并为驱动程序注册为收集成本高昂的数据块启用或禁用数据收集。 此例程是可选的。 |
WMI_QUERY_DATABLOCK_CALLBACK DpWmiQueryDataBlock 例程返回数据块的单个实例或所有实例。 此例程是必需的。 |
WMI_QUERY_REGINFO_CALLBACK DpWmiQueryReginfo 例程提供有关驱动程序要注册的数据块和事件块的信息。 此例程是必需的。 |
WMI_SET_DATABLOCK_CALLBACK DpWmiSetDataBlock 例程更改数据块的单个实例中的所有数据项。 此例程是可选的。 |
WMI_SET_DATAITEM_CALLBACK DpWmiSetDataItem 例程更改数据块实例中的单个数据项。 此例程是可选的。 |
WmiCompleteRequest WmiCompleteRequest 例程指示驱动程序已完成处理 DpWmiXxx 例程中的 WMI 请求。 |
WmiFireEvent WmiFireEvent 例程将事件发送到 WMI,以便传递给已请求事件通知的数据使用者。 |
WmiQueryTraceInformation WmiQueryTraceInformation 例程返回有关 WMI 事件跟踪的信息。 |
WmiSystemControl WmiSystemControl 例程是使用 WMI 库支持例程处理 WMI IRP 的驱动程序的调度例程。 |
WmiTraceMessage WmiTraceMessage 例程将消息添加到 WPP 软件跟踪会话的输出日志。 |
WmiTraceMessageVa WmiTraceMessageVa 例程将消息添加到 WPP 软件跟踪会话的输出日志。 |
WRITE_PORT_BUFFER_UCHAR WRITE_PORT_BUFFER_UCHAR 函数 (miniport.h) 将缓冲区中的多个字节写入指定端口。 |
WRITE_PORT_BUFFER_UCHAR WRITE_PORT_BUFFER_UCHAR函数 (wdm.h) 将缓冲区中的多个字节写入指定端口。 |
WRITE_PORT_BUFFER_ULONG WRITE_PORT_BUFFER_ULONG 函数 (miniport.h) 将缓冲区中的多个 ULONG 值写入指定的端口地址。 |
WRITE_PORT_BUFFER_ULONG (wdm.h) WRITE_PORT_BUFFER_ULONG 函数将缓冲区中的多个 ULONG 值写入指定的端口地址。 |
WRITE_PORT_BUFFER_USHORT WRITE_PORT_BUFFER_USHORT函数 (miniport.h) 将多个 USHORT 值从缓冲区写入指定的端口地址。 |
WRITE_PORT_BUFFER_USHORT WRITE_PORT_BUFFER_USHORT 函数 (wdm.h) 将缓冲区中的许多 USHORT 值写入指定的端口地址。 |
WRITE_PORT_UCHAR WRITE_PORT_UCHAR 函数 (ioaccess.h) 将字节写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_UCHAR WRITE_PORT_UCHAR 函数 (miniport.h) 将字节写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_UCHAR WRITE_PORT_UCHAR 函数 (wdm.h) 将字节写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_ULONG WRITE_PORT_ULONG 函数 (ioaccess.h) 将 ULONG 值写入到驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_ULONG WRITE_PORT_ULONG 函数 (miniport.h) 将 ULONG 值写入常驻的映射设备内存中的指定端口地址。 |
WRITE_PORT_ULONG WRITE_PORT_ULONG 函数 (wdm.h) 将 ULONG 值写入常驻的映射设备内存中的指定端口地址。 |
WRITE_PORT_USHORT WRITE_PORT_USHORT 函数 (ioaccess.h) 将 USHORT 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_USHORT WRITE_PORT_USHORT 函数 (miniport.h) 将 USHORT 值写入到驻留的映射设备内存中的指定端口地址。 |
WRITE_PORT_USHORT WRITE_PORT_USHORT函数 (wdm.h) 将 USHORT 值写入驻留的映射设备内存中的指定端口地址。 |
WRITE_REGISTER_BUFFER_UCHAR WRITE_REGISTER_BUFFER_UCHAR函数 (miniport.h) 将缓冲区中的多个字节写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_UCHAR WRITE_REGISTER_BUFFER_UCHAR 函数 (wdm.h) 将多个字节从缓冲区写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_ULONG WRITE_REGISTER_BUFFER_ULONG 函数 (miniport.h) 将缓冲区中的多个 ULONG 值写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_ULONG WRITE_REGISTER_BUFFER_ULONG 函数 (wdm.h) 将缓冲区中的多个 ULONG 值写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_ULONG64 WRITE_REGISTER_BUFFER_ULONG64 函数 (wdm.h) 将缓冲区中的多个 ULONG64 值写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_USHORT WRITE_REGISTER_BUFFER_USHORT函数 (miniport.h) 将缓冲区中的多个 USHORT 值写入指定的寄存器。 |
WRITE_REGISTER_BUFFER_USHORT WRITE_REGISTER_BUFFER_USHORT 函数 (wdm.h) 将多个 USHORT 值从缓冲区写入指定的寄存器。 |
WRITE_REGISTER_UCHAR WRITE_REGISTER_UCHAR 函数 (ioaccess.h) 将字节写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_UCHAR WRITE_REGISTER_UCHAR 函数 (miniport.h) 将字节写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_UCHAR WRITE_REGISTER_UCHAR 函数 (wdm.h) 将字节写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG WRITE_REGISTER_ULONG 函数 (ioaccess.h) 将 ULONG 值写入到驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG WRITE_REGISTER_ULONG 函数 (miniport.h) 将 ULONG 值写入常驻的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG WRITE_REGISTER_ULONG 函数 (wdm.h) 将 ULONG 值写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_ULONG64 (wdm.h) WRITE_REGISTER_ULONG64 函数将 ULONG64 值写入指定的寄存器地址。 |
WRITE_REGISTER_USHORT WRITE_REGISTER_USHORT 函数 (ioaccess.h) 将 USHORT 值写入驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_USHORT WRITE_REGISTER_USHORT 函数 (miniport.h) 将 USHORT 值写入到驻留的映射设备内存中的指定寄存器地址。 |
WRITE_REGISTER_USHORT WRITE_REGISTER_USHORT 函数 (wdm.h) 将 USHORT 值写入到驻留的映射设备内存中的指定寄存器地址。 |
WriteInt32NoFence 本主题介绍 WriteInt32NoFence 函数。 |
WriteInt32NoFence WriteInt32NoFence 函数... |
WriteInt32Raw 本主题介绍 WriteInt32Raw 函数。 |
WriteInt32Raw WriteInt32Raw 函数... |
WriteInt32Release 本主题介绍 WriteInt32Release 函数。 |
WriteInt32Release WriteInt32Release 函数... |
WriteUInt32NoFence 本主题介绍 WriteUInt32NoFence 函数。 |
WriteUInt32NoFence WriteUInt32NoFence 函数... |
WriteUInt32Raw 本主题介绍 WriteUInt32Raw 函数。 |
WriteUInt32Raw WriteUInt32Raw 函数... |
WriteUInt32Release 本主题介绍 WriteUInt32Release 函数。 |
WriteUInt32Release WriteUInt32Release 函数... |
ZwAllocateLocallyUniqueId ZwAllocateLocallyUniqueId 例程 (LUID) 分配本地唯一标识符。 |
ZwAllocateVirtualMemory ZwAllocateVirtualMemory 例程保留和/或提交指定进程的用户模式虚拟地址空间中的页面区域。 |
ZwClose wdm.h 中的 ZwClose 例程关闭对象句柄。 ZwClose 是一个泛型例程,可对任何类型的对象进行操作。 |
ZwCommitComplete 了解 ZwCommitComplete 例程如何通知 KTM 调用的资源管理器已完成提交事务的数据。 |
ZwCommitEnlistment 了解 ZwCommitEnlistment 例程如何启动指定登记事务的提交操作。 |
ZwCommitTransaction 了解 ZwCommitTransaction 例程如何为指定事务启动提交操作。 |
ZwCreateDirectoryObject ZwCreateDirectoryObject 例程创建或打开 object-directory 对象。 |
ZwCreateEnlistment 了解 ZwCreateEnlistment 例程如何为事务创建新的登记对象。 |
ZwCreateEvent ZwCreateEvent 例程创建事件对象,将事件的初始状态设置为指定值,并打开具有指定所需访问权限的 对象的句柄。 |
ZwCreateFile ZwCreateFile 例程创建新文件或打开现有文件。 |
ZwCreateKey ZwCreateKey 例程创建新的注册表项或打开现有注册表项。 |
ZwCreateKeyTransacted ZwCreateKeyTransacted 例程创建新的注册表项或打开现有注册表项,并将该注册表项与事务关联。 |
ZwCreateResourceManager 了解 ZwCreateResourceManager 例程如何创建资源管理器对象。 |
ZwCreateSection wdm.h 中的 ZwCreateSection 例程创建一个 section 对象。 指向的句柄不再使用后,驱动程序必须关闭它。 |
ZwCreateTransaction 了解 ZwCreateTransaction 例程如何创建事务对象。 |
ZwCreateTransactionManager 了解 ZwCreateTransactionManager 例程如何创建新的事务管理器对象。 |
ZwDeleteFile ZwDeleteFile 例程删除指定的文件。 |
ZwDeleteKey ZwDeleteKey 例程从注册表中删除打开的项。 |
ZwDeleteValueKey ZwDeleteValueKey 例程从注册表中的打开项中删除与名称匹配的值项。 如果不存在此类条目,则返回错误。 |
ZwDeviceIoControlFile 此例程将控制代码直接发送到指定的设备驱动程序,导致相应的驱动程序执行指定的操作。 |
ZwDeviceIoControlFile 了解 ZwDeviceIoControlFile 例程如何将控制代码直接发送到指定的设备驱动程序,导致相应的驱动程序执行指定的操作。 |
ZwDuplicateObject ZwDuplicateObject 例程创建一个与指定源句柄重复的句柄。 |
ZwDuplicateToken ZwDuplicateToken 函数创建与现有令牌重复的新访问令牌的句柄。 |
ZwEnumerateKey ZwEnumerateKey 例程返回有关打开的注册表项的子项的信息。 |
ZwEnumerateTransactionObject 了解 ZwEnumerateTransactionObject 例程如何枚举计算机上的 KTM 对象。 |
ZwEnumerateValueKey ZwEnumerateValueKey 例程获取有关打开键的值条目的信息。 |
ZwFlushBuffersFile 文件系统筛选器驱动程序调用 ZwFlushBuffersFile 例程,以将指定文件的刷新请求发送到文件系统。 |
ZwFlushBuffersFileEx 文件系统筛选器驱动程序调用 ZwFlushBuffersFileEx 例程,以向文件系统发送给定文件的刷新请求。 可以设置可选的刷新操作标志来控制文件数据写入存储的方式。 |
ZwFlushKey ZwFlushKey 例程强制将注册表项提交到磁盘。 |
ZwFlushVirtualMemory ZwFlushVirtualMemory 例程在指定进程的虚拟地址空间中刷新一系列虚拟地址,如果已修改,这些虚拟地址映射到数据文件,则回退到数据文件。 |
ZwFreeVirtualMemory ZwFreeVirtualMemory 例程发布和/或取消提交指定进程的虚拟地址空间中的页面区域。 |
ZwFsControlFile ZwFsControlFile 例程将控制代码直接发送到指定的文件系统或文件系统筛选器驱动程序,导致相应的驱动程序执行指定的操作。 |
ZwGetNotificationResourceManager 了解 ZwGetNotificationResourceManager 例程如何从指定资源管理器的通知队列检索下一个事务通知。 |
ZwLoadDriver ZwLoadDriver 例程将驱动程序加载到系统中。 |
ZwLockFile 详细了解 ZwLockFile 例程。 |
ZwMakeTemporaryObject ZwMakeTemporaryObject 例程更改对象的属性,使其成为临时对象。 |
ZwMapViewOfSection ZwMapViewOfSection 例程将节的视图映射到主题进程的虚拟地址空间中。 |
ZwNotifyChangeKey ZwNotifyChangeKey 例程允许驱动程序在注册表项更改时请求通知。 |
ZwOpenDirectoryObject ZwOpenDirectoryObject 例程将打开现有的目录对象。 |
ZwOpenEnlistment 了解 ZwOpenEnlistment 例程如何获取现有登记对象的句柄。 |
ZwOpenEvent ZwOpenEvent 例程打开具有指定所需访问权限的现有命名事件对象的句柄。 |
ZwOpenFile wdm.h 中的 ZwOpenFile 例程会打开现有的文件、目录、设备或卷。 指向的句柄不再使用后,驱动程序必须关闭它。 |
ZwOpenKey ZwOpenKey 例程会打开现有的注册表项。 |
ZwOpenKeyEx ZwOpenKeyEx 例程会打开现有的注册表项。 |
ZwOpenKeyTransacted ZwOpenKeyTransacted 例程会打开现有的注册表项,并将该密钥与事务关联。 |
ZwOpenKeyTransactedEx ZwOpenKeyTransactedEx 例程会打开现有的注册表项,并将该密钥与事务关联。 |
ZwOpenProcess 了解 ZwOpenProcess 例程如何打开进程对象的句柄并设置对此对象的访问权限。 |
ZwOpenProcessTokenEx ZwOpenProcessTokenEx 例程打开与进程关联的访问令牌。 |
ZwOpenResourceManager 了解 ZwOpenResourceManager 例程如何向现有资源管理器对象返回句柄。 |
ZwOpenSection ZwOpenSection 例程打开现有节对象的句柄。 |
ZwOpenSymbolicLinkObject ZwOpenSymbolicLinkObject 例程会打开现有的符号链接。 |
ZwOpenThreadTokenEx ZwOpenThreadTokenEx 例程将打开与线程关联的访问令牌。 |
ZwOpenTransaction 了解 ZwOpenTransaction 例程如何获取现有事务对象的句柄。 |
ZwOpenTransactionManager 了解 ZwOpenTransactionManager 例程如何获取现有事务管理器对象的句柄。 |
ZwPowerInformation ZwPowerInformation 例程设置或检索系统电源信息。 |
ZwPrepareComplete 了解 ZwPrepareComplete 例程如何通知 KTM 调用的资源管理器已完成事务数据的准备。 |
ZwPrepareEnlistment 了解 ZwPrepareEnlistment 例程如何启动指定登记事务的准备操作。 |
ZwPrepareComplete 了解 ZwPrePareComplete 例程如何通知 KTM 调用资源管理器已完成事务数据的初步准备。 |
ZwPrepareEnlistment 了解 ZwPrepareEnlistment 例程如何启动指定登记事务的预准备操作。 |
ZwQueryDirectoryFile ZwQueryDirectoryFile 例程返回有关给定文件句柄指定的目录中文件的各种信息。 |
ZwQueryDirectoryFileEx 详细了解 ZwQueryDirectoryFileEx 函数。 |
ZwQueryEaFile ZwQueryEaFile 例程返回有关扩展属性 (EA) 文件值的信息。 |
ZwQueryFullAttributesFile ZwQueryFullAttributesFile 例程为指定文件提供网络打开信息。 |
ZwQueryInformationByName ZwQueryInformationByName 返回所请求的有关文件名指定的文件的信息。 |
ZwQueryInformationEnlistment 了解 ZwQueryInformationEnlistment 例程如何检索有关指定登记对象的信息。 |
ZwQueryInformationFile ZwQueryInformationFile 例程返回有关文件对象的各种信息。 |
ZwQueryInformationResourceManager 了解 ZwQueryInformationResourceManager 例程如何检索有关指定资源管理器对象的信息。 |
ZwQueryInformationToken ZwQueryInformationToken 例程检索有关访问令牌的指定类型的信息。 |
ZwQueryInformationTransaction 了解 ZwQueryInformationTransaction 例程如何检索有关指定事务的信息。 |
ZwQueryInformationTransactionManager 了解 ZwQueryInformationTransactionManager 例程如何检索有关指定事务管理器对象的信息。 |
ZwQueryKey ZwQueryKey 例程提供有关注册表项的类及其子项的数量和大小的信息。 |
ZwQueryObject ZwQueryObject 例程提供有关所提供的对象的信息。 如果对 NtQueryObject 的调用处于用户模式,请使用名称 NtQueryObject。 |
ZwQueryQuotaInformationFile ZwQueryQuotaInformationFile 例程检索与 FileHandle 参数指定的卷关联的配额条目。 |
ZwQuerySecurityObject ZwQuerySecurityObject 例程检索对象的安全描述符的副本。 安全描述符可以采用绝对或自相对形式。 |
ZwQuerySymbolicLinkObject ZwQuerySymbolicLinkObject 例程返回一个 Unicode 字符串,其中包含符号链接的目标。 |
ZwQueryValueKey ZwQueryValueKey 例程返回注册表项的值条目。 |
ZwQueryVirtualMemory ZwQueryVirtualMemory 例程确定主题进程虚拟地址空间中页面区域的状态、保护和类型。 |
ZwQueryVolumeInformationFile 了解此例程如何检索有关与给定文件、目录、存储设备或卷关联的卷的信息。 |
ZwQueryVolumeInformationFile 了解 ZwQueryVolumeInformationFile 例程如何检索与给定文件、目录、存储设备或卷关联的卷的相关信息。 |
ZwReadFile wdm.h 中的 ZwReadFile 例程从打开的文件读取数据。 ZwReadFile 的调用方必须已调用 ZwCreateFile。 |
ZwReadOnlyEnlistment 了解 ZwReadOnlyEnlistment 例程如何将指定的登记设置为只读。 |
ZwRecoverEnlistment 了解 ZwRecoverEnlistment 例程如何为与指定登记关联的事务启动恢复操作。 |
ZwRecoverResourceManager 了解 ZwRecoverResourceManager 例程如何尝试恢复与指定资源管理器对象的每次登记关联的事务。 |
ZwRecoverTransactionManager 了解 ZwRecoverTransactionManager 例程如何从日志流中的恢复信息重建事务管理器对象的状态。 |
ZwRollbackComplete 了解 ZwRollbackComplete 例程如何通知 KTM 调用的资源管理器已完成回滚事务的数据。 |
ZwRollbackEnlistment 了解 ZwRollbackEnlistment 例程如何回滚与指定登记关联的事务。 |
ZwRollbackTransaction 了解 ZwRollbackTransaction 例程如何为指定事务启动回滚操作。 |
ZwRollforwardTransactionManager 了解 ZwRollforwardTransactionManager 例程如何针对分配给指定事务管理器的所有正在进行的事务启动恢复操作。 |
ZwSetEaFile ZwSetEaFile 例程设置扩展属性 (EA) 文件的值。 |
ZwSetEvent ZwSetEvent 例程将事件对象设置为“已信号”状态,并尝试满足尽可能多的等待。 |
ZwSetInformationEnlistment 了解 ZwSetInformationEnlistment 例程如何设置指定登记对象的信息。 |
ZwSetInformationFile wdm.h 中的 ZwSetInformationFile 例程更改有关文件对象的各种信息。 它忽略不受支持的FILE_XXX_INFORMATION成员。 |
ZwSetInformationResourceManager 了解如何不使用 ZwSetInformationResourceManager 例程。 |
ZwSetInformationThread ZwSetInformationThread 例程设置线程的优先级。 |
ZwSetInformationToken ZwSetInformationToken 例程修改指定令牌中的信息。 调用进程必须具有适当的访问权限才能设置信息。 |
ZwSetInformationTransaction 了解 ZwSetInformationTransaction 例程如何设置指定事务的信息。 |
ZwSetInformationVirtualMemory ZwSetInformationVirtualMemory 例程对进程的用户地址空间中的指定地址范围列表执行操作。 |
ZwSetQuotaInformationFile ZwSetQuotaInformationFile 例程更改与 FileHandle 参数关联的卷的配额条目。 指定缓冲区中的所有配额条目都应用于卷。 |
ZwSetSecurityObject ZwSetSecurityObject 例程设置对象的安全状态。 |
ZwSetValueKey ZwSetValueKey 例程创建或替换注册表项的值条目。 |
ZwSetVolumeInformationFile ZwSetVolumeInformationFile 例程修改与给定文件、目录、存储设备或卷关联的卷的相关信息。 |
ZwSinglePhaseReject 了解 ZwSinglePhaseReject 例程如何通知 KTM 调用的资源管理器不支持指定登记的单阶段提交操作。 |
ZwTerminateProcess ZwTerminateProcess 例程终止进程及其所有线程。 |
ZwUnloadDriver ZwUnloadDriver 例程从系统卸载驱动程序。 |
ZwUnlockFile ZwUnlockFile 例程解锁文件中的字节范围锁。 |
ZwUnmapViewOfSection ZwUnmapViewOfSection 例程从主题进程的虚拟地址空间取消映射节的视图。 |
ZwWaitForSingleObject 详细了解 ZwWaitForSingleObject 例程。 |
ZwWriteFile ZwWriteFile 例程将数据写入打开的文件。 |
结构
DMA_ADAPTER DMA_ADAPTER结构描述给定设备的 DMA 控制器的系统定义接口。 驱动程序调用 IoGetDmaAdapter 来获取此结构。 |
DMA_OPERATIONS DMA_OPERATIONS 结构提供指向控制 DMA 控制器操作的函数的指针表。 |
ACPI_INTERFACE_STANDARD2 本主题介绍ACPI_INTERFACE_STANDARD2结构。 |
AUX_MODULE_BASIC_INFO AUX_MODULE_BASIC_INFO 结构包含有关已加载映像模块的基本信息。 |
AUX_MODULE_EXTENDED_INFO AUX_MODULE_EXTENDED_INFO 结构包含有关已加载图像模块的扩展信息。 |
BATTERY_REPORTING_SCALE 电池微型类驱动程序填充此结构以响应某些 BatteryMiniQueryInformation 请求。 |
BDCB_IMAGE_INFORMATION BDCB_IMAGE_INFORMATION结构描述即将初始化的启动启动驱动程序的相关信息,该驱动程序由 Windows 提供给启动驱动程序的BOOT_DRIVER_CALLBACK_FUNCTION例程。 |
BDCB_STATUS_UPDATE_CONTEXT BDCB_STATUS_UPDATE_CONTEXT结构描述 Windows 向启动驱动程序BOOT_DRIVER_CALLBACK_FUNCTION例程提供的状态更新。 |
BOOTDISK_INFORMATION BOOTDISK_INFORMATION 结构包含描述启动磁盘和系统磁盘的基本信息。 |
BOOTDISK_INFORMATION_EX BOOTDISK_INFORMATION_EX 结构包含描述启动磁盘和系统磁盘的扩展信息。 |
BUS_INTERFACE_STANDARD BUS_INTERFACE_STANDARD 接口结构使设备驱动程序能够直接调用父总线驱动程序例程。 此结构定义 GUID_BUS_INTERFACE_STANDARD 接口。 |
BUS_RESOURCE_UPDATE_INTERFACE 使设备驱动程序能够直接调用父总线驱动程序例程。 此结构定义 GUID_BUS_RESOURCE_UPDATE_INTERFACE 接口。 |
BUS_SPECIFIC_RESET_FLAGS 本主题介绍BUS_SPECIFIC_RESET_FLAGS联合。 |
CLFS_LOG_NAME_INFORMATION CLFS_LOG_NAME_INFORMATION 结构保存通用日志文件系统的名称 (CLFS) 流或日志。 |
CLFS_MGMT_CLIENT_REGISTRATION CLFS_MGMT_CLIENT_REGISTRATION结构由管理自己的日志的客户端提供给 CLFS 管理。 |
CLFS_MGMT_POLICY CLFS_MGMT_POLICY结构包含用于管理 CLFS 日志的策略的说明。 |
CLFS_STREAM_ID_INFORMATION CLFS_STREAM_ID_INFORMATION 结构包含一个值,该值标识通用日志文件系统 (CLFS) 日志中的流。 |
CLS_CONTAINER_INFORMATION CLFS_CONTAINER_INFORMATION 结构保存公共日志文件系统中单个容器的描述性信息, (CLFS) 日志。 |
CLS_INFORMATION CLFS_INFORMATION 结构保存通用日志文件系统 (CLFS) 流和/或其基础物理日志的元数据和状态信息。 |
CLS_IO_STATISTICS CLFS_IO_STATISTICS 结构保存公共日志文件系统 (CLFS) 日志的 I/O 统计信息。 |
CLS_IO_STATISTICS_HEADER CLFS_IO_STATISTICS_HEADER 结构保存CLFS_IO_STATISTICS结构的标头部分。 |
CLS_LSN CLFS_LSN 结构标识公共日志文件系统 (CLFS) 流中的单个记录。 |
CLS_SCAN_CONTEXT CLFS_SCAN_CONTEXT 结构包含上下文信息,以支持在通用日志文件系统中扫描容器 (CLFS) 日志。 |
CLS_WRITE_ENTRY CLFS_WRITE_ENTRY 结构包含一个缓冲区的地址和大小,该缓冲区包含要写入到通用日志文件系统 (CLFS) 流的一个数据单元。 |
CM_EISA_FUNCTION_INFORMATION miniport.h (_CM_EISA_FUNCTION_INFORMATION 结构) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。 |
CM_EISA_FUNCTION_INFORMATION wdm.h) (_CM_EISA_FUNCTION_INFORMATION 结构定义 HalGetBusData 或 HalGetBusDataByOffset 返回的详细 EISA 配置信息。 |
CM_EISA_SLOT_INFORMATION miniport.h (_CM_EISA_SLOT_INFORMATION 结构) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的 EISA 配置标头信息。 |
CM_EISA_SLOT_INFORMATION wdm.h (_CM_EISA_SLOT_INFORMATION 结构) 定义 HalGetBusData 或 HalGetBusDataByOffset 返回的 EISA 配置标头信息。 |
CM_FLOPPY_DEVICE_DATA 如果系统可以在启动过程中收集此信息,CM_FLOPPY_DEVICE_DATA结构定义存储在软盘控制器的 \Registry\Machine\Hardware\Description 树中的特定于设备类型的数据记录。 |
CM_FULL_RESOURCE_DESCRIPTOR CM_FULL_RESOURCE_DESCRIPTOR结构指定一组各种类型的系统硬件资源,这些资源分配给连接到特定总线的设备。 此结构包含在 CM_RESOURCE_LIST 结构中。 |
CM_INT13_DRIVE_PARAMETER 如果系统可以在启动过程中收集此信息,则CM_INT13_DRIVE_PARAMETER结构定义存储在磁盘控制器的 \Registry\Machine\Hardware\Description 树中特定于设备类型的数据记录。 |
CM_KEYBOARD_DEVICE_DATA 如果系统可以在启动过程中收集此信息,则 CM_KEYBOARD_DEVICE_DATA 结构定义特定于设备类型的数据记录,该记录存储在键盘外设的 \Registry\Machine\Hardware\Description 树中。 |
CM_MCA_POS_DATA miniport.h) (_CM_MCA_POS_DATA 结构已过时。 它定义槽的 IBM 兼容 MCA POS 配置信息。 |
CM_MCA_POS_DATA wdm.h) (_CM_MCA_POS_DATA 结构已过时。 它定义槽的 IBM 兼容 MCA POS 配置信息。 |
CM_PARTIAL_RESOURCE_DESCRIPTOR CM_PARTIAL_RESOURCE_DESCRIPTOR 结构指定分配给设备的一个或多个单一类型的系统硬件资源。 |
CM_PARTIAL_RESOURCE_LIST CM_PARTIAL_RESOURCE_LIST结构指定分配给设备的一组不同类型的系统硬件资源。 此结构包含在CM_FULL_RESOURCE_DESCRIPTOR结构中。 |
CM_POWER_DATA CM_POWER_DATA结构包含有关设备电源管理状态和功能的信息。 |
CM_POWER_DATA 了解CM_POWER_DATA结构如何包含有关设备电源管理状态和功能的信息。 |
CM_RESOURCE_LIST CM_RESOURCE_LIST结构指定分配给设备的所有系统硬件资源。 |
CM_SCSI_DEVICE_DATA 如果系统可以在启动过程中收集此信息,CM_SCSI_DEVICE_DATA结构定义存储在 SCSI HBA 的 \Registry\Machine\Hardware\Description 树中特定于设备类型的数据记录。 |
CM_SERIAL_DEVICE_DATA 如果系统可以在启动过程中收集此信息,CM_SERIAL_DEVICE_DATA结构定义存储在串行控制器的 \Registry\Machine\Hardware\Description 树中的特定于设备类型的数据记录。 |
CONFIGURATION_INFORMATION 详细了解CONFIGURATION_INFORMATION结构。 |
上下文 详细了解:CONTEXT 结构 |
CONTROLLER_OBJECT 控制器对象表示硬件适配器或控制器,其设备是 I/O 请求的实际目标。 |
COPY_INFORMATION 详细了解COPY_INFORMATION结构。 |
CORRELATION_VECTOR 存储用于引用事件和生成的日志以进行诊断的相关向量。 |
COUNTED_REASON_CONTEXT COUNTED_REASON_CONTEXT 结构包含一个或多个提供电源请求原因的字符串。 |
COUNTED_REASON_CONTEXT 了解COUNTED_REASON_CONTEXT结构如何包含一个或多个提供电源请求原因的字符串。 |
CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG 包含有关自定义系统事件触发器的信息。 |
D3COLD_AUX_POWER_AND_TIMING_INTERFACE 允许设备驱动程序在处于 D3Cold 状态时为其 PCI 设备协商更高的辅助功率。 |
D3COLD_SUPPORT_INTERFACE D3COLD_SUPPORT_INTERFACE 接口结构包含指向GUID_D3COLD_SUPPORT_INTERFACE驱动程序接口中的例程的指针。 |
DEBUG_DEVICE_ADDRESS 本主题介绍DEBUG_DEVICE_ADDRESS结构。 |
DEBUG_MEMORY_REQUIREMENTS 本主题介绍DEBUG_MEMORY_REQUIREMENTS结构。 |
DEVICE_BUS_SPECIFIC_RESET_INFO 定义DEVICE_BUS_SPECIFIC_RESET_INFO结构。 |
DEVICE_BUS_SPECIFIC_RESET_TYPE 定义DEVICE_BUS_SPECIFIC_RESET_TYPE结构。 |
DEVICE_CAPABILITIES DEVICE_CAPABILITIES结构描述设备的 PnP 和电源功能。 返回此结构以响应IRP_MN_QUERY_CAPABILITIES IRP。 |
DEVICE_DESCRIPTION DEVICE_DESCRIPTION结构描述驱动程序为其请求 DMA 适配器的物理设备的属性。 |
DEVICE_FAULT_CONFIGURATION 此结构用于设置设备故障报告状态 |
DEVICE_INTERFACE_CHANGE_NOTIFICATION DEVICE_INTERFACE_CHANGE_NOTIFICATION结构描述的设备接口已启用 (到达) 或禁用 (删除) 。 |
DEVICE_OBJECT 设备对象表示驱动程序处理 I/O 请求的逻辑、虚拟或物理设备。 |
DEVICE_RESET_INTERFACE_STANDARD DEVICE_RESET_INTERFACE_STANDARD结构使函数驱动程序能够重置和恢复发生故障的设备。 此结构描述GUID_DEVICE_RESET_INTERFACE_STANDARD接口。 |
DEVICE_RESET_STATUS_FLAGS 本主题介绍DEVICE_RESET_STATUS_FLAGS联合。 |
DMA_ADAPTER_INFO DMA_ADAPTER_INFO 结构是描述系统 DMA 控制器功能的DMA_ADAPTER_INFO_XXX结构的容器。 |
DMA_ADAPTER_INFO_CRASHDUMP 本主题介绍DMA_ADAPTER_INFO_CRASHDUMP结构。 |
DMA_ADAPTER_INFO_V1 DMA_ADAPTER_INFO_V1 结构描述由适配器对象表示的系统 DMA 控制器的功能。 |
DMA_IOMMU_INTERFACE 接口结构的扩展版本,允许设备驱动程序调用执行设备域操作的回调函数。 |
DMA_IOMMU_INTERFACE_EX 一种接口结构,允许设备驱动程序与执行设备域操作的 IOMMU 函数进行交互。 |
DMA_IOMMU_INTERFACE_V1 详细了解:DMA_IOMMU_INTERFACE_V1 |
DMA_IOMMU_INTERFACE_V2 包含 IOMMU 版本 2 (V2) 函数集的结构。 |
DMA_TRANSFER_INFO DMA_TRANSFER_INFO 结构是描述散点/收集列表分配要求的DMA_TRANSFER_INFO_XXX结构的容器。 |
DMA_TRANSFER_INFO_V1 DMA_TRANSFER_INFO_V1 结构包含散点/收集列表的分配要求,该列表描述 DMA 传输的 I/O 数据缓冲区。 |
DMA_TRANSFER_INFO_V2 包含散点/收集列表的分配要求,该列表描述 DMA 传输的 I/O 数据缓冲区。 |
DOMAIN_CONFIGURATION 包含配置域所需的信息。 |
DOMAIN_CONFIGURATION_ARM64 包含为 ARM64 系统配置域所需的信息。 |
DOMAIN_CONFIGURATION_X64 DOMAIN_CONFIGURATION_X64结构保留仅供系统使用。 |
DRIVER_OBJECT 每个驱动程序对象都表示加载的内核模式驱动程序的映像。 |
EFI_ACPI_RAS_SIGNAL_TABLE 本主题介绍EFI_ACPI_RAS_SIGNAL_TABLE结构。 |
EMULATOR_ACCESS_ENTRY miniport.h) (_EMULATOR_ACCESS_ENTRY 结构定义了一系列 I/O 端口,以及如何在基于 x86 的平台上通过 V86 仿真器访问这些端口。 |
ENLISTMENT_BASIC_INFORMATION ENLISTMENT_BASIC_INFORMATION 结构包含有关登记对象的信息。 |
EXT_DELETE_PARAMETERS EXT_DELETE_PARAMETERS 结构包含 ExDeleteTimer 例程的一组扩展参数。 |
EXT_SET_PARAMETERS EXT_SET_PARAMETERS 结构包含 ExSetTimer 例程的一组扩展参数。 |
EXTENDED_CREATE_INFORMATION 描述EXTENDED_CREATE_INFORMATION结构。 |
EXTENDED_CREATE_INFORMATION_32 描述EXTENDED_CREATE_INFORMATION结构的 32 位版本。 |
FILE_ACCESS_INFORMATION FILE_ACCESS_INFORMATION 结构用于查询或设置文件的访问权限。 |
FILE_ALIGNMENT_INFORMATION FILE_ALIGNMENT_INFORMATION 结构用作 ZwQueryInformationFile 例程的参数。 |
FILE_ALL_INFORMATION FILE_ALL_INFORMATION结构是多个FILE_XXX_INFORMATION结构的容器。 |
FILE_ATTRIBUTE_TAG_INFORMATION FILE_ATTRIBUTE_TAG_INFORMATION 结构用作 ZwQueryInformationFile 的参数。 |
FILE_BASIC_INFORMATION FILE_BASIC_INFORMATION 结构包含文件的时间戳和基本属性。 它用作查询或设置文件信息的例程的参数。 |
FILE_DISPOSITION_INFORMATION FILE_DISPOSITION_INFORMATION 结构用作 ZwSetInformationFile 例程的参数。 |
FILE_EA_INFORMATION FILE_EA_INFORMATION 结构用于查询文件 (EA) 扩展属性的大小。 |
FILE_END_OF_FILE_INFORMATION FILE_END_OF_FILE_INFORMATION 结构用作 ZwSetInformationFile 例程的参数。 |
FILE_FS_DEVICE_INFORMATION FILE_FS_DEVICE_INFORMATION结构提供有关与文件对象关联的设备对象的类型的文件系统设备信息。 |
FILE_FULL_EA_INFORMATION FILE_FULL_EA_INFORMATION结构 (EA) 信息提供扩展属性。 |
FILE_IO_PRIORITY_HINT_INFORMATION FILE_IO_PRIORITY_HINT_INFORMATION 结构由 ZwQueryInformationFile 和 ZwSetInformationFile 例程用于查询和设置指定文件句柄上请求的默认 IRP 优先级提示。 |
FILE_IS_REMOTE_DEVICE_INFORMATION FILE_IS_REMOTE_DEVICE_INFORMATION 结构用作 ZwQueryInformationFile 例程的参数。 |
FILE_MODE_INFORMATION FILE_MODE_INFORMATION结构用于查询或设置文件的访问模式。 |
FILE_NAME_INFORMATION FILE_NAME_INFORMATION 结构用作 ZwQueryInformationFile 和 ZwSetInformationFile 例程的参数。 |
FILE_NETWORK_OPEN_INFORMATION FILE_NETWORK_OPEN_INFORMATION结构用作 ZwQueryInformationFile 的参数。 |
FILE_OBJECT 系统使用 FILE_OBJECT 结构来表示文件对象。 |
FILE_POSITION_INFORMATION FILE_POSITION_INFORMATION 结构用作查询或设置文件信息的例程的参数。 |
FILE_STANDARD_INFORMATION FILE_STANDARD_INFORMATION 结构用作查询或设置文件信息的例程的参数。 |
FILE_STANDARD_INFORMATION_EX FILE_STANDARD_INFORMATION_EX 结构用作查询或设置文件信息的例程的参数。 |
FILE_VALID_DATA_LENGTH_INFORMATION FILE_VALID_DATA_LENGTH_INFORMATION 结构用作 ZwSetInformationFile 的参数。 |
FPGA_CONTROL_INTERFACE 保留供将来使用FPGA_CONTROL_INTERFACE。 |
FUNCTION_LEVEL_DEVICE_RESET_PARAMETERS FUNCTION_LEVEL_DEVICE_RESET_PARAMETER 结构用作 GUID_DEVICE_RESET_INTERFACE_STANDARD 接口的 DeviceReset 例程的参数。 |
GENERIC_MAPPING GENERIC_MAPPING结构描述了与每种类型的泛型访问权限关联的特定访问权限的ACCESS_MASK值。 |
GROUP_AFFINITY miniport.h) (_GROUP_AFFINITY 结构指定组号和该组中的处理器相关性。 |
HAL_DISPATCH 本主题介绍HAL_DISPATCH结构。 |
HARDWARE_COUNTER HARDWARE_COUNTER结构包含有关硬件计数器的信息。 |
HWPROFILE_CHANGE_NOTIFICATION HWPROFILE_CHANGE_NOTIFICATION结构描述与硬件配置文件配置更改相关的事件。 |
IMAGE_INFO 由驱动程序的 load-image 例程 (PLOAD_IMAGE_NOTIFY_ROUTINE) 用于指定图像信息。 |
IMAGE_INFO_EX IMAGE_INFO_EX是IMAGE_INFO加载映像信息结构的扩展版本。 |
IMAGE_POLICY_ENTRY 不支持_IMAGE_POLICY_ENTRY结构。 |
IMAGE_POLICY_METADATA 不支持_IMAGE_POLICY_METADATA结构。 |
INPUT_MAPPING_ELEMENT 包含设备的输入映射 ID。 |
接口 miniport.h) (_INTERFACE 结构描述由驱动程序导出以供其他驱动程序使用的接口。 |
接口 wdm.h) (_INTERFACE 结构描述由驱动程序导出以供其他驱动程序使用的接口。 |
IO_CONNECT_INTERRUPT_PARAMETERS IO_CONNECT_INTERRUPT_PARAMETERS 结构包含驱动程序提供给 IoConnectInterruptEx 例程的参数,以 (ISR) 注册中断服务例程。 |
IO_DISCONNECT_INTERRUPT_PARAMETERS IO_DISCONNECT_INTERRUPT_PARAMETERS 结构描述使用 IoDisconnectInterruptEx 注销中断处理例程时的参数。 |
IO_ERROR_LOG_PACKET IO_ERROR_LOG_PACKET 结构用作错误日志条目的标头。 |
IO_FOEXT_SHADOW_FILE 本主题介绍IO_FOEXT_SHADOW_FILE结构。 |
IO_INTERRUPT_MESSAGE_INFO IO_INTERRUPT_MESSAGE_INFO结构描述驱动程序的消息信号中断。 |
IO_INTERRUPT_MESSAGE_INFO_ENTRY IO_INTERRUPT_MESSAGE_INFO_ENTRY结构描述单个消息信号中断的属性。 |
IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS 结构包含已注册的中断服务例程的连接上下文 (ISR) ,该例程已连接到中断,或者以前调用 IoConnectInterruptEx 例程时中断。 |
IO_RESOURCE_DESCRIPTOR _IO_RESOURCE_DESCRIPTOR结构 (miniport.h) 描述了设备可以使用的一系列原始硬件资源(一种类型)。 |
IO_RESOURCE_DESCRIPTOR _IO_RESOURCE_DESCRIPTOR结构 (wdm.h) 描述了设备可以使用的一系列原始硬件资源(一种类型)。 |
IO_RESOURCE_LIST miniport.h) (_IO_RESOURCE_LIST 结构描述了设备可以使用的各种原始硬件资源。 |
IO_RESOURCE_LIST (wdm.h) _IO_RESOURCE_LIST结构描述了设备可以使用的各种类型的原始硬件资源。 |
IO_RESOURCE_REQUIREMENTS_LIST miniport.h) (_IO_RESOURCE_REQUIREMENTS_LIST 结构描述表示设备使用的原始资源类型的资源配置集。 |
IO_RESOURCE_REQUIREMENTS_LIST _IO_RESOURCE_REQUIREMENTS_LIST结构 (wdm.h) 描述表示设备使用的原始资源类型的资源配置集。 |
IO_SECURITY_CONTEXT IO_SECURITY_CONTEXT 结构表示IRP_MJ_CREATE请求的安全上下文。 |
IO_SESSION_CONNECT_INFO IO_SESSION_CONNECT_INFO结构提供有关用户会话的信息。 |
IO_SESSION_STATE_INFORMATION IO_SESSION_STATE_INFORMATION 结构包含有关用户会话状态的信息。 |
IO_SESSION_STATE_NOTIFICATION IO_SESSION_STATE_NOTIFICATION 结构包含内核模式驱动程序在驱动程序注册以接收会话事件通知时提供给 IoRegisterContainerNotification 例程的信息。 |
IO_STACK_LOCATION IO_STACK_LOCATION 结构定义 I/O 堆栈位置,这是与每个 IRP 关联的 I/O 堆栈中的条目。 |
IO_STATUS_BLOCK 在为 IRP 调用 IoCompleteRequest 之前,驱动程序设置 IRP 的 I/O 状态块以指示 I/O 请求的最终状态。 |
IO_STATUS_BLOCK64 IO_STATUS_BLOCK64结构... |
IOMMU_DEVICE_CREATION_CONFIGURATION IOMMU_DEVICE_CREATION_CONFIGURATION描述在创建和初始化IOMMU_DMA_DEVICE时要使用的配置或配置列表。 |
IOMMU_DEVICE_CREATION_CONFIGURATION_ACPI IOMMU_DEVICE_CREATION_CONFIGURATION_ACPI提供IOMMU_DEVICE_CREATION_CONFIGURATION结构的特定于 ACPI 的配置参数,该参数用于创建 ACPI 类型IOMMU_DMA_DEVICE。 |
IOMMU_DMA_DOMAIN_CREATION_FLAGS 详细了解:IOMMU_DMA_DOMAIN_CREATION_FLAGS |
IOMMU_DMA_LOGICAL_ADDRESS_TOKEN IOMMU_DMA_LOGICAL_ADDRESS_TOKEN表示由 IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE 创建的保留连续逻辑地址范围。 |
IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT 详细了解:IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT |
IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG IOMMU_DMA_LOGICAL_ALLOCATOR_CONFIG 结构包含配置逻辑分配器所需的信息。 |
IOMMU_DMA_RESERVED_REGION IOMMU_DMA_RESERVED_REGION结构描述了需要在创建域期间标记为保留的内存区域。 |
IOMMU_INTERFACE_STATE_CHANGE 详细了解:IOMMU_INTERFACE_STATE_CHANGE |
IOMMU_INTERFACE_STATE_CHANGE_FIELDS 详细了解IOMMU_INTERFACE_STATE_CHANGE_FIELDS |
IOMMU_MAP_PHYSICAL_ADDRESS IOMMU_MAP_PHYSICAL_ADDRESS表示要映射到逻辑地址的物理地址。 |
IRP IRP 结构是表示 I/O 请求数据包的部分不透明结构。 驱动程序可以使用 IRP 结构的以下成员。 |
KBUGCHECK_ADD_PAGES KBUGCHECK_ADD_PAGES 结构描述由 KbCallbackAddPages 回调例程写入故障转储文件的一页或多页驱动程序提供的数据。 |
KBUGCHECK_DATA KBUGCHECK_DATA结构包含 bug 检查参数。 |
KBUGCHECK_DUMP_IO KBUGCHECK_DUMP_IO 结构描述故障转储文件上的 I/O 操作。 |
KBUGCHECK_SECONDARY_DUMP_DATA KBUGCHECK_SECONDARY_DUMP_DATA 结构描述由 KbCallbackSecondaryDumpData 例程写入故障转储文件的驱动程序提供数据的一部分。 |
KDPC_WATCHDOG_INFORMATION KDPC_WATCHDOG_INFORMATION 结构保存有关当前延迟过程调用的超时信息 (DPC) 。 |
KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT KE_PROCESSOR_CHANGE_NOTIFY_CONTEXT结构描述在将新处理器动态添加到硬件分区时传递给已注册回调函数的通知上下文。 |
KERNEL_CET_CONTEXT 保留仅供系统使用。 请勿使用。 |
KERNEL_SOFT_RESTART_NOTIFICATION 详细了解:KERNEL_SOFT_RESTART_NOTIFICATION 结构 |
KEY_BASIC_INFORMATION KEY_BASIC_INFORMATION 结构定义可用于注册表项的完整信息的子集。 |
KEY_CACHED_INFORMATION KEY_CACHED_INFORMATION 结构保存可用于注册表项或子项的缓存信息。 |
KEY_FULL_INFORMATION KEY_FULL_INFORMATION 结构定义可用于注册表项的信息,包括有关其子项的信息及其名称和值条目的最大长度。 |
KEY_NAME_INFORMATION KEY_NAME_INFORMATION 结构保存密钥的名称和名称长度。 |
KEY_NODE_INFORMATION KEY_NODE_INFORMATION 结构定义注册表 (子) 键可用的基本信息。 |
KEY_VALUE_BASIC_INFORMATION KEY_VALUE_BASIC_INFORMATION 结构定义可用于注册表项的值条目的完整信息的子集。 |
KEY_VALUE_ENTRY REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION 结构使用 KEY_VALUE_ENTRY 结构来描述注册表项的单个值条目。 |
KEY_VALUE_FULL_INFORMATION KEY_VALUE_FULL_INFORMATION 结构定义可用于注册表项的值项的信息。 |
KEY_VALUE_PARTIAL_INFORMATION KEY_VALUE_PARTIAL_INFORMATION 结构定义可用于注册表项的值条目的值信息的子集。 |
KEY_VIRTUALIZATION_INFORMATION KEY_VIRTUALIZATION_INFORMATION 结构定义可用于注册表项或子项的基本信息。 |
KEY_WRITE_TIME_INFORMATION 系统使用 KEY_WRITE_TIME_INFORMATION 结构来设置注册表项的上次写入时间。 |
KMUTANT 详细了解:KMUTANT 结构 |
KTMOBJECT_CURSOR 当组件调用 ZwEnumerateTransactionObject 时,KTMOBJECT_CURSOR 结构接收有关 KTM 对象的枚举信息。 |
KUSER_SHARED_DATA 本主题介绍KUSER_SHARED_DATA结构。 |
LINK_SHARE_ACCESS 文件系统仅对链接文件使用的共享访问结构。 |
MAILSLOT_CREATE_PARAMETERS MAILSLOT_CREATE_PARAMETERS由 Windows 子系统用来创建邮件图。 |
MDL MDL 结构是部分不透明的结构,表示 MDL) (内存描述符列表。 |
MEM_EXTENDED_PARAMETER 详细了解:MEM_EXTENDED_PARAMETER结构 |
MEMORY_BASIC_INFORMATION 包含有关进程的虚拟地址空间中的页范围的信息。 |
MEMORY_PARTITION_DEDICATED_MEMORY_OPEN_INFORMATION 定义MEMORY_PARTITION_DEDICATED_MEMORY_OPEN_INFORMATION结构。 |
MM_COPY_ADDRESS MM_COPY_ADDRESS结构包含虚拟内存地址或物理内存地址。 |
MM_PHYSICAL_ADDRESS_LIST MM_PHYSICAL_ADDRESS_LIST结构指定物理地址的范围。 |
NAMED_PIPE_CREATE_PARAMETERS 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 miniport.h) (_PCI_COMMON_CONFIG结构已过时。 它定义标准 PCI 配置信息。 |
PCI_COMMON_CONFIG wdm.h) (_PCI_COMMON_CONFIG 结构定义标准 PCI 配置信息。 |
PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER 描述PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER联合。 |
PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER 本主题介绍PCI_EXPRESS_LINK_CAPABILITIES_2_REGISTER联合。 |
PCI_EXPRESS_LINK_CONTROL_2_REGISTER 描述PCI_EXPRESS_LINK_CONTROL_2_REGISTER联合。 |
PCI_EXPRESS_LINK_CONTROL_2_REGISTER 本主题介绍PCI_EXPRESS_LINK_CONTROL_2_REGISTER联合。 |
PCI_EXPRESS_LINK_STATUS_2_REGISTER 描述PCI_EXPRESS_LINK_STATUS_2_REGISTER联合。 |
PCI_EXPRESS_LINK_STATUS_2_REGISTER 本主题介绍PCI_EXPRESS_LINK_STATUS_2_REGISTER联合。 |
PCI_MSIX_TABLE_CONFIG_INTERFACE PCI_MSIX_TABLE_CONFIG_INTERFACE结构使设备驱动程序能够修改其 MSI-X 中断设置。 此结构描述GUID_MSIX_TABLE_CONFIG_INTERFACE接口。 |
PCI_SECURITY_INTERFACE2 定义PCI_SECURITY_INTERFACE2结构。 |
PCI_SEGMENT_BUS_NUMBER Microsoft 保留PCI_SEGMENT_BUS_NUMBER结构仅供内部使用。 请勿在代码中使用此结构。 |
PCI_SLOT_NUMBER miniport.h) (_PCI_SLOT_NUMBER结构已过时。 它将 Slot 参数的格式定义为过时的 HalXxxBusData 例程。 |
PCI_SLOT_NUMBER wdm.h) (_PCI_SLOT_NUMBER 结构已过时。 它将 Slot 参数的格式定义为过时的 HalXxxBusData 例程。 |
PCI_VENDOR_SPECIFIC_CAPABILITY 本主题介绍PCI_VENDOR_SPECIFIC_CAPABILITY结构。 |
PEP_ABANDON_DEVICE 了解PEP_ABANDON_DEVICE结构如何标识已放弃且不再由操作系统使用的设备。 |
PEP_ABANDON_DEVICE PEP_ABANDON_DEVICE结构标识已放弃且不再由操作系统使用的设备。 |
PEP_ACPI_ABANDON_DEVICE 了解PEP_ACPI_ABANDON_DEVICE结构如何指示平台扩展插件 (PEP) 是否接受已放弃设备的所有权。 |
PEP_ACPI_ABANDON_DEVICE PEP_ACPI_ABANDON_DEVICE结构指示平台扩展插件 (PEP) 是否接受已放弃设备的所有权。 |
PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE 了解 PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE 结构如何包含设备命名空间中对象的枚举。 |
PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE PEP_ACPI_ENUMERATE_DEVICE_NAMESPACE 结构包含设备命名空间中的 对象的枚举。 |
PEP_ACPI_EVALUATE_CONTROL_METHOD 了解 PEP_ACPI_EVALUATE_CONTROL_METHOD 结构如何指定要计算的 ACPI 控制方法、要提供给此方法的输入参数以及计算结果的输出缓冲区。 |
PEP_ACPI_EVALUATE_CONTROL_METHOD PEP_ACPI_EVALUATE_CONTROL_METHOD 结构指定要计算的 ACPI 控制方法、要提供给此方法的输入参数以及计算结果的输出缓冲区。 |
PEP_ACPI_EXTENDED_ADDRESS 了解如何使用 PEP_ACPI_EXTENDED_ADDRESS 结构来报告地址空间中的资源使用情况,例如内存和 IO。 |
PEP_ACPI_EXTENDED_ADDRESS PEP_ACPI_EXTENDED_ADDRESS结构用于报告地址空间中的资源使用情况,例如内存和 IO。 |
PEP_ACPI_GPIO_RESOURCE 了解 PEP_ACPI_GPIO_RESOURCE 结构如何描述常规用途输入/输出 (GPIO) 资源的 ACPI 配置。 |
PEP_ACPI_GPIO_RESOURCE PEP_ACPI_GPIO_RESOURCE结构描述了常规用途输入/输出 (GPIO) 资源的 ACPI 配置。 |
PEP_ACPI_INTERRUPT_RESOURCE 了解PEP_ACPI_INTERRUPT_RESOURCE结构如何描述 ACPI 中断资源。 |
PEP_ACPI_INTERRUPT_RESOURCE PEP_ACPI_INTERRUPT_RESOURCE结构描述 ACPI 中断资源。 |
PEP_ACPI_IO_MEMORY_RESOURCE 了解 PEP_ACPI_IO_MEMORY_RESOURCE 结构如何描述 ACPI IO 端口描述符资源。 |
PEP_ACPI_IO_MEMORY_RESOURCE PEP_ACPI_IO_MEMORY_RESOURCE 结构描述 ACPI IO 端口描述符资源。 |
PEP_ACPI_OBJECT_NAME 了解PEP_ACPI_OBJECT_NAME联合如何包含 ACPI 对象的四个字符名称。 |
PEP_ACPI_OBJECT_NAME PEP_ACPI_OBJECT_NAME联合包含 ACPI 对象的四个字符名称。 |
PEP_ACPI_OBJECT_NAME_WITH_TYPE 了解PEP_ACPI_OBJECT_NAME_WITH_TYPE结构如何指定 ACPI 对象的相对路径名称和此对象的类型。 |
PEP_ACPI_OBJECT_NAME_WITH_TYPE PEP_ACPI_OBJECT_NAME_WITH_TYPE 结构,指定 ACPI 对象的相对路径名称和此对象的类型。 |
PEP_ACPI_PREPARE_DEVICE 了解PEP_ACPI_PREPARE_DEVICE结构如何指示平台扩展插件 (PEP) 是否准备好为指定设备提供 ACPI 服务。 |
PEP_ACPI_PREPARE_DEVICE PEP_ACPI_PREPARE_DEVICE结构指示平台扩展插件 (PEP) 是否准备好为指定的设备提供 ACPI 服务。 |
PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 了解PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES结构如何包含控制设备电源所需的原始资源列表。 |
PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES结构包含控制设备电源所需的原始资源列表。 |
PEP_ACPI_QUERY_OBJECT_INFORMATION 了解 PEP_ACPI_QUERY_OBJECT_INFORMATION 结构如何包含有关 ACPI 对象的信息。 |
PEP_ACPI_QUERY_OBJECT_INFORMATION PEP_ACPI_QUERY_OBJECT_INFORMATION 结构包含有关 ACPI 对象的信息。 |
PEP_ACPI_REGISTER_DEVICE 了解PEP_ACPI_REGISTER_DEVICE结构如何包含有关平台扩展插件 (PEP) 提供 ACPI 服务的设备的注册信息。 |
PEP_ACPI_REGISTER_DEVICE PEP_ACPI_REGISTER_DEVICE结构包含有关平台扩展插件 (PEP) 提供 ACPI 服务的设备的注册信息。 |
PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES 了解如何在通过 PEP 初始化函数之一将 ACPI 资源转换为 BIOS 资源的过程中使用 PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES 结构。 |
PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES PEP_ACPI_REQUEST_CONVERT_TO_BIOS_RESOURCES结构用于通过 PEP 初始化函数之一将 ACPI 资源转换为 BIOS 资源的过程。 |
PEP_ACPI_RESOURCE 了解PEP_ACPI_RESOURCE结构如何包含特定 ACPI 资源的硬件详细信息。 |
PEP_ACPI_RESOURCE PEP_ACPI_RESOURCE 结构包含特定 ACPI 资源的硬件详细信息。 |
PEP_ACPI_RESOURCE_FLAGS 了解 PEP_ACPI_RESOURCE_FLAGS 结构如何包含描述 ACPI 资源的标志。 |
PEP_ACPI_RESOURCE_FLAGS PEP_ACPI_RESOURCE_FLAGS 结构包含描述 ACPI 资源的标志。 |
PEP_ACPI_SPB_I2C_RESOURCE 了解 PEP_ACPI_SPB_I2C_RESOURCE 结构如何描述 ACPI I2C 串行总线资源。 |
PEP_ACPI_SPB_I2C_RESOURCE PEP_ACPI_SPB_I2C_RESOURCE 结构描述 ACPI I2C 串行总线资源。 |
PEP_ACPI_SPB_RESOURCE 了解PEP_ACPI_SPB_RESOURCE结构如何描述 ACPI 串行总线连接资源。 |
PEP_ACPI_SPB_RESOURCE PEP_ACPI_SPB_RESOURCE结构描述 ACPI 串行总线连接资源。 |
PEP_ACPI_SPB_SPI_RESOURCE 了解 PEP_ACPI_SPB_SPI_RESOURCE 结构如何描述 ACPI SPI 串行总线资源。 |
PEP_ACPI_SPB_SPI_RESOURCE PEP_ACPI_SPB_SPI_RESOURCE结构描述 ACPI SPI 串行总线资源。 |
PEP_ACPI_SPB_UART_RESOURCE 了解PEP_ACPI_SPB_UART_RESOURCE结构如何描述 ACPI UART 串行总线资源。 |
PEP_ACPI_SPB_UART_RESOURCE PEP_ACPI_SPB_UART_RESOURCE结构描述 ACPI UART 串行总线资源。 |
PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES 了解 PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES 结构如何包含已翻译的电源控制资源列表,供平台扩展插件 (PEP) 使用。 |
PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES PEP_ACPI_TRANSLATED_DEVICE_CONTROL_RESOURCES结构包含已翻译的电源控制资源列表,供平台扩展插件 (PEP) 使用。 |
PEP_ACPI_UNREGISTER_DEVICE 了解PEP_ACPI_UNREGISTER_DEVICE结构如何包含有关已从 ACPI 服务注销的设备的信息。 |
PEP_ACPI_UNREGISTER_DEVICE PEP_ACPI_UNREGISTER_DEVICE 结构包含有关已从 ACPI 服务取消注册的设备的信息。 |
PEP_COMPONENT_ACTIVE PEP_COMPONENT_ACTIVE 结构标识在空闲条件和活动条件之间转换的组件。 |
PEP_COMPONENT_PERF_INFO 了解PEP_COMPONENT_PERF_INFO结构如何描述组件的性能状态 (P 状态) 。 |
PEP_COMPONENT_PERF_INFO PEP_COMPONENT_PERF_INFO结构描述组件的性能状态 (P 状态) 。 |
PEP_COMPONENT_PERF_SET 了解PEP_COMPONENT_PERF_SET结构如何描述 P 状态集中 (P 状态) 的性能状态。 |
PEP_COMPONENT_PERF_SET PEP_COMPONENT_PERF_SET结构描述 P 状态集中) (P 状态的性能状态。 |
PEP_COMPONENT_PERF_STATE_REQUEST 了解PEP_COMPONENT_PERF_STATE_REQUEST结构如何指定 (P 状态) 集的性能状态,以及要分配给此集的新性能级别。 |
PEP_COMPONENT_PERF_STATE_REQUEST PEP_COMPONENT_PERF_STATE_REQUEST 结构指定 (P 状态) 集的性能状态,以及要分配给此集的新性能级别。 |
PEP_COMPONENT_PLATFORM_CONSTRAINTS 了解PEP_COMPONENT_PLATFORM_CONSTRAINTS结构如何描述当平台处于特定空闲状态时组件可能处于的最低功率 Fx 状态。 |
PEP_COMPONENT_PLATFORM_CONSTRAINTS PEP_COMPONENT_PLATFORM_CONSTRAINTS结构描述当平台处于特定空闲状态时组件可以处于的最低功率 Fx 状态。 |
PEP_COMPONENT_V2 了解PEP_COMPONENT_V2结构如何指定设备中组件的电源状态属性。 |
PEP_COMPONENT_V2 PEP_COMPONENT_V2 结构指定设备中组件的电源状态属性。 |
PEP_COORDINATED_DEPENDENCY_OPTION 了解PEP_COORIDNATED_DEPENDENCY_OPTION结构如何描述协调空闲状态对 OS 的依赖关系。 |
PEP_COORDINATED_DEPENDENCY_OPTION PEP_COORIDNATED_DEPENDENCY_OPTION结构描述协调空闲状态对 OS 的依赖关系。 |
PEP_COORDINATED_IDLE_STATE 了解PEP_COORIDNATED_IDLE_STATE结构如何描述 OS 的协调空闲状态。 |
PEP_COORDINATED_IDLE_STATE PEP_COORIDNATED_IDLE_STATE结构描述 OS 的协调空闲状态。 |
PEP_CRASHDUMP_INFORMATION 了解PEP_CRASHDUMP_INFORMATION结构如何包含有关故障转储设备的信息。 |
PEP_CRASHDUMP_INFORMATION PEP_CRASHDUMP_INFORMATION 结构包含有关故障转储设备的信息。 |
PEP_DEBUGGER_TRANSITION_REQUIREMENTS 了解PEP_DEBUGGER_TRANSITION_REQUIREMENTS结构如何指示必须启用调试器设备的平台空闲状态。 |
PEP_DEBUGGER_TRANSITION_REQUIREMENTS PEP_DEBUGGER_TRANSITION_REQUIREMENTS结构指示必须为其启用调试器设备的平台空闲状态。 |
PEP_DEVICE_PLATFORM_CONSTRAINTS 了解PEP_DEVICE_PLATFORM_CONSTRAINTS结构如何指定设备支持的各种 Dx 电源状态的入口约束。 |
PEP_DEVICE_PLATFORM_CONSTRAINTS PEP_DEVICE_PLATFORM_CONSTRAINTS结构指定设备支持的各种 Dx 电源状态的入口约束。 |
PEP_DEVICE_POWER_STATE 了解PEP_DEVICE_POWER_STATE结构如何指示转换为新的 Dx (设备电源) 状态的状态。 |
PEP_DEVICE_POWER_STATE PEP_DEVICE_POWER_STATE结构指示转换为新的 Dx (设备电源) 状态的状态。 |
PEP_DEVICE_REGISTER_V2 了解PEP_DEVICE_REGISTER结构如何描述特定设备中的所有组件。 |
PEP_DEVICE_REGISTER_V2 PEP_DEVICE_REGISTER结构描述特定设备中的所有组件。 |
PEP_DEVICE_STARTED 了解PEP_DEVICE_STARTED结构如何识别其驱动程序已完成 Windows 电源管理框架注册的设备 (PoFx) 。 |
PEP_DEVICE_STARTED PEP_DEVICE_STARTED结构标识其驱动程序已完成 Windows 电源管理框架注册 (PoFx) 的设备。 |
PEP_INFORMATION 了解 PEP_INFORMATION 结构如何指定平台扩展插件 (PEP) 用于从 Windows 电源管理框架接收通知的接口, (PoFx) 。 |
PEP_INFORMATION PEP_INFORMATION 结构指定平台扩展插件 (PEP) 用于从 Windows 电源管理框架接收通知的接口, (PoFx) 。 |
PEP_KERNEL_INFORMATION_STRUCT_V1 PEP_KERNEL_INFORMATION_STRUCT_V1 结构指定电源扩展插件 (PEP) 用于从 Windows 电源管理框架请求服务的接口 (PoFx) 。 |
PEP_KERNEL_INFORMATION_STRUCT_V2 了解 PEP_KERNEL_INFORMATION_STRUCT_V2 结构如何指定电源扩展插件 (PEP) 用来从 Windows 电源管理框架请求服务的接口 (PoFx) 。 |
PEP_KERNEL_INFORMATION_STRUCT_V3 了解 PEP_KERNEL_INFORMATION_STRUCT_V3 结构如何指定电源扩展插件 (PEP) 用于从 Windows 电源管理框架请求服务的接口 (PoFx) 。 |
PEP_KERNEL_INFORMATION_STRUCT_V3 PEP_KERNEL_INFORMATION_STRUCT_V3 结构指定电源扩展插件 (PEP) 用于从 Windows 电源管理框架请求服务的接口 (PoFx) 。 |
PEP_LOW_POWER_EPOCH 了解如何使用 PEP_LOW_POWER_EPOCH 结构为已弃用) (PEP_DPM_LOW_POWER_EPOCH通知提供数据。 |
PEP_LOW_POWER_EPOCH PEP_LOW_POWER_EPOCH 结构用于为已弃用) (PEP_DPM_LOW_POWER_EPOCH通知提供数据。 |
PEP_NOTIFY_COMPONENT_IDLE_STATE 了解PEP_NOTIFY_COMPONENT_IDLE_STATE结构如何包含有关组件挂起过渡到新 Fx 电源状态的状态信息。 |
PEP_NOTIFY_COMPONENT_IDLE_STATE PEP_NOTIFY_COMPONENT_IDLE_STATE结构包含有关组件挂起到新的 Fx 电源状态转换的状态信息。 |
PEP_PERF_STATE 了解PEP_PERF_STATE结构如何描述 P 状态集中的性能状态 (P 状态) ,其中 P 状态指定为一个或多个离散值的列表。 |
PEP_PERF_STATE PEP_PERF_STATE结构描述 P 状态集中的性能状态 (P 状态) ,其中 P 状态指定为一个或多个离散值的列表。 |
PEP_PLATFORM_IDLE_STATE 了解PEP_PLATFORM_IDLE_STATE结构如何指定平台空闲状态的属性。 |
PEP_PLATFORM_IDLE_STATE PEP_PLATFORM_IDLE_STATE 结构指定平台空闲状态的属性。 |
PEP_PLATFORM_IDLE_STATE_UPDATE 了解PEP_PLATFORM_IDLE_STATE_UPDATE结构如何包含平台空闲状态的更新属性。 |
PEP_PLATFORM_IDLE_STATE_UPDATE PEP_PLATFORM_IDLE_STATE_UPDATE 结构包含平台空闲状态的更新属性。 |
PEP_POWER_CONTROL_COMPLETE 了解PEP_POWER_CONTROL_COMPLETE结构如何包含 PEP 先前请求且设备驱动程序已完成的电源控制操作的状态信息。 |
PEP_POWER_CONTROL_COMPLETE PEP_POWER_CONTROL_COMPLETE 结构包含 PEP 先前请求且设备驱动程序已完成的电源控制操作的状态信息。 |
PEP_POWER_CONTROL_REQUEST 了解PEP_POWER_CONTROL_REQUEST结构如何包含来自驱动程序的电源控制操作请求。 |
PEP_POWER_CONTROL_REQUEST PEP_POWER_CONTROL_REQUEST结构包含驱动程序对电源控制操作的请求。 |
PEP_PPM_CONTEXT_QUERY_PARKING_PAGE 了解PEP_PPM_CONTEXT_QUERY_PARKING_PAGE结构如何描述处理器的停车页。 |
PEP_PPM_CONTEXT_QUERY_PARKING_PAGE PEP_PPM_CONTEXT_QUERY_PARKING_PAGE结构描述了处理器的停车页。 |
PEP_PPM_CST_STATE 了解 PEP_PPM_CST_STATE 结构如何指定 C 状态的属性 (ACPI 处理器电源状态) 。 |
PEP_PPM_CST_STATE PEP_PPM_CST_STATE 结构指定 C 状态 (ACPI 处理器电源状态) 的属性。 |
PEP_PPM_CST_STATES 了解 PEP_PPM_CST_STATES 结构如何指定处理器支持的 C 状态 (ACPI 处理器电源状态) 的属性。 |
PEP_PPM_CST_STATES PEP_PPM_CST_STATES 结构指定处理器支持的 C 状态 (ACPI 处理器电源状态) 的属性。 |
PEP_PPM_ENTER_SYSTEM_STATE 了解如何在PEP_NOTIFY_PPM_ENTER_SYSTEM_STATE通知中使用此方法来通知 PEP 系统即将进入系统电源状态。 . |
PEP_PPM_ENTER_SYSTEM_STATE 在PEP_NOTIFY_PPM_ENTER_SYSTEM_STATE通知中使用,以通知 PEP 系统即将进入系统电源状态。 . |
PEP_PPM_FEEDBACK_READ 了解PEP_PPM_FEEDBACK_READ结构如何包含从处理器性能反馈计数器读取的值。 |
PEP_PPM_FEEDBACK_READ PEP_PPM_FEEDBACK_READ 结构包含从处理器性能反馈计数器读取的值。 |
PEP_PPM_IDLE_CANCEL PEP_PPM_IDLE_CANCEL结构指示处理器无法进入以前选择的空闲状态的原因。 |
PEP_PPM_IDLE_COMPLETE 了解PEP_PPM_IDLE_COMPLETE结构如何描述处理器和硬件平台从中唤醒的空闲状态。 |
PEP_PPM_IDLE_COMPLETE PEP_PPM_IDLE_COMPLETE结构描述处理器和硬件平台从中唤醒的空闲状态。 |
PEP_PPM_IDLE_COMPLETE_V2 了解PEP_PPM_IDLE_COMPLETE_V2结构如何描述处理器和硬件平台从中唤醒的空闲状态。 |
PEP_PPM_IDLE_COMPLETE_V2 PEP_PPM_IDLE_COMPLETE_V2结构描述处理器和硬件平台从中唤醒的空闲状态。 |
PEP_PPM_IDLE_EXECUTE 了解PEP_PPM_IDLE_EXECUTE结构如何指定处理器要进入的空闲状态。 |
PEP_PPM_IDLE_EXECUTE PEP_PPM_IDLE_EXECUTE结构指定处理器要进入的空闲状态。 |
PEP_PPM_IDLE_EXECUTE_V2 了解PEP_PPM_IDLE_EXECUTE_V2结构如何指定处理器要进入的空闲状态。 |
PEP_PPM_IDLE_EXECUTE_V2 PEP_PPM_IDLE_EXECUTE_V2结构指定处理器要进入的空闲状态。 |
PEP_PPM_IDLE_SELECT PEP_PPM_IDLE_SELECT结构描述了处理器可以进入且仍满足操作系统指定的约束的最节能空闲状态。 |
PEP_PPM_INITIATE_WAKE 了解PEP_PPM_INITIATE_WAKE结构如何指示处理器是否需要中断才能从空闲状态唤醒。 |
PEP_PPM_INITIATE_WAKE PEP_PPM_INITIATE_WAKE结构指示处理器是否需要中断才能从空闲状态唤醒。 |
PEP_PPM_IS_PROCESSOR_HALTED 了解PEP_PPM_IS_PROCESSOR_HALTED结构如何指示处理器当前是否处于其所选空闲状态。 |
PEP_PPM_IS_PROCESSOR_HALTED PEP_PPM_IS_PROCESSOR_HALTED结构指示处理器当前是否处于其所选空闲状态。 |
PEP_PPM_LPI_COMPLETE 了解 PEP_PPM_LPI_COMPLETE 结构 (pep_x.h) 如何描述平台扩展插件 (PEP) 支持的特定处理器的所有处理器性能计数器。 |
PEP_PPM_PARK_MASK 了解PEP_PROCESSOR_PARK_MASK结构如何包含当前核心停车掩码。 |
PEP_PPM_PARK_MASK PEP_PROCESSOR_PARK_MASK结构包含当前核心停车掩码。 |
PEP_PPM_PARK_SELECTION 了解PEP_PPM_PARK_SELECTION结构如何指示操作系统和平台扩展插件的首选项, (PEP) 应将哪些处理器停在平台中以降低能耗。 |
PEP_PPM_PARK_SELECTION PEP_PPM_PARK_SELECTION结构指示操作系统和平台扩展插件 (PEP) 有关平台中哪些处理器应寄存以减少功耗的首选项。 |
PEP_PPM_PARK_SELECTION_V2 了解PEP_PPM_PARK_SELECTION_V2结构如何指示操作系统和平台扩展插件的首选项, (PEP) 应将哪些处理器停在平台中以减少功耗。 |
PEP_PPM_PARK_SELECTION_V2 PEP_PPM_PARK_SELECTION_V2结构指示操作系统和平台扩展插件的首选项, (PEP) 应将哪些处理器停在平台中以减少功耗。 |
PEP_PPM_PERF_CHECK_COMPLETE 了解如何使用PEP_PPM_PERF_CHECK_COMPLETE结构来通知 PEP 有关完成定期性能检查评估的详细信息。 |
PEP_PPM_PERF_CHECK_COMPLETE PEP_PPM_PERF_CHECK_COMPLETE结构用于通知 PEP 有关完成定期性能检查评估的详细信息。 |
PEP_PPM_PERF_CONSTRAINTS 了解PEP_PPM_PERF_CONSTRAINTS结构如何描述要应用于处理器的性能限制。 |
PEP_PPM_PERF_CONSTRAINTS PEP_PPM_PERF_CONSTRAINTS结构描述了要应用于处理器的性能限制。 |
PEP_PPM_PERF_SET 了解PEP_PPM_PERF_SET结构如何指定操作系统为处理器请求的新性能级别。 |
PEP_PPM_PERF_SET PEP_PPM_PERF_SET 结构指定操作系统为处理器请求的新性能级别。 |
PEP_PPM_PERF_SET_STATE 了解如何在运行时PEP_NOTIFY_PPM_PERF_SET通知中使用此方法来设置处理器的当前操作性能。 . |
PEP_PPM_PERF_SET_STATE 在运行时PEP_NOTIFY_PPM_PERF_SET通知中用于设置处理器的当前运行性能。 . |
PEP_PPM_PLATFORM_STATE_RESIDENCIES 了解PEP_PPM_PLATFORM_STATE_RESIDENCIES结构如何包含硬件平台支持的空闲状态的累积驻留时间和转换计数。 |
PEP_PPM_PLATFORM_STATE_RESIDENCIES PEP_PPM_PLATFORM_STATE_RESIDENCIES 结构包含硬件平台支持的空闲状态的累积驻留时间和转换计数。 |
PEP_PPM_PLATFORM_STATE_RESIDENCY 了解PEP_PPM_PLATFORM_STATE_RESIDENCY结构如何指定特定平台空闲状态的累积驻留时间和转换计数。 |
PEP_PPM_PLATFORM_STATE_RESIDENCY PEP_PPM_PLATFORM_STATE_RESIDENCY结构指定特定平台空闲状态的累计驻留时间和转换计数。 |
PEP_PPM_QUERY_CAPABILITIES 了解PEP_PPM_QUERY_CAPABILITIES结构如何包含有关平台扩展插件 (PEP) 的处理器电源管理 (PPM) 功能的信息。 |
PEP_PPM_QUERY_CAPABILITIES PEP_PPM_QUERY_CAPABILITIES结构包含有关平台扩展插件 (PEP) 的处理器电源管理 (PPM) 功能的信息。 |
PEP_PPM_QUERY_COORDINATED_DEPENDENCY 了解PEP_PPM_QUERY_COORDINATED_DEPENDENCY结构如何描述协调空闲状态的依赖项。 |
PEP_PPM_QUERY_COORDINATED_DEPENDENCY PEP_PPM_QUERY_COORDINATED_DEPENDENCY结构描述协调空闲状态的依赖项。 |
PEP_PPM_QUERY_COORDINATED_STATES 了解 PEP_PPM_QUERY_COORDINATED_STATES 结构如何包含平台扩展插件 (PEP) 支持的每个协调空闲状态的信息。 |
PEP_PPM_QUERY_COORDINATED_STATES PEP_PPM_QUERY_COORDINATED_STATES结构包含有关平台扩展插件 (PEP) 支持的每个协调空闲状态的信息。 |
PEP_PPM_QUERY_DISCRETE_PERF_STATES 如果PEP_NOTIFY_PPM_QUERY_CAPABILITIES通知指示支持离散性能状态,则了解如何在存储 PEP 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用此方法。 . |
PEP_PPM_QUERY_DISCRETE_PERF_STATES 在存储 PEP 支持的离散性能状态列表的PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用,前提是PEP_NOTIFY_PPM_QUERY_CAPABILITIES通知指示支持离散性能状态。 . |
PEP_PPM_QUERY_DOMAIN_INFO 了解如何在查询性能域相关信息的PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO通知中使用此方法。 . |
PEP_PPM_QUERY_DOMAIN_INFO 用于查询性能域相关信息的PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO通知中。 . |
PEP_PPM_QUERY_FEEDBACK_COUNTERS 了解PEP_PPM_QUERY_FEEDBACK_COUNTERS结构 (pep_x.h) 如何描述平台扩展插件 (PEP) 支持的特定处理器的所有处理器性能计数器。 |
PEP_PPM_QUERY_FEEDBACK_COUNTERS PEP_PPM_QUERY_FEEDBACK_COUNTERS结构描述了平台扩展插件 (PEP) 支持的特定处理器的所有处理器性能计数器。 |
PEP_PPM_QUERY_IDLE_STATES PEP_PPM_QUERY_IDLE_STATES结构描述特定处理器的空闲状态。 |
PEP_PPM_QUERY_IDLE_STATES_V2 了解如何在处理器初始化期间使用 PEP_PPM_QUERY_IDLE_STATES_V2 结构来查询平台扩展插件 (PEP) ,以获取处理器支持的处理器空闲状态列表。 |
PEP_PPM_QUERY_IDLE_STATES_V2 PEP_PPM_QUERY_IDLE_STATES_V2结构在处理器初始化期间用于查询平台扩展插件 (PEP) ,以获取处理器支持的处理器空闲状态列表。 |
PEP_PPM_QUERY_LP_SETTINGS PEP_PPM_QUERY_LP_SETTINGS结构包含注册表项的内核句柄,该注册表项包含平台扩展插件 (PEP) 为每个电源方案定义的电源优化设置。 |
PEP_PPM_QUERY_PERF_CAPABILITIES 了解PEP_PPM_QUERY_PERF_CAPABILITIES结构如何描述指定处理器性能域中处理器的性能功能。 |
PEP_PPM_QUERY_PERF_CAPABILITIES PEP_PPM_QUERY_PERF_CAPABILITIES结构描述指定处理器性能域中处理器的性能功能。 |
PEP_PPM_QUERY_PLATFORM_STATE 了解PEP_PPM_QUERY_PLATFORM_STATE结构如何包含有关平台空闲状态的信息。 |
PEP_PPM_QUERY_PLATFORM_STATE PEP_PPM_QUERY_PLATFORM_STATE结构包含有关平台空闲状态的信息。 |
PEP_PPM_QUERY_PLATFORM_STATES 了解PEP_PPM_QUERY_PLATFORM_STATES结构如何指定硬件平台支持的平台空闲状态数。 |
PEP_PPM_QUERY_PLATFORM_STATES PEP_PPM_QUERY_PLATFORM_STATES结构指定硬件平台支持的平台空闲状态数。 |
PEP_PPM_QUERY_STATE_NAME 了解PEP_PPM_QUERY_STATE_NAME结构如何包含有关特定协调状态或平台空闲状态的信息。 |
PEP_PPM_QUERY_STATE_NAME PEP_PPM_QUERY_STATE_NAME结构包含有关特定协调状态或平台空闲状态的信息。 |
PEP_PPM_QUERY_VETO_REASON 了解 PEP_PPM_QUERY_VETO_REASON 结构如何提供宽字符、以 null 结尾的字符串,该字符串包含出于否决原因而由人类可读的描述性名称。 |
PEP_PPM_QUERY_VETO_REASON PEP_PPM_QUERY_VETO_REASON 结构提供一个以 null 结尾的宽字符字符串,该字符串包含出于否决原因而由用户可读的描述性名称。 |
PEP_PPM_QUERY_VETO_REASONS 了解PEP_PPM_QUERY_VETO_REASONS结构如何指定 PEP 在调用 ProcessorIdleVeto 和 PlatformIdleVeto 例程时使用的否决理由总数。 |
PEP_PPM_QUERY_VETO_REASONS PEP_PPM_QUERY_VETO_REASONS结构指定 PEP 在调用 ProcessorIdleVeto 和 PlatformIdleVeto 例程时使用的否决理由总数。 |
PEP_PPM_RESUME_FROM_SYSTEM_STATE 了解PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE通知如何使用此方法,通知 PEP 系统刚刚从系统电源状态恢复。 |
PEP_PPM_RESUME_FROM_SYSTEM_STATE 由PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE通知使用,通知 PEP 系统刚刚从系统电源状态恢复。 |
PEP_PPM_TEST_IDLE_STATE 了解PEP_PPM_TEST_IDLE_STATE结构如何包含有关处理器是否可以立即进入处理器空闲状态的信息。 |
PEP_PPM_TEST_IDLE_STATE PEP_PPM_TEST_IDLE_STATE结构包含有关处理器是否可以立即进入处理器空闲状态的信息。 |
PEP_PREPARE_DEVICE 了解PEP_PREPARE_DEVICE结构如何标识必须启动的设备,以便操作系统使用该设备。 |
PEP_PREPARE_DEVICE PEP_PREPARE_DEVICE结构标识必须启动的设备,以便操作系统使用该设备。 |
PEP_PROCESSOR_FEEDBACK_COUNTER 了解PEP_PROCESSOR_FEEDBACK_COUNTER结构如何描述操作系统的反馈计数器。 |
PEP_PROCESSOR_FEEDBACK_COUNTER PEP_PROCESSOR_FEEDBACK_COUNTER结构描述操作系统的反馈计数器。 |
PEP_PROCESSOR_IDLE_CONSTRAINTS PEP_PROCESSOR_IDLE_CONSTRAINTS结构指定 PEP 用来选择处理器空闲状态的一组约束。 |
PEP_PROCESSOR_IDLE_DEPENDENCY 了解PEP_PROCESSOR_IDLE_DEPENDENCY结构如何指定平台空闲状态在指定处理器上的依赖关系。 |
PEP_PROCESSOR_IDLE_DEPENDENCY PEP_PROCESSOR_IDLE_DEPENDENCY结构指定平台空闲状态在指定处理器上的依赖关系。 |
PEP_PROCESSOR_IDLE_STATE PEP_PROCESSOR_IDLE_STATE结构描述处理器空闲状态的功能。 |
PEP_PROCESSOR_IDLE_STATE_UPDATE 了解PEP_PROCESSOR_IDLE_STATE_UPDATE结构如何包含处理器空闲状态的更新属性。 |
PEP_PROCESSOR_IDLE_STATE_UPDATE PEP_PROCESSOR_IDLE_STATE_UPDATE 结构包含处理器空闲状态的更新属性。 |
PEP_PROCESSOR_IDLE_STATE_V2 了解PEP_PROCESSOR_IDLE_STATE_V2结构如何描述平台扩展插件 (PEP) 支持的处理器空闲状态。 |
PEP_PROCESSOR_IDLE_STATE_V2 PEP_PROCESSOR_IDLE_STATE_V2结构描述平台扩展插件 (PEP) 支持的处理器空闲状态。 |
PEP_PROCESSOR_PARK_PREFERENCE 了解PEP_PROCESSOR_PARK_PREFERENCE结构如何指示操作系统和平台扩展插件的首选项, (PEP) 是否应寄存指定的处理器以减少功耗。 |
PEP_PROCESSOR_PARK_PREFERENCE PEP_PROCESSOR_PARK_PREFERENCE结构指示操作系统和平台扩展插件 (PEP) 是否应寄存指定的处理器以减少功耗的首选项。 |
PEP_PROCESSOR_PARK_STATE 了解PEP_PROCESSOR_PARK_STATE结构如何描述单个处理器的停车状态。 |
PEP_PROCESSOR_PARK_STATE PEP_PROCESSOR_PARK_STATE结构描述单个处理器的停车状态。 |
PEP_PROCESSOR_PERF_STATE 了解如何在PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用此方法。 此结构描述单个性能状态的属性。 . |
PEP_PROCESSOR_PERF_STATE 在PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES通知中使用 。 此结构描述单个性能状态的属性。 . |
PEP_QUERY_COMPONENT_PERF_CAPABILITIES 了解PEP_QUERY_COMPONENT_PERF_CAPABILITIES结构如何指定为组件定义的性能状态 (P 状态) 集的数目。 |
PEP_QUERY_COMPONENT_PERF_CAPABILITIES PEP_QUERY_COMPONENT_PERF_CAPABILITIES 结构指定为组件定义的性能状态 (P 状态) 集的数目。 |
PEP_QUERY_COMPONENT_PERF_SET 了解 PEP_QUERY_COMPONENT_PERF_SET 结构如何包含有关一组性能状态值的查询信息, (组件的 P 状态集) 。 |
PEP_QUERY_COMPONENT_PERF_SET PEP_QUERY_COMPONENT_PERF_SET 结构包含有关组件 (P 状态集) 的一组性能状态值的查询信息。 |
PEP_QUERY_COMPONENT_PERF_SET_NAME 了解PEP_QUERY_COMPONENT_PERF_SET_NAME结构如何包含有关一组性能状态值的查询信息, (组件的 P 状态集) 。 |
PEP_QUERY_COMPONENT_PERF_SET_NAME PEP_QUERY_COMPONENT_PERF_SET_NAME 结构包含有关一组性能状态值的查询信息, (组件的 P 状态集) 。 |
PEP_QUERY_COMPONENT_PERF_STATES 了解PEP_QUERY_COMPONENT_PERF_STATES结构如何包含指定 P 状态集的离散性能状态 (P 状态) 值的列表。 |
PEP_QUERY_COMPONENT_PERF_STATES PEP_QUERY_COMPONENT_PERF_STATES 结构包含指定 P 状态集的离散性能状态 (P 状态) 值的列表。 |
PEP_QUERY_CURRENT_COMPONENT_PERF_STATE 了解PEP_QUERY_CURRENT_COMPONENT_PERF_STATE结构如何包含有关指定 P 状态集中的当前 P 状态的信息。 |
PEP_QUERY_CURRENT_COMPONENT_PERF_STATE PEP_QUERY_CURRENT_COMPONENT_PERF_STATE 结构包含有关指定 P 状态集中的当前 P 状态的信息。 |
PEP_QUERY_SOC_SUBSYSTEM 了解PEP_DPM_QUERY_SOC_SUBSYSTEM通知如何使用PEP_QUERY_SOC_SUBSYSTEM结构来收集有关芯片上特定系统的基本信息 (SoC) 子系统。 |
PEP_QUERY_SOC_SUBSYSTEM PEP_DPM_QUERY_SOC_SUBSYSTEM通知使用PEP_QUERY_SOC_SUBSYSTEM结构来收集有关芯片 (SoC) 子系统上的特定系统的基本信息。 |
PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME PEP_DPM_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME通知使用PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME结构 (pep_x.h) 来收集有关芯片上特定系统的阻塞持续时间的详细信息, (SoC) 子系统。 |
PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME PEP_DPM_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME通知使用 pepfx.h) (PEP_QUERY_SOC_SUBSYSTEM_BLOCKING_TIME结构来收集有关芯片上特定系统的阻塞持续时间的详细信息, (SoC) 子系统。 |
PEP_QUERY_SOC_SUBSYSTEM_COUNT 了解如何使用PEP_QUERY_SOC_SUBSYSTEM_COUNT结构告知 OS PEP 是否支持芯片上的系统, (考虑给定平台空闲状态的 SoC) 子系统。 |
PEP_QUERY_SOC_SUBSYSTEM_COUNT PEP_QUERY_SOC_SUBSYSTEM_COUNT结构用于告知 OS PEP 是否支持芯片上的系统, (考虑给定平台空闲状态的 SoC) 子系统。 |
PEP_QUERY_SOC_SUBSYSTEM_METADATA 了解如何将PEP_QUERY_SOC_SUBSYSTEM_METADATA结构与PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知一起使用,以收集芯片上有关系统 (SoC) 子系统(其阻塞时间刚刚被查询)的可选元数据。 |
PEP_QUERY_SOC_SUBSYSTEM_METADATA PEP_QUERY_SOC_SUBSYSTEM_METADATA结构与PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知一起使用,以收集芯片 (SoC) 子系统(其阻塞时间刚刚被查询)上的系统的可选元数据。 |
PEP_REGISTER_COMPONENT_PERF_STATES 了解PEP_REGISTER_COMPONENT_PERF_STATES结构如何描述指定组件的性能状态 (P 状态) 。 |
PEP_REGISTER_COMPONENT_PERF_STATES PEP_REGISTER_COMPONENT_PERF_STATES结构描述指定组件的性能状态 (P 状态) 。 |
PEP_REGISTER_CRASHDUMP_DEVICE 了解PEP_REGISTER_CRASHDUMP_DEVICE结构如何提供回调例程来打开故障转储设备。 |
PEP_REGISTER_CRASHDUMP_DEVICE PEP_REGISTER_CRASHDUMP_DEVICE 结构提供用于打开故障转储设备的回调例程。 |
PEP_REGISTER_DEBUGGER 了解PEP_REGISTER_DEBUGGER结构如何标识已注册的设备,该设备是提供调试器传输的核心系统资源。 |
PEP_REGISTER_DEBUGGER PEP_REGISTER_DEBUGGER结构标识已注册的设备,该设备是提供调试器传输的核心系统资源。 |
PEP_REGISTER_DEVICE_V2 了解PEP_REGISTER_DEVICE_V2结构如何描述其驱动程序堆栈刚刚注册到 Windows 电源管理框架 (PoFx) 的设备。 |
PEP_REGISTER_DEVICE_V2 PEP_REGISTER_DEVICE_V2结构描述了其驱动程序堆栈刚刚注册到 Windows 电源管理框架 (PoFx) 的设备。 |
PEP_REQUEST_COMPONENT_PERF_STATE 了解PEP_REQUEST_COMPONENT_PERF_STATE结构如何包含 Windows 电源管理框架 (PoFx) 请求的性能状态 (P 状态) 更改的列表,以及有关平台扩展插件 (PEP) 处理这些请求的状态信息。 |
PEP_REQUEST_COMPONENT_PERF_STATE PEP_REQUEST_COMPONENT_PERF_STATE结构包含 Windows 电源管理框架 (PoFx) 请求的性能状态 (P 状态) 更改的列表,以及有关平台扩展插件 (PEP) 处理这些请求的状态信息。 |
PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING 了解如何将PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING结构作为PEP_DPM_RESET_SOC_SUBSYSTEM_ACCOUNTING通知的一部分提供给平台扩展插件 (PEP) 。 |
PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING PEP_RESET_SOC_SUBSYSTEM_ACCOUNTING结构作为PEP_DPM_RESET_SOC_SUBSYSTEM_ACCOUNTING通知的一部分提供给平台扩展插件 (PEP) 。 |
PEP_SOC_SUBSYSTEM_METADATA 了解PEP_SOC_SUBSYSTEM_METADATA结构如何包含键值对,这些键值对包含芯片上的系统元数据 (SoC) 子系统。 它用于发送到平台扩展插件 (PEP) 的PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知的上下文中。 |
PEP_SOC_SUBSYSTEM_METADATA PEP_SOC_SUBSYSTEM_METADATA 结构包含键值对,这些键值对包含芯片 (SoC) 子系统上的系统的元数据。 它用于发送到平台扩展插件 (PEP) 的PEP_DPM_QUERY_SOC_SUBSYSTEM_METADATA通知的上下文中。 |
PEP_SYSTEM_LATENCY 了解 PEP_SYSTEM_LATENCY 结构如何指定系统延迟容错的新值。 |
PEP_SYSTEM_LATENCY PEP_SYSTEM_LATENCY 结构指定系统延迟容差的新值。 |
PEP_UNMASKED_INTERRUPT_FLAGS 了解PEP_UNMASKED_INTERRUPT_FLAGS联合如何指示未屏蔽的中断源是主要中断还是辅助中断。 |
PEP_UNMASKED_INTERRUPT_FLAGS PEP_UNMASKED_INTERRUPT_FLAGS联合指示未屏蔽的中断源是主要中断还是辅助中断。 |
PEP_UNMASKED_INTERRUPT_INFORMATION 了解PEP_UNMASKED_INTERRUPT_INFORMATION结构如何包含有关中断源的信息。 |
PEP_UNMASKED_INTERRUPT_INFORMATION PEP_UNMASKED_INTERRUPT_INFORMATION结构包含有关中断源的信息。 |
PEP_UNREGISTER_DEVICE 了解PEP_UNREGISTER_DEVICE结构如何标识要从 Windows 电源管理框架中删除其注册 (PoFx) 的设备。 |
PEP_UNREGISTER_DEVICE PEP_UNREGISTER_DEVICE结构标识要从 Windows 电源管理框架中删除其注册 (PoFx) 的设备。 |
PEP_WORK 了解PEP_WORK结构如何指示 PEP 是否有要提交到 Windows 电源管理框架的工作请求 (PoFx) 。 |
PEP_WORK PEP_WORK结构指示 PEP 是否有要提交到 Windows 电源管理框架的工作请求 (PoFx) 。 |
PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE 了解PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE结构如何包含由平台扩展插件异步评估的 ACPI 控制方法的结果 (PEP) 。 |
PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE PEP_WORK_ACPI_EVALUATE_CONTROL_METHOD_COMPLETE 结构包含由平台扩展插件异步评估的 ACPI 控制方法的结果, (PEP) 。 |
PEP_WORK_ACPI_NOTIFY 了解PEP_WORK_ACPI_NOTIFY结构如何包含已生成硬件事件的设备的 ACPI 通知代码。 |
PEP_WORK_ACPI_NOTIFY PEP_WORK_ACPI_NOTIFY 结构包含已生成硬件事件的设备的 ACPI 通知代码。 |
PEP_WORK_ACTIVE_COMPLETE PEP_WORK_ACTIVE_COMPLETE 结构标识当前处于活动状态的组件。 |
PEP_WORK_COMPLETE_IDLE_STATE 了解 PEP_WORK_COMPLETE_IDLE_STATE 结构如何标识平台扩展插件 (PEP) 已准备好转换为新的 Fx 电源状态的组件。 |
PEP_WORK_COMPLETE_IDLE_STATE PEP_WORK_COMPLETE_IDLE_STATE结构标识平台扩展插件 (PEP) 准备过渡到新的 Fx 电源状态的组件。 |
PEP_WORK_COMPLETE_PERF_STATE 了解PEP_WORK_COMPLETE_PERF_STATE结构如何描述以前请求的更新的完成状态,以分配给性能状态 (P 状态) 集的性能值列表。 |
PEP_WORK_COMPLETE_PERF_STATE PEP_WORK_COMPLETE_PERF_STATE结构描述以前请求的更新的完成状态,该更新已分配给性能状态 (P 状态) 集的性能值列表。 |
PEP_WORK_DEVICE_IDLE PEP_WORK_DEVICE_IDLE结构指示是否忽略指定设备的空闲超时。 |
PEP_WORK_DEVICE_POWER PEP_WORK_DEVICE_POWER结构描述了指定设备的新电源要求。 |
PEP_WORK_IDLE_STATE PEP_WORK_IDLE_STATE结构包含将组件转换为 Fx 电源状态的请求。 |
PEP_WORK_INFORMATION 了解 PEP_WORK_INFORMATION 结构如何描述 PEP 提交到 Windows 电源管理框架的工作项 (PoFx) 。 |
PEP_WORK_INFORMATION PEP_WORK_INFORMATION结构描述了 PEP (PoFx) 提交到 Windows 电源管理框架的工作项。 |
PEP_WORK_POWER_CONTROL 了解PEP_WORK_POWER_CONTROL结构如何包含平台扩展插件 (PEP) 直接发送到处理器驱动程序的电源控制请求的参数。 |
PEP_WORK_POWER_CONTROL PEP_WORK_POWER_CONTROL结构包含平台扩展插件 (PEP) 直接发送到处理器驱动程序的电源控制请求的参数。 |
PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION PHYSICAL_COUNTER_EVENT_BUFFER_CONFIGURATION结构描述了平台上事件缓冲区的配置。 |
PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构描述了平台上可用的计数器资源。 |
PHYSICAL_COUNTER_RESOURCE_LIST PHYSICAL_COUNTER_RESOURCE_LIST 结构描述PHYSICAL_COUNTER_RESOURCE_DESCRIPTOR结构的数组。 |
PLUGPLAY_NOTIFICATION_HEADER PLUGPLAY_NOTIFICATION_HEADER结构包含在每个 PnP 通知结构的开头,例如DEVICE_INTERFACE_CHANGE_NOTIFICATION结构。 |
PNP_BUS_INFORMATION PNP_BUS_INFORMATION结构描述总线。 |
PNP_LOCATION_INTERFACE PNP_LOCATION_INTERFACE 结构描述GUID_PNP_LOCATION_INTERFACE接口。 |
PO_FX_COMPONENT_IDLE_STATE PO_FX_COMPONENT_IDLE_STATE结构指定设备中组件的 Fx 电源状态的属性。 |
PO_FX_COMPONENT_PERF_INFO PO_FX_COMPONENT_PERF_INFO结构描述了设备中单个组件的所有性能状态集。 |
PO_FX_COMPONENT_PERF_SET PO_FX_COMPONENT_PERF_SET结构表示设备中单个组件的性能状态集。 |
PO_FX_COMPONENT_V1 PO_FX_COMPONENT结构描述设备中组件的电源状态属性。 |
PO_FX_COMPONENT_V2 了解PO_FX_COMPONENT结构如何描述设备中组件的电源状态属性。 |
PO_FX_CORE_DEVICE 了解PO_FX_CORE_DEVICE结构如何包含有关核心系统资源中组件的电源状态属性的信息,并提供用于管理这些组件的电源的软件接口。 |
PO_FX_CORE_DEVICE PO_FX_CORE_DEVICE结构包含有关核心系统资源中组件的电源状态属性的信息,并提供用于管理这些组件的电源的软件接口。 |
PO_FX_DEVICE_V1 PO_FX_DEVICE结构将设备的电源属性描述到电源管理框架 (PoFx) 。 |
PO_FX_DEVICE_V2 了解 PO_FX_DEVICE 结构如何将设备的电源属性描述到电源管理框架 (PoFx) 。 |
PO_FX_DEVICE_V3 详细了解:PO_FX_DEVICE_V3 结构 |
PO_FX_PERF_STATE PO_FX_PERF_STATE结构表示设备中单个组件的性能状态。 |
PO_FX_PERF_STATE_CHANGE PO_FX_PERF_STATE_CHANGE 结构包含有关通过调用 PoFxIssueComponentPerfStateChange 或 PoFxIssueComponentPerfStateChangeMultiple 例程请求的性能状态更改的信息。 |
PO_SPR_ACTIVE_SESSION_DATA 允许驱动程序注册/注销 SPR 活动会话开始和结束通知。 |
POOL_CREATE_EXTENDED_PARAMS 定义POOL_CREATE_EXTENDED_PARAMS结构。 |
POOL_EXTENDED_PARAMETER 详细了解:POOL_EXTENDED_PARAMETER |
POOL_EXTENDED_PARAMS_SECURE_POOL 定义POOL_EXTENDED_PARAMS_SECURE_POOL结构。 |
POWER_PLATFORM_INFORMATION POWER_PLATFORM_INFORMATION结构包含有关系统电源功能的信息。 |
POWER_PLATFORM_INFORMATION 了解POWER_PLATFORM_INFORMATION结构如何包含有关系统电源功能的信息。 |
POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES 详细了解POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES |
POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES 详细了解:POWER_SESSION_ALLOW_EXTERNAL_DMA_DEVICES 结构 (wdm.h) |
POWER_STATE POWER_STATE联合指定系统电源状态值或设备电源状态值。 |
POWER_STATE 了解POWER_STATE联合如何指定系统电源状态值或设备电源状态值。 |
POWER_THROTTLING_PROCESS_STATE 存储限制策略,以及如何在目标进程受电源管理约束时将其应用于该进程。 |
POWER_THROTTLING_THREAD_STATE 存储限制策略,以及如何在受电源管理时将限制策略应用于目标线程。 |
PRIVILEGE_SET PRIVILEGE_SET 结构指定一组安全特权。 |
PROCESS_MEMBERSHIP_INFORMATION 本主题介绍PROCESS_MEMBERSHIP_INFORMATION结构。 |
PROCESS_MITIGATION_CHILD_PROCESS_POLICY 存储有关创建子进程的策略信息。 |
PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY 存储有关进程缓解策略的信息。 |
PROCESS_MITIGATION_SEHOP_POLICY 描述PROCESS_MITIGATION_SEHOP_POLICY结构。 |
PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY 不支持此结构。 |
PROCESS_MITIGATION_USER_POINTER_AUTH_POLICY 本主题介绍PROCESS_MITIGATION_USER_POINTER_AUTH_POLICY结构。 |
PROCESS_SYSCALL_PROVIDER_INFORMATION 描述PROCESS_SYSCALL_PROVIDER_INFORMATION结构。 |
PROCESSOR_NUMBER miniport.h (_PROCESSOR_NUMBER结构) 按组号和组相对处理器编号来标识处理器。 |
PS_CREATE_NOTIFY_INFO PS_CREATE_NOTIFY_INFO 结构提供有关新创建的进程的信息。 |
PTM_CONTROL_INTERFACE 保留给PTM_CONTROL_INTERFACE。 请勿使用。 |
REENUMERATE_SELF_INTERFACE_STANDARD REENUMERATE_SELF_INTERFACE_STANDARD 接口结构使驱动程序能够请求其父总线驱动程序恢复驱动程序的设备。 此结构定义 GUID_REENUMERATE_SELF_INTERFACE_STANDARD 接口。 |
REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION 结构包含驱动程序的 RegistryCallback 例程可用于释放驱动程序以前为与注册表对象关联的上下文分配的资源的信息。 |
REG_CREATE_KEY_INFORMATION 已过时,请改用 REG_CREATE_KEY_INFORMATION_V1。 REG_CREATE_KEY_INFORMATION结构包含驱动程序的 RegistryCallback 例程在创建注册表项时可以使用的信息。 |
REG_CREATE_KEY_INFORMATION_V1 REG_CREATE_KEY_INFORMATION_V1 结构包含筛选器驱动程序的 RegistryCallback 例程在创建注册表项时可以使用的信息。 |
REG_DELETE_KEY_INFORMATION REG_DELETE_KEY_INFORMATION 结构包含驱动程序的 RegistryCallback 例程在删除注册表项时可以使用的信息。 |
REG_DELETE_VALUE_KEY_INFORMATION REG_DELETE_VALUE_KEY_INFORMATION 结构包含驱动程序的 RegistryCallback 例程在删除注册表项的值时可以使用的信息。 |
REG_ENUMERATE_KEY_INFORMATION REG_ENUMERATE_KEY_INFORMATION 结构描述枚举其子项的项的一个子项。 |
REG_ENUMERATE_VALUE_KEY_INFORMATION REG_ENUMERATE_VALUE_KEY_INFORMATION 结构描述要枚举其值条目的键的一个值条目。 |
REG_KEY_HANDLE_CLOSE_INFORMATION REG_KEY_HANDLE_CLOSE_INFORMATION 结构包含有关其句柄即将关闭的注册表项的信息。 |
REG_LOAD_KEY_INFORMATION REG_LOAD_KEY_INFORMATION 结构包含有关正在加载的注册表配置单元的信息。 |
REG_LOAD_KEY_INFORMATION_V2 REG_LOAD_KEY_INFORMATION_V2 结构包含有关正在加载的注册表配置单元的信息。 |
REG_POST_CREATE_KEY_INFORMATION REG_POST_CREATE_KEY_INFORMATION 结构包含尝试创建注册表项的结果。 |
REG_POST_OPERATION_INFORMATION REG_POST_OPERATION_INFORMATION 结构包含有关 RegistryCallback 例程可以使用的已完成注册表操作的信息。 |
REG_PRE_CREATE_KEY_INFORMATION REG_PRE_OPEN_KEY_INFORMATION 结构包含即将打开的注册表项的名称。 |
REG_QUERY_KEY_INFORMATION REG_QUERY_KEY_INFORMATION结构描述要查询密钥的元数据。 |
REG_QUERY_KEY_NAME REG_QUERY_KEY_NAME 结构描述要查询的对象的完整注册表项名称。 |
REG_QUERY_KEY_SECURITY_INFORMATION REG_QUERY_KEY_SECURITY_INFORMATION 结构接收注册表项对象的安全信息。 |
REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION REG_QUERY_MULTIPLE_VALUE_KEY_INFORMATION 结构描述正在为键检索的多个值条目。 |
REG_QUERY_VALUE_KEY_INFORMATION REG_QUERY_VALUE_KEY_INFORMATION 结构包含有关正在查询的注册表项的值项的信息。 |
REG_RENAME_KEY_INFORMATION REG_RENAME_KEY_INFORMATION 结构包含即将更改其名称的注册表项的新名称。 |
REG_REPLACE_KEY_INFORMATION REG_REPLACE_KEY_INFORMATION 结构描述要为键替换的元数据。 |
REG_RESTORE_KEY_INFORMATION REG_RESTORE_KEY_INFORMATION 结构包含即将还原的注册表项的信息。 |
REG_SAVE_KEY_INFORMATION REG_SAVE_KEY_INFORMATION 结构包含即将保存的注册表项的信息。 |
REG_SAVE_MERGED_KEY_INFORMATION 定义REG_SAVE_MERGED_KEY_INFORMATION结构。 |
REG_SET_INFORMATION_KEY_INFORMATION REG_SET_INFORMATION_KEY_INFORMATION结构描述密钥元数据的新设置。 |
REG_SET_KEY_SECURITY_INFORMATION REG_SET_KEY_SECURITY_INFORMATION 结构指定注册表项对象的安全信息。 |
REG_SET_VALUE_KEY_INFORMATION REG_SET_VALUE_INFORMATION 结构描述注册表项的值条目的新设置。 |
REG_UNLOAD_KEY_INFORMATION REG_UNLOAD_KEY_INFORMATION 结构包含卸载注册表配置单元时驱动程序的 RegistryCallback 例程可以使用的信息。 |
RESOURCEMANAGER_BASIC_INFORMATION RESOURCEMANAGER_BASIC INFORMATION 结构包含有关资源管理器对象的信息。 |
RESOURCEMANAGER_COMPLETION_INFORMATION 不使用RESOURCEMANAGER_COMPLETION_INFORMATION结构。 |
SCATTER_GATHER_LIST SCATTER_GATHER_LIST 结构描述 DMA 操作的散点/收集列表。 |
SDEV_IDENTIFIER_INTERFACE 此占位符主题作为文档示例提供,可能包含在更高版本中。 此材料尚不可用。 |
SECTION_OBJECT_POINTERS 内存管理器和缓存管理器使用文件系统或重定向程序驱动程序分配的SECTION_OBJECT_POINTERS结构来存储文件流的文件映射和缓存相关信息。 |
SET_POWER_SETTING_VALUE 本主题介绍SET_POWER_SETTING_VALUE结构。 |
SIGNAL_REG_VALUE 本主题介绍SIGNAL_REG_VALUE结构。 |
SILO_MONITOR_REGISTRATION 此结构指定可以接收有关服务器 silo 事件的通知的服务器 silo 监视器。 |
SLIST_ENTRY SLIST_ENTRY结构描述按顺序排列的单独链接列表中的条目。 |
SYSENV_VALUE 使用 SysEnv 设备存储系统环境变量的值。 此结构用于IOCTL_SYSENV_GET_VARIABLE请求中。 |
SYSENV_VARIABLE 使用 SysEnv 设备存储系统环境变量的名称。 此结构用于IOCTL_SYSENV_GET_VARIABLE请求中。 |
SYSENV_VARIABLE_INFO 使用 SysEnv 设备存储有关系统环境变量的信息。 此结构用于IOCTL_SYSENV_QUERY_VARIABLE_INFO请求中。 |
SYSTEM_POOL_ZEROING_INFORMATION Microsoft 保留SYSTEM_POOL_ZEROING_INFORMATION结构仅供内部使用。 请勿在代码中使用此结构。 |
SYSTEM_POWER_STATE_CONTEXT SYSTEM_POWER_STATE_CONTEXT 结构是一种部分不透明的系统结构,其中包含有关计算机以前的系统电源状态的信息。 |
SYSTEM_POWER_STATE_CONTEXT 了解SYSTEM_POWER_STATE_CONTEXT结构是如何部分不透明的系统结构,其中包含有关计算机先前系统电源状态的信息。 |
TARGET_DEVICE_CUSTOM_NOTIFICATION TARGET_DEVICE_CUSTOM_NOTIFICATION 结构描述自定义设备事件。 |
TARGET_DEVICE_REMOVAL_NOTIFICATION TARGET_DEVICE_REMOVAL_NOTIFICATION 结构描述设备删除事件。 PnP 管理器将此结构发送到注册了用于通知 EventCategoryTargetDeviceChange 事件的回调例程的驱动程序。 |
TIME_FIELDS TIME_FIELDS 结构描述时间转换例程的时间信息。 |
TRANSACTION_BASIC_INFORMATION TRANSACTION_BASIC_INFORMATION 结构包含有关事务对象的信息。 |
TRANSACTION_ENLISTMENT_PAIR TRANSACTION_ENLISTMENT_PAIR 结构包含与事务对象关联的登记的相关信息。 |
TRANSACTION_ENLISTMENTS_INFORMATION TRANSACTION_ENLISTMENTS_INFORMATION 结构包含与事务对象关联的登记信息。 |
TRANSACTION_PROPERTIES_INFORMATION TRANSACTION_PROPERTIES_INFORMATION 结构包含事务对象的属性。 |
TRANSACTIONMANAGER_BASIC_INFORMATION TRANSACTIONMANAGER_BASIC_INFORMATION 结构包含有关事务管理器对象的信息。 |
TRANSACTIONMANAGER_LOG_INFORMATION TRANSACTIONMANAGER_LOG_INFORMATION 结构包含有关事务管理器对象的信息。 |
TRANSACTIONMANAGER_LOGPATH_INFORMATION TRANSACTIONMANAGER_LOGPATH_INFORMATION 结构包含有关事务管理器对象的信息。 |
TRANSACTIONMANAGER_RECOVERY_INFORMATION TRANSACTIONMANAGER_RECOVERY_INFORMATION 结构包含有关事务管理器对象的信息。 |
WAIT_CONTEXT_BLOCK 为WAIT_CONTEXT_BLOCK保留。 请勿使用。 |
WHEA_ACPI_HEADER 本主题介绍WHEA_ACPI_HEADER结构。 |
WHEA_ERROR_SOURCE_OVERRIDE_SETTINGS 本主题介绍WHEA_ERROR_SOURCE_OVERRIDE_SETTINGS结构。 |
WHEA_FAILED_ADD_DEFECT_LIST_EVENT 本主题介绍WHEA_FAILED_ADD_DEFECT_LIST_EVENT结构。 |
WHEA_PCI_RECOVERY_SECTION 描述WHEA_PCI_RECOVERY_SECTION结构。 |
WHEA_PSHED_PI_CPU_BUSES_INIT_FAILED_EVENT 本主题介绍WHEA_PSHED_PI_CPU_BUSES_INIT_FAILED_EVENT结构。 |
WHEA_PSHED_PLUGIN_INIT_FAILED_EVENT 本主题介绍WHEA_PSHED_PLUGIN_INIT_FAILED_EVENT结构。 |
WHEA_SEA_SECTION 本主题介绍WHEA_SEA_SECTION结构。 |
WHEA_SEI_SECTION 本主题介绍WHEA_SEI_SECTION结构。 |
WHEA_SRAS_TABLE_ENTRIES_EVENT 本主题介绍WHEA_SRAS_TABLE_ENTRIES_EVENT结构。 |
WHEA_SRAS_TABLE_ERROR 本主题介绍WHEA_SRAS_TABLE_ERROR结构。 |
WHEA_SRAS_TABLE_NOT_FOUND 本主题介绍WHEA_SRAS_TABLE_NOT_FOUND结构。 |
WHEAP_BAD_HEST_NOTIFY_DATA_EVENT 本主题介绍WHEAP_BAD_HEST_NOTIFY_DATA_EVENT结构。 |
WHEAP_DPC_ERROR_EVENT 本主题介绍WHEAP_DPC_ERROR_EVENT结构。 |
WHEAP_PLUGIN_DEFECT_LIST_CORRUPT 本主题介绍WHEAP_PLUGIN_DEFECT_LIST_CORRUPT结构。 |
WHEAP_PLUGIN_DEFECT_LIST_FULL_EVENT 本主题介绍WHEAP_PLUGIN_DEFECT_LIST_FULL_EVENT结构。 |
WHEAP_PLUGIN_DEFECT_LIST_UEFI_VAR_FAILED 本主题介绍WHEAP_PLUGIN_DEFECT_LIST_UEFI_VAR_FAILED结构。 |
WHEAP_ROW_FAILURE_EVENT 本主题介绍WHEAP_ROW_FAILURE_EVENT结构。 |
WMIGUIDREGINFO WMIGUIDREGINFO 结构包含由使用 WMI 库支持例程的驱动程序公开的给定数据块或事件块的注册信息。 |
WMILIB_CONTEXT WMILIB_CONTEXT 结构提供驱动程序的数据块和事件块的注册信息,并为驱动程序的 WMI 库回调例程定义入口点。 |
WMIREGGUIDW WMIREGGUID 结构包含数据块或事件块的新注册信息或更新的注册信息。 |
WMIREGINFOW WMIREGINFO 结构包含驱动程序提供的信息,用于注册或更新其数据块和事件块。 |
WNODE_ALL_DATA WNODE_ALL_DATA 结构包含数据块或事件块的所有实例的数据。 |
WNODE_EVENT_ITEM WNODE_EVENT_ITEM 结构包含由事件驱动程序生成的数据。 |
WNODE_EVENT_REFERENCE WNODE_EVENT_REFERENCE结构包含 WMI 可用于查询超出注册表中设置的事件大小限制的信息。 |
WNODE_HEADER WNODE_HEADER 结构是所有其他WNODE_XXX结构的第一个成员。 它包含所有此类结构通用的信息。 |
WNODE_METHOD_ITEM WNODE_METHOD_ITEM 结构指示与数据块实例关联的方法,并包含该方法的任何输入数据。 |
WNODE_SINGLE_INSTANCE WNODE_SINGLE_INSTANCE 结构包含数据块的一个实例中所有数据项的值。 |
WNODE_SINGLE_ITEM WNODE_SINGLE_ITEM 结构包含数据块实例中单个数据项的值。 |
WNODE_TOO_SMALL WNODE_TOO_SMALL结构指示从请求接收输出所需的缓冲区大小。 |
XSAVE_CET_U_FORMAT CET_U XSTATE 组件的格式。 |
XVARIABLE_NAME 使用 SysEnv 设备存储系统环境变量的名称。 此结构用于IOCTL_SYSENV_ENUM_VARIABLES请求。 |
XVARIABLE_NAME_AND_VALUE 使用 SysEnv 设备存储系统环境变量的名称和值。 此结构用于IOCTL_SYSENV_ENUM_VARIABLES和IOCTL_SYSENV_SET_VARIABLE请求。 |