2009 年研究生全国统考计算机试题——操作系统部分试题解析
一、单项选择题
23. 单处理机系统中,可并行的是_____。
Ⅰ.进程与进程 Ⅱ.处理机与设备 Ⅲ.处理机与通道 Ⅳ.设备与设备
A.Ⅰ、Ⅱ和Ⅲ B.Ⅰ、Ⅱ和Ⅳ
C.Ⅰ、Ⅲ和Ⅳ D.Ⅱ、Ⅲ和Ⅳ
答案:D。
24. 下列进程调度算法中, 综合考虑进程等待时间和执行时间的是______。
A.时间片轮转调度算法 B.短进程优先调度算法
C.先来先服务调度算法 D.高响应比优先调度算法
答案:D。
25. 某计算机系统中有 8 台打印机,由 K 个进程竞争使用,每个进程最多需要 3 台打印机。该
系统可能会发生死锁的 K 的最小值是______。
A.2 B.3 C.4
D.5
答案:C。“每个进程最多需要 3 台打印机”,这说明,有的进程使用 1 台,有的使用 2
台,有的使用 3 台。如果找发生死锁的最小的 K 值,那么假定所有进程都需要 3 台,这样
当 K 值最小,即 K 为 4 时,系统可能会发生死锁。
26. 分区分配内存管理方式的主要保护措施是______。
A.界地址保护 B.程序代码保护 C.数据保护 D.栈保护
答案:A。
27. 一个分段存储管理系统中,地址长度为 32 位,其中段号占 8 位,则最大段长是______。
A.28 字节 B.216 字节
C.224 字节 D.232 字节
答案:C。
28. 下列文件物理结构中,适合随机访问且易于文件扩展的是______。
A.连续结构
B.索引结构
C.链式结构且磁盘块定长 D.链式结构且磁盘块变长
答案:B。
1
29. 假设磁头当前位于第 105 道,正在向磁道序号增加的方向移动。现有一个磁道访问请求序
列为 35,45,12,68,110,180,170,195,采用 SCAN 调度(电梯调度)算法得到的磁道
访问序列是 ______。
A.110,170,180,195,68,45,35,12
B.110,68,45,35,12,170,180,195
C.110,170,180,195,12,35,45,68
D.12,35,45,68,110,170,180,195
答案:A。
30. 文件系统中,文件访问控制信息存储的合理位置是______。
A.文件控制块 B.文件分配表
C.用户口令表 D.系统注册表
答案:A。
31. 设文件 F1 的当前引用计数值为 1,先建立 F1 的符号链接(软链接)文件 F2,再建立 F1
的硬链接文件 F3,然后删除 F1。此时,F2 和 F3 的引用计数值分别是______。
A.0、1
B.1、1
C.1、2
D.2、1
答案:B。
32. 程序员利用系统调用打开 I/O 设备时,通常使用的设备标识是 ______。
A.逻辑设备名 B.物理设备名
C.主设备号
D.从设备号
答案:A。
二、综合应用题
45.(7 分)三个进程 P1、P2、P3 互斥使用一个包含 N(N>0)个单元的缓冲区。P1 每次用
produce()生成一个正整数并用 put()送入缓冲区某一空单元中;P2 每次用 getodd()从该
缓冲区中取出一个奇数并用 countodd()统计奇数个数;P3 每次用 geteven()从该缓冲区中
取出一个偶数并用 counteven()统计偶数个数。请用信号量机制实现这三个进程的同步
与互斥活动,并说明所定义信号量的含义。要求用伪代码描述。
答案要点:
定义信号量 s1 控制 P1 与 P2 之间的同步;S2 控制 P1 与 P3 之间的同步;empty 控制生
产者与消费者之间的同步;mutex 控制进程间互斥使用缓冲区。程序如下:
semaphore s1=0, s2=0, empty=N, mutex=1;
2
Cobegin
P1:begin
X=produce();
P(empty);
P(mutex);
Put();
If x%2==0
V(s2);
else
V(s1);
V(mutex);
end.
P2:begin
P(s1);
P(mutex);
Getodd();
Countodd():=countodd()+1;
V(mutex);
V(empty);
end.
P3:begin
P(s2)
P(mutex);
Geteven();
Counteven():=counteven()+1;
V(mutex);
V(empty);
end.
CoEnd.
46.(8 分)请求分页管理系统中,假设某进程的页表内容如下表所示:
页号 页框(Page Frame)号 有效位(存在位)
0
1
2
101H
——
254H
1
0
1
页面大小为 4KB,一次内存的访问时间是 100ns,一次快表(TLB)的访问时间是 10ns,处理
一次缺页的平均时间 108ns(已含更新 TLB 和页表的时间),进程的驻留集大小固定为 2,采
用最近最少使用置换算法(LRU)和局部淘汰策略。假设①TLB 初始为空;②地址转换时先访
问 TLB,若 TLB 未命中,再访问页表(忽略访问页表之后的 TLB 更新时间);③有效位为 0
表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执
行。设有虚地址访问序列 2362H、1565H、25A5H,请问:
3
(1) 依次访问上述三个虚地址,各需多少时间?给出计算过程。
(2) 基于上述访问序列,虚地址 1565H 的物理地址是多少?请说明理由。
答案要点:(1)根据页式管理的工作原理,应先考虑页面大小,以便将页号和页内位移分解
出来。页面大小为 4KB,即 212,则得到页内位移占虚地址的低 12 位,页号占剩余高位。可
得三个虚地址的页号 P 如下(十六进制的一位数字转换成 4 位二进制,因此,十六进制的
低三位正好为页内位移,最高位为页号):
2362H:P=2,访问快表 10ns,因初始为空,访问页表 100ns 得到页框号,合成物理地址后
访问主存 100ns,共计 10ns+100ns+100ns=210ns。
1565H:P=1,访问快表 10ns,落空,访问页表 100ns 落空,进行缺页中断处理 108ns,访问
快 表 10ns , 合 成 物 理 地 址 后 访 问 主 存 100ns , 共 计 10ns+100ns+108ns+10ns+100ns =
100000220ns。
25A5H:P=2,访问快表,因第一次访问已将该页号放入快表,因此花费 10ns 便可合成物理
地址,访问主存 100ns,共计 10ns+100ns=110ns。
(2)当访问虚地址 1565H 时,产生缺页中断,合法驻留集为 2,必须从页表中淘汰一个页面,
根据题目的置换算法,应淘汰 0 号页面,因此 1565H 的对应页框号为 101H。由此可得 1565H
的物理地址为 101565H。
4
2010 年研究生全国统考计算机试题——操作系统部分试题解析
一、单项选择题
23. 下列选项中,操作系统提供给应用程序的接口是_____。
A.系统调用
B.中断
C.库函数
D.原语
答案:A。
24. 下列选项中,导致创建新进程的操作是______。
Ⅰ 用户登录成功 Ⅱ 设备分配 Ⅲ 启动程序执行
A.仅Ⅰ和Ⅱ
B.仅Ⅱ和Ⅲ
C.仅Ⅰ和Ⅲ
D.Ⅰ、Ⅱ和Ⅲ
答案:C。
25. 设与某资源关联的信号量初值为 3,当前值为 1。若 M 表示该资源的可用个数,N 表示等
待该资源的进程数,则 M、N 分别是______。
A.0、1
B.1、0
C.1、2
D.2、0
答案:B。
26. 下列选项中,降低进程优先级的合理时机是_____。
A. 进程的时间片用完
B. 进程刚完成 I/O,进入就绪列队
C. 进程长期处于就绪列队中
D. 进程从就绪态转为运行态
答案:A。
27. 进程 P0 和 P1 的共享变量定义及其初值为
boolean flag[2];
int turn = 0;
flag[0] = FALSE; flag[1] = FA LSE;
若进程 P0 和 P1 访问临界资源的类 C 伪代码实现如下。
void P0( ) { // 进程 P0
void P1( ) {// 进程 P1
while(TRUE) {
while(TRUE) {
flag[0]=TRUE; turn=1;
flag[1]=TRUE; turn=0;
while(flag[1]&&(turn==1));
while(flag[0]&&(turn==0));
临界区;
临界区;
flag[0]=FALSE;
flag[1]=FALSE;
}
}
}
}
5
则并发执行进程 P0 和 P1 时产生的情形是( )。
A. 不能保证进程互斥进入临界区,会出现“饥饿” 现象
B. 不能保证进程互斥进入临界区,不会出现“饥饿”现象
C. 能保证进程互斥进入临界区,会出现“ 饥饿”现象
D. 能保证进程互斥进入临界区,不会出现“饥饿” 现象
答案:D。
28. 某基于动态分区存储管理的计算机,其主存容量为 55MB(初始为空闲),采用最佳适配(Best
Fit)算法,分配和释放的顺序为:分配 15MB,分配 30MB,释放 15MB,分配 8MB,分配
6MB,此时主存中最大空闲分区的大小是______。
A.7MB
B.9MB
C.10MB D.15MB
答案:B。
29. 某计算机采用二级页表的分页存储管理方式,按字节编址,页大小为 210 字节,页表项
大小为 2 字节,逻辑地址结构为:
页目录号 页号 页内偏移量
逻辑地址空间大小为 216 页,则表示整个逻辑地址空间的页目录表中包含表项的个数至
少是______。
A.64
B.128
C.256
D.512
答案:B。1 页为 1KB,一页可存储 512 个页地址(页表项大小为 2 字节),逻辑地址空
间大小为 216 页,页表占用 216/512=128 页,所以页目录中至少要有 128 个表项。
30. 设文件索引节点中有 7 个地址项,其中 4 个地址项是直接地址索引,2 个地址项是一级间接
地址索引,1 个地址项是二级间接地址索引,每个地址项大小为 4 字节。若磁盘索引块和磁
盘数据块大小均为 256 字节,则可表示的单个文件最大长度是______。
A.33 KB B.519 KB C.1 057 KB
D.16 513 KB
答案:C。4×256B+2×256/4×256B+(256/4)2×256B = 1KB+32KB+1024KB=1057KB.
31. 设置当前工作目录的主要目的是_______。
A.节省外存空间
B.节省内存空间
C.加快文件的检索速度 D.加快文件的读/写速度
答案:C。
32. 本地用户通过键盘登陆系统时,首先获得键盘输入信息的程序是______。
A.命令解释程序
B.中断处理程序
C.系统调用服务程序 D.用户登录程序
6
答案:B。
二、综合应用题
45.(7 分)假设计算机系统采用 CSCAN(循环扫描)磁盘调度策略,使用 2KB 的内存空
间记录 16384 个磁盘块的空闲状态。
(1)请说明在上述条件下如何进行磁盘块空闲状态的管理。
(2)设某单面磁盘旋转速度为每分钟 6000 转,每个磁道有 100 个扇区,相邻磁道间的平
均移动时间为 1ms。若在某时刻,磁头位于 100 号磁道处,并沿着磁道号增大的方向移
动(如下图所示), 磁道号请求队列为 50,90,30,120,对请求队列中的每个磁道需
读取 1 个随机分布的扇区,则读完这 4 个扇区点共需要多少时间?要求给出计算过程。
(3)如果将磁盘替换为随机访问的 Flash 半导体存储器(如 U 盘、SSD 等),是否有比
CSCAN 更高效的磁盘调度策略?若有,给出磁盘调度策略的名称并说明理由;若
无,说明理由。
答案要点:(1)用位图表示磁盘的空闲状态。每一位表示一个磁盘块的空闲状态,共需要
16384/8=2048B=2KB,正好可放在系统提供的内存中。
(2) 采用 CSCAN 调度算法,访问磁道的顺序和移动的磁道数如下表所示:
被访问的下一个磁道号
移动距离(磁道数)
120
30
50
90
20
90
20
40
移动的磁道数为 20+90+20+40=170,故总的移动磁道时间为 170ms。
由于转速为 6000r/m,则平均旋转延迟为 5ms,总的旋转延迟时间=20ms。
由于转速为 6000r/m,则读取一个磁道上一个扇区的平均读取时间为 0.1ms,总的读取
扇区的时间平均读取时间为 0.1ms,总的读取扇区的时间为 0.4ms。
综上,读取上述磁道上所有扇区所花的总时间为 190.4ms。
(3)采用 FCFS(先来先服务)调度策略更高效。因为 Flash 半导体存储器的物理结构不需
7
要考虑寻道时间和旋转延迟,可直接按 I/O 请求的先后顺序服务。
46.(8 分)设某计算机的逻辑地址空间和物理地址空间均为 64KB,按字节编址。若某进程
最多需要 6 页(Page)数据存储空间,页的大小为 1KB,操作系统采用固定分配局部置换
策略为此进程分配 4 个页框(Page Frame)。
在时刻 260 前的该进程访问情况如下表所示(访问位即使用位)。
页号 页框号 装入时刻 访问位
0
1
2
3
130
230
200
160
7
4
2
9
1
1
1
1
当该进程执行到时刻 260 时,要访问逻辑地址为 17CAH 的数据。请回答下列问题:
(1) 该逻辑地址对应的页号是多少?
(2) 若采用先进先出(FIFO) 置换算法,该逻辑地址对应的物理地址是多少?要求给出计算
过程。
(3) 若采用时钟(CLOCK)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过
程(设搜索下一页的指针沿顺时针方向移动,且当前指向 2 号页框,示意图如下)。
答案要点:(1)由于该计算机的逻辑地址空间和物理地址空间均为 64KB = 216B,按字节
编址,且页的大小为 1K=210,故逻辑地址和物理地址的地址格式均为:
页号/页框号( 6 位)
页内偏移量( 10 位)
17CAH = 0001 0111 1100 1010B,可知该逻辑地址的页号为 000101B = 5
(2)根据 FIFO 算法,需要替换装入时间最早的页,故需要置换装入时间最早的 0 号页,
即将 5 号页装入 7 号页框中,所以物理地址为 0001 1111 1100 1010B = 1FCAH。
(3) 根据 CLOCK 算法,如果当前指针所指页框的使用位为 0,则替换该页;否则将使
用位清零,并将指针指向下一个页框,继续查找。根据题设和示意图,将从 2 号页框开
始,前 4 次查找页框号的顺序为 2→4→7→9,并将对应页框的使用位清零。在第 5 次
8