分页机制的问题

coolmousewife 2009-08-13 05:51:47
《80x86汇编语言程序设计教程》505页写到:
mov eax,cr0
or eax,80000000h
mov cr0,eax
jmp short pageE

pageE:
...
这儿为什么要加个jmp跳转指令呢?
书中相关叙述为: 在启用分页机制前,线性地址就是物理地址;在启用分页机制后,线性地址要通过分页机制的转换,才成为物理地址。尽管使用一条转移指令,可清除预取的指令,但随后在取指令时使用的线性地址就要经过转换才成为物理地址。为了保证顺利过渡,在启用分页机制之后的过渡阶段,仍要维持线性地址等同于物理地址。为了顺利做到这一点,在建立页映射表时,必须使实现过渡的代码所在的线性地址空间页映射到具有相同地址的物理地址空间页。
请各位大侠帮帮忙了!不胜感激!!
...全文
40 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
会思考的草 2009-08-15
不好意思,是失效
回复
会思考的草 2009-08-15
jmp指令会使之前已经预取入流水线的指令实效,排空流水线。这样就会使得指令再次预取,采用虚拟地址。
回复
coolmousewife 2009-08-14
up 来人啊!!!!
回复
coolmousewife 2009-08-13
自己up。。难道发错版了?
回复
发动态
发帖子
硬件/系统
创建于2007-09-28

2590

社区成员

VC/MFC 硬件/系统
申请成为版主
社区公告
暂无公告