windows XP驱动开发的问题
windows XP驱动开发的问题在做windows XP驱动开发中,需要获取一个寄存器的值,这个寄存器的物理地址是0xFEE00000,是APIC
的一个寄存器,怎么才能取到值?
如果直接用
__asm(
MOV ESI, 0xFEE00000;
MOV EAX, [ESI];
)
这样的话,会蓝屏,求帮助~ windows 驱动开发
[解决办法]
要先把物理地址(physical address) 映射到虚拟地址(virtual address) 之后,才能访问。
[解决办法]
在前一章中已经知道,pc中将该芯片的寄存器映射到了物理地址的0xFEE00000H处。而按照Microsoft Windows Internals[5]中的描述,该地址在windows中被映射到了虚拟地址:0xFFFFD000H处
摘自看雪安全论坛
[解决办法]
用MmMapIoSpace