2006级操作系统期末试卷B卷及答案(6)
时间:2026-01-20
时间:2026-01-20
行顺序,写出执行过程。(10分)
答:这4个作业的执行顺序是1,3,4,2
3. 某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
则逻辑地址0A5C(H)写出主要计算过程。(10分)
答:
125C(H) (要求写出计算步骤)
[分析]页式存储管理的逻辑地址分为两部分:页号和页内地址。
由已知条件“用户编程空间共32个页面”,可知页号部分占5位;由“每页为1KB”,1K=210,可知内页地址占10位。由“内存为16KB”,可知有16块,块号为4位。
逻辑地址0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码 “000 10” 为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:(1000H)212 ,拼接块内地址25C,得01 0010 0101 1100,即125C(H)。
4.简述设备驱动程序的处理过程?(10分)
答:
参考课本183面。
5. 有一个计算机系统利用下图所示的位示图(行号、列号都从0 开始编号)来管理空闲盘块。如果盘块从1开始编号,每个盘块的大小为1KB。
(1)现要从文件分配两盘块,试具体说明分配过程。(6分)
(2)若要释放磁盘的第150块,应如何处理?(4分)
(注:以上的换算需要有计算过程)
解:
(1)为某文件分配两个盘块的过程如下:
① 顺序检索位示图,从中找到第一个值为0的二进制位,得到其行号i1=2,列号j1=2;第二个值为0的二进制位,得到其行号i2=3,列号j2=6。 (2分) ②计算出找到的两个空闲块的盘块号分别为:
b1=i1×16+j1+1=2×16+2+1=35
b2=i2×16+j2+1=3×16+6+1=55 (2分) ③修改位示图,令map[2,2]=map[3,6]=1,并将对应块35、55分配出去。 (2分)
(2)释放磁盘的第300块时,应进行如下处理:
①计算出磁盘第300块所对应的二进制位的行号i和列号j:
i=(150-1)/16=9, j=(150-1)%16=5 (2分)