archim
驱动牛犊
驱动牛犊
  • 注册日期2001-08-18
  • 最后登录2006-03-17
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:902回复:0

线性地址是如何切换的??

楼主#
更多 发布于:2002-01-18 09:42
请看下面一个程序片断:
VirtualProtect(
(PVOID)virtual_address,
0x200,
PAGE_READWRITE,
&OldProtect
);
*(PUSHORT)virtual_address= \'zm\';

在执行了VirtualProtect之后我用sofice的page指令查看virtual_address所指向的虚地址,结果为
physical address = 03916000 attributes = P A U R

在执行了*(PUSHORT)virtual_address= \'zm\';之后在用page查看virtual_address所指向的虚地址,结果为
physical address = 01CF6000 attributes = P D A U RW

虚地址竟然在执行赋值语句的时候发生了切换。请问这在硬件(或者其它方面)是怎样实现的??

SOS!!!

archim
游客

返回顶部