段页式管理下的地址映射表组织🥰

在段页式管理中,每个进程的地址映射体系是这样组织的:


2. 地址映射表的组织结构与原因

2.1 为什么一个进程只有一张段表?

所以,一个进程 对应 一张段表,这是由“进程作为资源分配和独立调度的基本单位”这一根本原则决定的。

2.2 为什么每个段都有一张自己的页表?

这是段页式管理与单纯分页管理最核心的区别所在。

3. 地址映射过程

逻辑地址: (段号 S, 段内页号 P, 页内偏移 d)

  1. 查段表:

    • 用逻辑地址中的段号 S 去查询当前进程的段表

    • 首先检查 S 是否越界(小于段表长度)。

    • 从段表中找到第 S 个表项,从中取出该段对应的页表的基地址页表长度

  2. 查页表:

    • 用逻辑地址中的段内页号 P 去查询上一步找到的那个段的页表

    • 首先检查 P 是否越界(小于页表长度)。

    • 从该页表中找到第 P 个表项,从中取出该页对应的物理页帧号

  3. 形成物理地址:

    • 将上一步得到的物理页帧号与逻辑地址中的页内偏移 d 进行拼接,最终形成访问主存的物理地址。

总结