段页式管理

缝合怪!!!

分页、分段的对比

请添加图片描述

分段+分页=段页式管理
先将进程按逻辑模块分段,再将各段分页
段页式管理的逻辑地址结构
请添加图片描述

段号+页号+页内偏移量
段号的位数:决定了每个进程最多可以分为几个段。
页号的位数:决定了每个段最大有多少页。
页内偏移量:决定了页面的大小、内存块大小。
段页式管理的地址结构是二维的。

段表、页表

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

地址变换

在进程上处理及之前,会从PCB中拿出段表始址F和段表长度M放到段表寄存器中。

  1. 根据逻辑地址得到段号S、页号P、页内偏移量W。
  2. 对比段号和段表长度检查是否越界。
  3. 根据段号和段表始址、段表项长度计算出段表项的存放地址为F+S* 段表项长度。
  4. 检查页号是否越界。
  5. 根据页表存放块号、页号查询对应的页表项。
  6. 根据内存块号、页内偏移量拼接最终得到物理地址。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值