IDebugDataSpaces3::GetVirtualTranslationPhysicalOffsets 方法 (dbgeng.h)
GetVirtualTranslationPhysicalOffsets 方法返回分页层次结构不同级别的系统分页结构的物理地址。
语法
HRESULT GetVirtualTranslationPhysicalOffsets(
[in] ULONG64 Virtual,
[out, optional] PULONG64 Offsets,
[in] ULONG OffsetsSize,
[out, optional] PULONG Levels
);
参数
[in] Virtual
指定要转换的目标虚拟地址空间中的位置。
[out, optional] Offsets
接收系统分页结构的物理地址。 如果设置为 NULL,则不会返回此信息。
[in] OffsetsSize
指定数组 Offsets 保留的元素数。 这是将返回的最大地址数。
[out, optional] Levels
接收指定地址的分页层次结构中的级别数。 如果为 NULL,则不返回此信息。
返回值
此方法还可以返回错误值。 有关更多详细信息 ,请参阅返回值 。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
找不到包含指定地址的物理页。 |
注解
此方法仅在内核模式调试中可用。
将虚拟地址转换为物理地址需要 Windows 走下分页层次结构。 在每个级别,它从物理内存中读取分页信息。 此方法返回这些物理页的偏移量。 对于不同的地址,分页层次结构中的级别数可能不同。
层次结构最后一个级别的地址是对应于指定虚拟地址的物理地址。 这是 VirtualToPhysical 将返回的内容。
有关如何将虚拟地址转换为物理地址的详细信息,请参阅 David Solomon 和 Mark Russinovich 的 Microsoft Windows Internals 。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | dbgeng.h (包括 Dbgeng.h) |