分页存储管理
1. 有一系统采用页式存储管理,有一作业大小是8KB,页大小为2KB,依次装入内存的第7、9、A、5块,试将虚地址0AFEH转换成内存地址。如果虚地址为3412D呢?
(1)虚地址为0AFEH时:由题目可以先画出页表:
页号 | 块号 |
0 | 7 |
1 | 9 |
2 | A |
3 | 5 |
虚拟地址0AFEH为十六进制数,化为二进制数为:101011111110
页面大小为2KB,所以页内地址占11位,因此可以将二进制地址表示成分页地址结构形式:
页号 | 页内地址 |
1 | 01011111110 |
再对照页表将页号转换为块号,所以有二进制表示的内存地址为:
块号 | 块内地址 |
1001 | 01011111110 |
结果转化为十六进制:100101011111110---->4AFEH
(2)虚地址为3412D时:十进制求页号:p=(int)3412/2048=1; 页内偏移量:d=mod(3412,2048)=1364
再参照页表页号换为块号,每块大小为2KB,所以内存地址为:9*2048+1364=19796D
2. 如果分页存储方式里增加一个快表,访问快表的时间为t1,访问内存的时间为t2,其中在快表里页号的概率为p,则求有效访问时间是多少?
访问时间分为两部分:
第一部分:在快表里找到页号,则它的时间为:p(t1+t2)
第二部分:在快表里没找到,还要继续在内存的页表里找,这部分所用时间为:(1-p)(t1+2*t2)
有效访问时间为:t=p(t1+t2)+(1-p)(t1+2*t2)
分段存储管理
1.如以下段表所示,请将逻辑地址(0,137),(1,4000),(2,3600),(5,230)转换成物理地址
段号 | 内存始址 | 段长 |
0 | 50K | 10k |
1 | 60K | 3K |
2 | 70K | 5K |
3 | 120K | 8K |
4 | 150K | 4K |
(0,137):0<=4,137<=10k,所以物理地址为:50*1024+137=51337
(1,4000):1<=4,但4000>3k,越界中断
(2,3600):2<=4,3600<=5k,所以物理地址为:70*1024+3600=75280
(5,230):因为5>4,越界中断