IDebugDataSpaces2::ReadProcessorSystemData 方法 (dbgeng.h)

ReadProcessorSystemData 方法返回有关指定处理器的数据。

语法

HRESULT ReadProcessorSystemData(
  [in]            ULONG  Processor,
  [in]            ULONG  Index,
  [out]           PVOID  Buffer,
  [in]            ULONG  BufferSize,
  [out, optional] PULONG DataSize
);

参数

[in] Processor

指定要读取其数据的处理器。

[in] Index

指定要读取的数据类型。 下表包含有效值。 成功完成后, 缓冲区缓冲区 中返回的数据具有中间列指定的类型。

说明
DEBUG_DATA_KPCR_OFFSET 返回处理器的处理器控制区域的虚拟地址 (PCR) 。

在这种情况下,可以将 Buffer 参数视为类型PULONG64。

DEBUG_DATA_KPRCB_OFFSET 返回处理器的处理器控制块 (PRCB) 的虚拟地址。

在这种情况下,可以将 Buffer 参数视为类型PULONG64。

DEBUG_DATA_KTHREAD_OFFSET 返回处理器上运行的系统线程的 KTHREAD 结构的虚拟地址。

在这种情况下,可以将 Buffer 参数视为类型PULONG64。

DEBUG_DATA_BASE_TRANSLATION_VIRTUAL_OFFSET 返回操作系统或处理器拥有的分页信息基的虚拟地址。 地址和地址上的内容与处理器和操作系统相关。

在这种情况下,可以将 Buffer 参数视为类型PULONG64。

DEBUG_DATA_PROCESSOR_IDENTIFICATION 返回处理器的说明。

在这种情况下,可以将 Buffer 参数视为类型PDEBUG_PROCESSOR_IDENTIFICATION_ALL 。

DEBUG_DATA_PROCESSOR_SPEED 返回处理器的速度(以 MHz 为单位)。 这可能在特定会话中不起作用。

在这种情况下,可以将 Buffer 参数视为具有 PULONG 类型。

[out] Buffer

接收处理器数据。 成功完成 方法后,可以通过将 Buffer 强制转换为上表中指定的类型来访问此 缓冲区 的内容。

[in] BufferSize

指定缓冲区 缓冲区的大小(以字节为单位)。 这是将返回的最大字节数。

[out, optional] DataSize

接收数据的大小(以字节为单位)。 如果 DataSizeNULL,则不会返回此信息。

返回值

返回代码 说明
S_OK
方法成功。
 

此方法还可以返回错误值。 有关更多详细信息 ,请参阅返回值

注解

此方法仅在内核模式调试中可用。

有关 PCR、PRCB 和 KTHREAD 结构的信息,以及有关分页表的信息,请参阅 Microsoft Windows Internals by David Solomon 和 Mark Russinovich。

要求

要求
目标平台 桌面
标头 dbgeng.h (包括 Dbgeng.h)