KD or Windbg will break early in the boot process when started with the -b
or -d options and boot debugging is enabled on the target OS. But I don’t
appear to be able to display any physical memory locations:
Please provide pool address to dump pool. Pool busy/free list not supported
for Vista.
kd> db /p 1000
00001000 ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ?? ???
00001010 ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ?? ???
00001020 ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ?? ???
kd> !db 1000
Physical memory read at 1000 failed
If you know the caching attributes used for the memory,
I suppose that this is because the debugger is relying on the OS memory
manager to map and read the physical memory location, which hasn’t been
initialized yet. Is that correct? Is there some other way to display
physical addresses using Windbg? Or am I going to have to find an unused
PTE and map the physical address myself (using the debugger)? Any
suggestions would be appreciated.
I don’t believe that that address is displayable later on either, by
default, at least.
mm
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of George M. Garner Jr.
Sent: Monday, January 10, 2011 11:33 AM
To: Kernel Debugging Interest List
Subject: [windbg] Displaying memory by physical address early in the boot
process.
KD or Windbg will break early in the boot process when started with the -b
or -d options and boot debugging is enabled on the target OS. But I don’t
appear to be able to display any physical memory locations:
Please provide pool address to dump pool. Pool busy/free list not supported
for Vista.
kd> db /p 1000
00001000 ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ?? ???
00001010 ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ?? ???
00001020 ?? ?? ?? ?? ?? ?? ?? ??-?? ?? ?? ?? ?? ?? ?? ?? ???
kd> !db 1000
Physical memory read at 1000 failed
If you know the caching attributes used for the memory,
I suppose that this is because the debugger is relying on the OS memory
manager to map and read the physical memory location, which hasn’t been
initialized yet. Is that correct? Is there some other way to display
physical addresses using Windbg? Or am I going to have to find an unused
PTE and map the physical address myself (using the debugger)? Any
suggestions would be appreciated.