1、全国硕士研究生入学统一考试操作系统真题 2010 年及答案解析(总分:35.00,做题时间:90 分钟)一、单项选择题(总题数:10,分数:20.00)1.下列选项中,操作系统提供给应用程序的接口是( )。(分数:2.00)A.系统调用B.中断C.库函数D.原语2.下列选项中,导致创建新进程的操作是( )。用户登录成功 设备分配 启动程序执行(分数:2.00)A.仅和B.仅和C.仅和D.、和3.设与某资源关联的信号量初值为 3,当前值为 1。若 M 表示该资源的可用个数,N 表示等待该资源的进程数,则 M、N 分别是()。(分数:2.00)A.0、1B.1、0C.1、2D.2、04.下列选项中
2、,降低进程优先级的合理时机是( )。(分数:2.00)A.进程的时间片用完B.进程刚完成 I/O,进入就绪队列C.进程长期处于就绪队列中D.进程从就绪队列转为运行状态5.进程 P0 和 P1 的共享变量定义及其初值为:boolean flag2;int turn=0;flag0=FALSE; flag1=FALSE;若进程 P0 和 P1 访问临界资源的类 C 伪代码实现如下:(分数:2.00)A.B.C.D.6.某基于动态分区存储管理的计算机,其主存容量为 55MB(初始为空闲),采用最佳适配(Best Fit)算法,分配和释放的顺序为:分配 15MB、分配 30MB、释放 15MB、分配
3、8MB、分配 6MB,此时主存中最大空闲分区的大小是( )。(分数:2.00)A.7MBB.9MBC.10MBD.15MB7.某计算机采用二级页表的分页存储管理方式,按字节编址,页大小为 210字节,页表项大小为 2 字节,逻辑地址结构为:(分数:2.00)A.B.C.D.8.设文件索引节点中有 7 个地址项,其中 4 个地址项是直接地址索引,2 个地址项是一级间接地址索引,1 个地址项是二级间接地址索引,每个地址项大小为 4 字节。若磁盘索引块和磁盘数据块大小均为 256 字节,则可表示的单个文件最大长度是( )。(分数:2.00)A.33KBB.519KBC.1057KBD.16513KB
4、9.设置当前工作目录的主要目的是( )。(分数:2.00)A.节省外存空间B.节省内存空间C.加快文件的检索速度D.加快文件的读/写速度10.本地用户通过键盘登录系统时,首先获得键盘输入信息、的程序是( )。(分数:2.00)A.命令解释程序B.中断处理程序C.系统调用服务程序D.用户登录程序二、综合应用题(总题数:2,分数:15.00)11.假设计算机系统采用 CSCAN(循环扫描)磁盘调度策略,使用 2KB 的内存空间记录 16384 个磁盘块的空闲状态。(1)请说明在上述条件下如何进行磁盘块空闲状态的管理。(2)设某单面磁盘旋转速度为每分钟 6000 转,每个磁道有 100 个扇区,相邻
5、磁道间的平均移动时间为1ms。若在某时刻,磁头位于 100 号磁道处,并沿着磁道号增大的方向移动(如下图所示),磁道号请求队列为 50,90,30,120,对请求队列中的每一个磁道需读取 1 个随机分布的扇区,则读完这 4 个扇区总共需要多少时间?给出计算过程。(3)如果将磁盘替换为随机访问的 Flash 半导体存储器(如 U 盘、SSD 等),是否有比 CSCAN 更高效的磁盘调度策略?若有,给出磁盘调度策略的名称并说明理由;若无,说明理由。(分数:7.00)_12.设某计算机的逻辑地址空间和物理地址空间均为 64KB,按字节编址。若某进程最多需要 6 页(Page)数据存储空间,页的大小为
6、 1KB,操作系统采用固定分配局部置换策略为此进程分配 4 个页框(Page Frame)。在时刻 260 前的该进程访问情况如下表所示(访问位即使用位)。页号 页框号 装入时间 访问位0 7 130 11 4 230 12 2 200 13 9 160 1当进程执行到时刻 260 时,要访问逻辑地址为 17CAH 的数据。请回答下列问题:(1)该逻辑地址对应的页号是多少?(2)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(3)若采用时钟(Clock)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程(设搜索下一页的指针沿顺时针方向移动,且当前
7、指向 2 号页框,示意图如下)。(分数:8.00)_全国硕士研究生入学统一考试操作系统真题 2010 年答案解析(总分:35.00,做题时间:90 分钟)一、单项选择题(总题数:10,分数:20.00)1.下列选项中,操作系统提供给应用程序的接口是( )。(分数:2.00)A.系统调用 B.中断C.库函数D.原语解析:操作系统提供两个接口:给终端用户的命令行接口(或图形界面接口),给程序员的系统调用接口。这里要注意千万不要选 C。虽然程序员在进行系统编程时写下的语句确实是库函数,但这是程序语言在系统调用外面做的包装。真正执行时该函数将被转换为相应的操作系统调用。中断和原语都不是应用程序接口。2
8、.下列选项中,导致创建新进程的操作是( )。用户登录成功 设备分配 启动程序执行(分数:2.00)A.仅和B.仅和C.仅和 D.、和解析:用户登录成功后,操作系统将启动与用户有关的初始程序,此时需要创建新的进程。启动程序执行时毫无疑问会启动新进程。但设备分配是针对现有进程,不会创建新进程。3.设与某资源关联的信号量初值为 3,当前值为 1。若 M 表示该资源的可用个数,N 表示等待该资源的进程数,则 M、N 分别是()。(分数:2.00)A.0、1B.1、0 C.1、2D.2、0解析:由于信号量的当前取值为 1,自然说明可用资源个数为 1。由于当前还有可用资源数,等待资源的进程数只能是 0,否
9、则就不可能还有可用资源。4.下列选项中,降低进程优先级的合理时机是( )。(分数:2.00)A.进程的时间片用完 B.进程刚完成 I/O,进入就绪队列C.进程长期处于就绪队列中D.进程从就绪队列转为运行状态解析:进程用完一次时间片,说明该进程刚刚运行过,最好让别的进程运行,此时可降低其优先级。其他选项均不合理。如果进程刚刚完成 I/O,此时可能很需要对 I/O 的结果进行处理,因此不应降低其优先级。如果进程长期处于就绪队列中,则其等待时间过长,需要的是升高其优先级,以防止饥饿,而不是降低优先级。如果进程从就绪队列转为运行状态,它刚刚获得 CPU,控制权在该进程手上,在其完成其时间片之前无法降低
10、优先级。5.进程 P0 和 P1 的共享变量定义及其初值为:boolean flag2;int turn=0;flag0=FALSE; flag1=FALSE;若进程 P0 和 P1 访问临界资源的类 C 伪代码实现如下:(分数:2.00)A.B.C.D. 解析:由条件中对变量 turn 的判断可以保证两个进程不能同时进入临界区,因此 A、B 两个选项可以首先排除。不管是哪个进程进入临界区,它出临界区的时候会将自己的 flag 置位 0,此时另外一个进程将通过 while 循环等待,进入临界区,因此,也不会出现“饿死”现象。因此,只有选项 D 合适。6.某基于动态分区存储管理的计算机,其主存容
11、量为 55MB(初始为空闲),采用最佳适配(Best Fit)算法,分配和释放的顺序为:分配 15MB、分配 30MB、释放 15MB、分配 8MB、分配 6MB,此时主存中最大空闲分区的大小是( )。(分数:2.00)A.7MBB.9MB C.10MBD.15MB解析:在前面两个请求发生时,主存的空间上有空余,可以直接满足,这样主存还剩下最顶端的 10MB 闲置空间(假定从最下面开始)。在释放 15MB 后,在 30MB 的上下分别有 15MB 和 10MB 的闲置空间。分配 8MB的请求将在 10MB 的空间满足,再分配 6MB 就只能从 15MB 的闲置空间满足,剩下 9MB 的闲置空间
12、。这块空间是主存中最大的空闲分区。7.某计算机采用二级页表的分页存储管理方式,按字节编址,页大小为 210字节,页表项大小为 2 字节,逻辑地址结构为:(分数:2.00)A.B. C.D.解析:由于一个页表项占 2 个字节,一个页大小为 210字节,一个页可以存放的页表项为 29个,即一个二级页表可以指向 29个页面。由于逻辑地址空间大小为 216页,需要至少 216/29个一级页表项来表示,也就是 27=128 个一级页表项。这就是页目录表中至少应该包含的表项个数。8.设文件索引节点中有 7 个地址项,其中 4 个地址项是直接地址索引,2 个地址项是一级间接地址索引,1 个地址项是二级间接地
13、址索引,每个地址项大小为 4 字节。若磁盘索引块和磁盘数据块大小均为 256 字节,则可表示的单个文件最大长度是( )。(分数:2.00)A.33KBB.519KBC.1057KB D.16513KB解析:一个索引块为 256 个字节,可包含 256/4=64 个磁盘指针。这样一个文件可以占用的最大磁盘块数为:(4+264+16464)256 字节=1082368 字节=1057KB。9.设置当前工作目录的主要目的是( )。(分数:2.00)A.节省外存空间B.节省内存空间C.加快文件的检索速度 D.加快文件的读/写速度解析:设置当前工作目录,可以减少访问文件时读取磁盘索引块的个数,从而加快文
14、件的检索速度。10.本地用户通过键盘登录系统时,首先获得键盘输入信息、的程序是( )。(分数:2.00)A.命令解释程序B.中断处理程序 C.系统调用服务程序D.用户登录程序解析:当用户使用键盘输入信息时,每次输入都将产生一个中断。因此,首先获得键盘输入信息的程序是中断处理程序。二、综合应用题(总题数:2,分数:15.00)11.假设计算机系统采用 CSCAN(循环扫描)磁盘调度策略,使用 2KB 的内存空间记录 16384 个磁盘块的空闲状态。(1)请说明在上述条件下如何进行磁盘块空闲状态的管理。(2)设某单面磁盘旋转速度为每分钟 6000 转,每个磁道有 100 个扇区,相邻磁道间的平均移
15、动时间为1ms。若在某时刻,磁头位于 100 号磁道处,并沿着磁道号增大的方向移动(如下图所示),磁道号请求队列为 50,90,30,120,对请求队列中的每一个磁道需读取 1 个随机分布的扇区,则读完这 4 个扇区总共需要多少时间?给出计算过程。(3)如果将磁盘替换为随机访问的 Flash 半导体存储器(如 U 盘、SSD 等),是否有比 CSCAN 更高效的磁盘调度策略?若有,给出磁盘调度策略的名称并说明理由;若无,说明理由。(分数:7.00)_正确答案:(这道题初看上去似乎有些难度,尤其是第(1)和第(3)问,似乎无从下手。对于第(1)问来说,如何进行磁盘闲置空间管理似乎也问得比较模糊。
16、但如果考虑到磁盘空间管理的根本就是磁盘闲置空间管理的策略,而不同的磁盘空闲空间管理需要的内存空间大小不同,我们就可以获得解题的思路:通过分配的内存空间来反推磁盘闲置空间管理策略。而且题意恰恰给出了用来记录磁盘块信息的内存空间大小。对于第(3)问来说,必须知道随机访问的 Flash 半导体存储器的特点是“随机”,即我们可以随时定位到任何想要访问的地方,无需寻道和旋转,才能合理作答。下面是这道题的详细解析。(1)用每个磁盘块所占用的空间来反推能够采用的磁盘闲置空间管理策略:2KB/16 384=1 个字位(Bit),即一个磁盘块能够用到的空间为 1 个字位。此时能够使用的空闲空间管理模式只能是位图
17、映射管理,即Bit-Map。用一个字位表示一个磁盘块,0 代表空闲,1 代表占用。(2)当前处于磁道号 100,向着磁道增大方向移动,按照 CSCAN 算法,则 4 个磁道被访问的顺序为120,30,50,90。由于每个磁道上待访问的扇区处于随机位置,磁头移动到每个目的磁道后需要一次旋转延迟,即磁盘旋转半圈的时间。根据题意,这个时间为:(60/6000)/2=0.005s=5ms。读取一个扇区需要的时间为百分之一转的时间,即(60/6000)/100=0.0001s=0.1ms。这样每个磁道读取时间为 5.1ms。我们得到访问 4 个磁道的总时间为:20+5.1+90+5.1+20+5.1+4
18、0+5.1=190.4ms。(3)如果使用随机访问的 Flash 半导体存储器,则访问磁盘与访问内存类似,可以直接定位到目标上,无需寻道,也没有旋转。此时直接使用先来先服务即可获得最大的效率。如果考生回答不需要采用任何磁盘调度策略,也可以适当认为正确。)解析:12.设某计算机的逻辑地址空间和物理地址空间均为 64KB,按字节编址。若某进程最多需要 6 页(Page)数据存储空间,页的大小为 1KB,操作系统采用固定分配局部置换策略为此进程分配 4 个页框(Page Frame)。在时刻 260 前的该进程访问情况如下表所示(访问位即使用位)。页号 页框号 装入时间 访问位0 7 130 11
19、4 230 12 2 200 13 9 160 1当进程执行到时刻 260 时,要访问逻辑地址为 17CAH 的数据。请回答下列问题:(1)该逻辑地址对应的页号是多少?(2)若采用先进先出(FIFO)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。(3)若采用时钟(Clock)置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程(设搜索下一页的指针沿顺时针方向移动,且当前指向 2 号页框,示意图如下)。(分数:8.00)_正确答案:(此道题难度较小,计算也直截了当。只要明了页式管理的地址翻译过程就可以轻松解决这道题。(1)页的大小为 1KB,需要 10 个地址位。这样逻辑地址 17CAH(1011111001010)的页号为 5。(2)由于页号 5 不在内存,需要寻找一个已经分配物理页框的页面进行替换。如果采用 FIFO,则被替换的页面是 0 号页面,这样 5 号页面获得的物理页框号是 7。这样逻辑地址 17CAH 对应的物理地址为 1FCAH。(3)如果采用时钟置换算法,则被替换的页面为 2 号页面。虽然 2 号页面的访问位为 1,但所有驻扎在内存的页面的访问位都为 1,因此最终被更换的还是页面 2。这样 5 号页面获得的物理页框就是 2 号页面原来占用的物理页框 2。这样,逻辑地址 17CAH 对应的物理地址为 0FCAH。)解析: