超大规模并行机原理:分页与分段分页技术解析
1. 分页系统概述
分页是解决内存碎片化问题的一种有效方式。通过将虚拟地址空间(VAS)划分为固定大小的页面,每个页面可以独立地映射到物理内存中的页框(PF)。分页系统可以采用一级、二级或三级分页来实现不同的单段模型。
在一级分页系统中,虚拟地址(VA)是一个有序对 (P, D),其中 P 是页号,D 是页内偏移。假设 32 位的 VA 被划分为 12 位的 P 和 20 位的 D,那么 VAS 为 4GB,包含 4K 个页面,每个页面大小为 1MB。每个 P 选择一个包含页面描述符的 RA 寄存器,物理基地址是 PF 或页框号(PFN)。
映射过程如下:
VA = (P, D)
PA = (PF, D) = PF " D
这里,PF 与 D 连接形成物理地址(PA),无需进行加法运算。
2. 一级分页系统的详细解析
- 页面布局 :在 VAS 中,页面是顺序排列的,但在物理地址空间(PAS)中,页面可能分散在内存各处。由于页面大小固定,可能会出现指令或数据跨页的情况。
- RA 寄存器实现 :4K 个 RA 寄存器可以通过硬件实现,但软件实现更佳。软件实现使用页表(PT),其中包含页面描述符。硬件页表基址寄存器(PTBR)指向页表,通过 P 和 PTBR 中的地址可以检索页表项中的 PF。
- 状态寄存器的影响
超级会员免费看
订阅专栏 解锁全文
41

被折叠的 条评论
为什么被折叠?



