首页
社区
课程
招聘
[旧帖] [讨论] 虚拟内存管理问题 0.00雪花
发表于: 2009-5-17 00:37 3030

[旧帖] [讨论] 虚拟内存管理问题 0.00雪花

2009-5-17 00:37
3030
请教,虚拟内存管理问题,虚拟内存到物理的映射关系,这个关系是怎样的?是一个函数?还是不确定的,由操作系统管理的,如果是这样,又是如何管理的呢?  
我这有个问题,虚拟页vp(a)映射到物理页pp(a),然后随着程序的运行,vp(b
)要求被映射,而此时物理页不足,操作系统讲vp(a)换出,再讲对应的物理页(此时为pp(a))映射至vp(b),我就有个疑问了,虚拟地址到物理地址不是通过 cr3 + 虚拟地址 通过分级索引映射的么?(页目录项+页表项+页内偏移),那应该一个虚拟页唯一映射一个物理页才对,这样的话,不是成了多个虚拟页(vpa vpb) 映射到同一个物理页的了??这怎么可能呢??   请大家指教.点解 谢先

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
我说一下个人理解,映射关系随内存使用情况变化,当然不是确定的函数。
你说的那个问题,一般虚拟地址空间比物理空间大,当然可能会有多个虚拟页对应同一个物理页地址的情况,但是同一时刻却只有一个虚拟页(或者严格点说是有效地虚拟页)映射到一个物理页,比如你说的当vp(b)使用pp(a)的时候,vp(a)的映射的pte将标记为无效。
2009-5-17 10:20
0
雪    币: 507
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
我知道啊,在不同进程中,因为CR3不同,所以可能映射到一样的物理页,可是同一进程内呢?
2009-5-17 14:07
0
雪    币: 254
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
为什么不能多个VP对应一个PP?要不怎么实现共享内存??
2009-5-17 14:41
0
游客
登录 | 注册 方可回帖
返回
//