段页式存储管理+例题

1.地址转换过程

访问3次内存,第一次是段表,第二次是页表,第三次是真正物理内存

在段页式系统中,为了便于实现地址变换,须配置个段表寄存器, 其中存放段表始址和段长TL。进行地址变换时,

  1. 首先利用段号s,将它与段长TL进行比较。若S<TL,表示未越界,
  2. 于是利用段表始址和段号来求出该段所对应的段表项在段表中的位置,从中得到该段的页表始址,
  3. 并利用逻辑地址中的段内页号P来获得对应页的页表项位置,如果页号P小于页表长度,表示未越界。
  4. 从中读出该页所在的物理块号b,再利用块号b和页内地址来构成物理地址。

2.例题

在一个采用段页式存储管理的系统中,页的大小为1KB。某个正在执行的作业情况如下:
在这里插入图片描述
(1)将逻辑地址(2,3500)转换成物理地址

解析过程:

  1. 逻辑地址中的段号 2 跟段表控制寄存器中的段表长 3 进行比较,由于 2<3 ,故段号没有越界;
  2. 根据段表控制寄存器中的段表起始地址加上段号 2 ,找到段表中对应于第 2 段的段表项,从而得到第 2 段的页表长度和页表起始地址;
  3. 根据段内偏移 3500 得到段内页号为 3 ,页内偏移为 428;
  4. 把段内页号 3 和段表项中的页表长度 5 进行比较,得知页号没越界;
  5. 页表起始地址加上页号得到对应的页表项,从而得到第 2 段的第 3 页的物理块号 30;
  6. 物理块号 30 和块内偏移 428 拼接成物理地址 31148;
  7. 逻辑地址 (2,3500) 对应的物理地址为十进制数 31148 ,十六进制 79AC 。
  • 13
    点赞
  • 93
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Devour123

愿每一份用功都可以得到回报

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值