户外活动策划案范本:页式存储管理解析
来源:百度文库 编辑:中财网 时间:2024/05/08 13:08:56
页式存储管理是把主存储器分成大小相等的许多区,每个区称为一块,与此对应,编制程序的逻辑地址也分成页,页的大小与块的大小相等。
(1)、地址转换:绝对地址 = 块号 * 块长 + 块内地址
(2)、计算块号公式:块号 = 字号 * 字长 + 位号
例题:
(1)、某页式存储管理系统中,地址寄存器长度为24位,其中页号占14位,则主存的分块大小是210字节。
(2)、采用页式管理方式,把主存分成大小为128字节的相等长度的块。有一个用户把一个128*128的数组置成初值“0”,在分页时把数组中的元素每一行放在一页中。假定分给用户可用来存放数组信息的工作区只有一块(即只能存放数组中的一行元素)。用户编制了两种实现数组的初始化的程序如下:
a)、var A:array[1..128] of array[1..128] of integer;
for i := 1 to 128
do for j := 1 to 128
do A[i][j] := 0;
b)、var A:array[1..128] of array[1..128] of integer;
for j := 1 to 128
do for i := 1 to 128
do A[i][j] := 0;
试计算分别运行这两个程序时,在实现数组初始化的过程中两种方式各会产生多少次缺页中断?
分析:a)、第一行不是缺页中断装入:127次缺页
第一次是缺页中断装入:128次缺页
b)、第一行第一列元素不是缺页中断装入:(128*128 -1)次缺页
第一行第一列元素是缺页中断装入:(128*128)次缺页
(3)、某系统采用页式存储器管理策略,拥有逻辑空间32页,每页2KB,拥有物理空间1MB.
a)、写出逻辑地址的格式
该系统得逻辑空间为32页,即25页,故逻辑地址中页号必须用5位来描述,而每页2KB,因此页内地址必须用11位来表示。这样可以得到它的逻辑地址格式
b)、若不考虑访问权限等,进程的页表有多少项?每页至少有多少位?
每个进程最多有32个页面,因此进程的页表项最多为32项,若不考虑,访问权限等,则页表项中只需给出页所对应的物理块块号,1MB的物理空间可分为29内存块,故每个页表项至少有9位。
c)、若物理空间减少一半,页表结构应相应做怎样的改变?
如果物理空间减少一半,则页表中页表项数不变,每项长度减少一位
(4)、假定某页式管理系统,主存为64kb,分成16块,块号为0,1,2,3…15. 设某作业有4页,其页号为0,1,2,3,被分别装入主存的2,4,1,6块,试问:
a)、该作业的总长度是多少字节?
分析:逻辑空间分成页,物理空间分成块,页 = 块
每块的长度 =64/16 = 4kB = 每页的长度
作业有4页,故作业的总字节数 = 4*4 = 16 KB = 240字节
b)、写出该作业每一页在主存中的起始地址
因为页号为0,1,2,3,装入主存的2,4,1,6块,则:
页号
块号
起始地址
0
2
8kB
1
4
16KB
2
1
4KB
3
6
24KB
c)、若给出逻辑地址[0,100]、[1,50]、[2,0]、[3,60], 请计算出相应的内存地址
逻辑地址[0,100]的内存地址:4K * 2 + 100 = 4 * 1024 * 2 + 100 = 8296
逻辑地址[1,50]的内存地址:16K + 50 = 16384 + 50 = 16434
逻辑地址[2,0]的内存地址:4096
逻辑地址[3,60]的内存地址:24636