在存储管理中分为连续存储和非连续存储,非连续存储又分为分页存储、分段存储和段页式存储。
分页存储逻辑地址转物理地址:
例如:
已知某个分页系统,页面大小为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
举例:
例子1.
在一个页式存储管理系统中,页表内容如下所示:
页号 块号 |
0 2 1 1 2 6 3 3 4 7 |
若页的大小为4K,则地址转换机构将逻辑地址0K转换成的物理地址为 A
A、8192 B、4096 C、2048 D、1024
解:
0/4096商为0 此为页号
0 MOD 4096=
0余数 此为页内地址
上表 0号页对应2号块
所以物理地址 2*4K+0=2*4*1024=8192
例子2.
若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为1024字节,试将逻辑地址4000、5012转化为相应的物理地址:
页号 | 块号 |
0 | 2 |
1 | 3 |
2 | 1 |
3 | 6 |
十六进制逻辑地址
(1)A=4000,P=4000/1024=3
W=4000%1024=928
物理地址为:6*1024+928=7072
(2)5012/1024=4……916 对应第4页,页内位移量为916,该作业总共包括4页,所以发生越界中断。
转物理地址
例如:
一分页存储管理系统中逻辑地址长度为16位,页面大小为4KB字节,现有一逻辑地址为2F6AH,且第0、1、2页依次存放在物理块5、10、11中。求逻辑地址2F6AH对应的物理地址
解:
第一步:将逻辑地址2F6AH转换为二进制为:0010 1111 0110 1010
第二步:由于页面大小为4KB字节,(4KB=2的12次方)。所以逻辑地址的后12位为“页内地址”(也叫做页内偏移量)
第三步:由于逻辑地址的后12位为页内地址,所以剩下的前4位为页号:即0010为页号
第三步:根据页表可知,0010(十进制为2)对于的页框号(块)为11(二进制为1011)
所以最终的物理地址为:1011 1111 0110 1010
即BF6AH