操作系统 页式和段式存储管理地址变换

逻辑地址怎么变换成物理地址-段表和页表下面转换

首先介绍一下相关的概念:

  • 逻辑地址:
    1. 在计算机体系结构中是指应用程序角度看到的内存单元、存储单元、网络主机的地址,又叫相对地址。
    2. 是在网络层及以上使用的地址(ip地址就是其中一种)
    3. 逻辑地址=页号地址+页内地址
  • 物理地址:
    1. 是在存储器里以字节为单位存储信息,为正确地存放或取得信息,每一个字节单元给以一个唯一的存储器地址,
    2. 又叫mac地址或硬件地址。是在数据链路层和物理层使用的地址
    3. 物理地址=块号地址+块内地址=块号地址+页内地址
    4. 块号地址=块号∗块大小    

所以说,逻辑地址和物理地址相互转换的本质是——块号地址和页号地址的相互转换

例1:

已知某个分页系统,页面大小为1K(即1024字节),某一个作业有4个页面,分别装入到主存的第3、4、6、8块中,求逻辑地址2100对应的物理地址。

解:

  • 第一步:求该逻辑地址的页号 = 2100/1024=2 (整除)
  • 第二步:求它的页内偏移量 = 2100 % 1024 =52 (取余)
  • 第三步:根据题目产生页表:

页号    页框号/帧号

0           3

1           4

2           6

3           8

  • 第四步:根据逻辑地址的页号查出物理地址的页框号/帧号:

如上表所示,逻辑地址的第2页对应物理地址的第6块。

  • 第五步:求出物理地址 = 6*1024 + 52 = 6196

假如要上难度,那就是十六进制逻辑地址转物理地址:

例2:

一分页存储管理系统中逻辑地址长度为16位,页面大小为4KB字节,现有一逻辑地址为2F6AH,且第0、1、2页依次存放在物理块5、10、11中。求逻辑地址2F6AH对应的物理地址

解:

  • 第一步:将逻辑地址2F6AH转换为二进制为:0010 1111 0110 1010 (只变前面四个啊,最后一个H,变不了,也不需要变)
  • 第二步:由于页面大小为4KB字节,(4KB=2的12次方)。所以逻辑地址的后12位为“页内地址”
  • 第三步:由于逻辑地址的后12位为页内地址,所以剩下的前4位为页号:即0010为页号
  • 第三步:根据页表可知,

页号    页框号/帧号

0           5

1           10

2           11

0010(十进制为2)对于的页框号(块)为11(二进制为1011)

所以最终的物理地址为:1011 1111 0110 1010

即BF6AH

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值