我正在参加加州大学伯克利分校关于虚拟记忆的一些讲座
@ https://www.youtube.com/results?search_query=computer+science+194+-+lecture+14
"计算机科学194-讲座13_内存管理_各种架构的机制,NUMA"和#34;计算机科学194 - 讲座14_虚拟内存管理,交换,页面缓存"
这是一场精彩的演讲。但是,我对某一点感到有些困惑。
讲座解释了如何组合分段和寻呼以解决VM问题。 它继续解释当前系统用作VM地址的结构。
它还提到进程可见的虚拟空间是私有的,每个进程的地址范围保持不变。每个进程查看其地址空间从0开始并延伸到4G。在这个4G空间内有不同的细分区域。
问题:
现在,如果每个VM空间的地址范围相同,那么两个进程如何引用最高级别的查找表 - PageTblPtr使用"段号"作为索引,唯一能够识别此表中的行...因为每个流程的段地址/编号可能相同...让我们说流程A和B都有从地址开始的数据段' x'在VM空间内。
这是否也意味着PagetblPtr中每个进程最多可以有6个条目 - 6个可能的段 - CS,DS,......等等?
PageTblPtr在哪里维护?
最诚挚的问候, VARUN
答案 0 :(得分:3)
我不打算观看83分钟的视频讲座,只是为了获得像PageTblPtr
这样的术语的确切定义,但我会尝试提供一些一般性答案: