段页式管理方式 - wolai 笔记

1.分段、分页

1.1分页

  • 优点:空间利用率高,无外部碎片,有少量内部碎片
  • 缺点:不方便按照逻辑模块实现信息的共享和保护

1.2分段

  • 优点:方面按照逻辑模块实现信息的共享和保护
  • 缺点:段长过大,分配连续空间不方便,会产生外部碎片
  • 外部碎片可以通过“紧凑”解决,付出较大的时间代价

2.分段+分页

  • 将地址空间按照程序自身的逻辑关系划分为若干段,在将各段分为大小相等的页面
  • 将内存空间划分为与页面大小相等的一个个内存块,系统以块为单位为进程分配内存
  • 逻辑地址结构:(段号,页号,页内偏移量)
  • 段号的位数决定了每个进程最多可以分成几个段
  • 页号决定了每个段最大有多少页
  • 页内偏移量决定了页面大小、内存块大小是多少
  • 段页式管理的地址空间是二维的

3.段表、页表

  • 每个段对应一个段表项。各段表项长度相同,由段号(隐含)、页表长度、页表存放地址组成
  • 每个页对应一个页表项。各页表项长度相同,由页号(隐含)、页面存放的内存块号组成

4.地址变换

  1. 由逻辑地址得到段号、页号、页内偏移量
  2. 段号与段表寄存器中的段长度比较,检查是否越界
  3. 由段表始址、段号找到对应段表项
  4. 根据段表中记录的页表长度,检查页号是否越界
  5. 由段表中的页表地址、页号得到查询页表,找到相应页表项
  6. 由页面存放的内存块号、页内偏移量得到最终的物理地址
  7. 访问目标单元

5.访问一个逻辑地址所需访存次数

  • 第一次:查段表;第二次:查页表;第三次:访问目标单元
  • 可引入快表机构,以段号和页号为关键字查询快表,即可直接找到最终的目标页面存放位置。引入快表后仅需一次访存

Comment