1、1操作系统期末练习题参考答案一、选择题(选择一个正确答案的代码填入括号中)1. B操作系统 2. D 控制和管理系统内各种资源,有效地组织多道程序的运行3. C文档编辑4. C程序的并发执行5. C系统调用6. A请求系统服务7. B只能通过用户程序间接使用8. B分时系统9. C. 快速响应10. C火车订票系统11. A命令名 选项 参数12. CUNIX 系统13. C描述程序动态执行过程的性质14. A程序是静态概念,进程是动态概念15. B并发性16. A只有一个 17. B进程状态变为就绪18. D从阻塞变为就绪19. A同步20. C临界资源21. B进入阻塞态,让出 CPU22
2、. A1 23. C若干进程因竞争资源而无休止地循环等待着,且都不释放已占有的资源24. C进程调度25. B就绪 26. D后备27. B选择恰当的作业调度算法28. D平均周转时间29. B2 小时30. AT=ES31. A解释并执行来自终端的命令32. D抢占式优先级33. A逻辑地址 234. D重定位35. C固定分区36. C限长寄存器37. B页表38. B对换技术39. D扩充主存容量40. B扩充相对地址空间的技术41. A分区管理 42. D缺页中断43. A置换算法选择不当44. B辅助存储空间45. C实现对磁盘的驱动调度46. B 文件名称与文件具体的物理地址的转换
3、47. C记录式文件 48. A连续文件 49. D提高了存储空间的利用率50. C索引文件51. D解决不同用户间的文件命名冲突52. C可以不同,也可以相同 53. D/usr/meng/prog/file.c 54. D非循环图目录55. C硬件设备56. B普通文件57. D读和写58. C实现中断处理59. D用户程序使用的设备与实际使用哪台设备无关的一种特性60. C通道技术61. C通道独立执行预先编好的通道程序来控制 62. D设备驱动程序63. C缓冲技术64. C提高 CPU 与设备之间的并行程度 65. C虚拟 66. C10067. B2ms 68. A可定制性 69.
4、 D系统中若干台计算机相互协作完成同一任务70. D分布式操作系统3二、判断题(正确的划,错误的划)71. 操作系统是系统软件中的一种,在进行系统安装时可以先安装其它软件,然后再装操作系统。( ) 72. 操作系统核心提供了大量的服务,其最高层是系统调用,它允许正在运行的程序直接得到操作系统的服务。( )73. 在 UNIX/Linux 系统上,系统调用以 C 函数的形式出现。( ) 74. UNIX 操作系统是采用微内核方法实现结构设计的。( )75. 程序在运行时需要很多系统资源,如内存、文件、设备等,因此操作系统以程序为单位分配系统资源。( ) 76. 进程控制块(PCB)是专为用户进程
5、设置的私有数据结构,每个进程仅有一个PCB。( ) 77. 信号量机制是一种有效的实现进程同步与互斥的工具。信号量只能由 P、V 操作来改变。( )78. 系统产生死锁的根本原因是资源有限且操作不当。因此,当系统提供的资源少于并发进程的需求时,系统就会产生死锁。( )79. 处理机调度可分为三级:高级、中级和低级。在所有的系统中,都必须具备这三级调度。()80. 作业调度选中一个作业后,与该作业相关的进程即占有 CPU 运行。( )81. 在操作系统中,作业处于执行状态时,已处于进程的管理之下。( )82. 通常,为了提高效率,赋予需要大量计算的作业较高优先级,赋予需要大量输入/输出的作业较低
6、的优先级。( )83. 中断处理一般分为中断响应和中断处理两个步骤,前者由软件实施,后者由硬件实施。( )84. 采用动态重定位技术的系统,目标程序可以不经任何改动,而装入物理内存。( )85. 固定分区存储管理的各分区的大小不可变化,这种管理方式不适合多道程序设计系统。()86. 在页式存储管理方案中,为了提高内存的利用效率,允许同时使用不同大小的页面。()87. 虚拟存储器是利用操作系统产生的一个假想的特大存储器,是逻辑上扩充了内存容量,而物理内存的容量并未增加。()88. 虚拟存储方式下,程序员编制程序时不必考虑主存的容量,但系统的吞吐量在很大程度上依赖于主存储器的容量。( )89. 只
7、有引入通道后,CPU 计算与 I/O 操作才能并行执行。()90. 在索引文件中,建立索引表会占用额外的存储空间和访问时间。( )91. 实现设备虚拟分配最成功的技术是 SPOOLing。( )92. Linux 文件分为用户文件、目录文件和特殊文件。()93. 在设备 I/O 中引入缓冲技术的目的是为了节省内存。()494. 一般的文件系统都是基于磁盘设备的,而磁带设备可以作为转储设备使用,以提高系统的可靠性。()三、简答题95. 简述操作系统的定义。操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行(1 分)的系统软件(或程序集合) ,是用户与计算机之间的接口。96
8、. 在计算机系统中操作系统处于什么地位?操作系统是裸机之上的第一层软件,与硬件关系尤为密切。它不仅对硬件资源直接实施控制、管理,而且其很多功能的完成是与硬件动作配合实现的,如中断系统。操作系统的运行需要有良好的硬件环境。操作系统是整个计算机系统的控制管理中心,其他所有软件都建立在操作系统之上。操作系统对它们既具有支配权力,又为其运行建造必备环境。在裸机上安装了操作系统后,就为其他软件的运行和用户使用提供了工作环境。97. 操作系统一般为用户提供了哪三种界面?各有什么特点?操作系统一般为用户提供的三种界面是:图形用户接口、命令行接口和程序接口。图形用户接口:用户利用鼠标、窗口、菜单、图标等图形界
9、面工具,可以直观、方便、有效地使用系统服务和各种应用程序及实用工具。命令行接口:在提示符之后用户从键盘上输入命令,命令解释程序接收并解释这些命令,然后把它们传递给操作系统内部的程序,执行相应的功能。程序接口:也称系统调用接口。系统调用是操作系统内核与用户程序、应用程序之间的接口。在 UNIX/Linux 系统中,系统调用以 C 函数的形式出现。98. Linux 系统有什么特点?Linux 系统的主要特点有:(1)与 UNIX 兼容。 (2)自由软件,源码公开。 (3)性能高,安全性强。 (4)便于定制和再开发。 (5)互操作性高。 (6)全面的多任务和真正的 32位操作系统。99. 进程与程
10、序的区别和联系是什么?进程与程序的主要区别是: (1)进程是动态的;程序是静态的。(2)进程有独立性,能并发执行;程序不能并发执行。(3)二者无一一对应关系。(4)进程异步运行,会相互制约;程序不具备此特征。但是,进程与程序又有密切的联系:进程不能脱离具体程序而虚设,程序规定了相应进程所要完成的动作。100. 用如下图所示的进程状态转换图能够说明有关处理机管理的大量内容。试回答:下述状态变迁因果关系能否发生?为什么?(A)32 (B)415下述状态变迁:(A)32:不可以。任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再由运行态变为就绪态。(B)41:可以。某一阻塞态进程等
11、待的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行。101. 进程进入临界区的调度原则是什么?一个进程进入临界区的调度原则是: (1)如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。(2)任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。(3)进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区。(4)如果进程不能进入自己的临界区,则应让出 CPU,避免进程出现“忙等”现象。102. 若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为 1024 字节,试将逻辑地址 40
12、00、5012 转化为相应的物理地址。某作业的页表页号 块号01232316设页号为 p,页内位移为 d,则: 对于逻辑地址 4000,pint(4000/1024)3,d4000 mod 1024928。查页表第 3页在第 6 块,所以物理地址为 102469287072。对于逻辑地址 5012,pint(5012/1024)4,d5012 mod 1024916。因页号超过页表长度,该逻辑地址非法。103. 发生死锁的四个必要条件是什么?发生死锁的四个必要条件是:互斥条件,不可抢占条件,占有且申请条件,循环等待条件。104. 处理机调度一般可分为哪三级?其中哪一级调度必不可少?为什么?处理
13、机调度一般可分为高级调度(作业调度)、中级调度和低级调度(进程调度)。6其中进程调度必不可少。进程只有在得到 CPU 之后才能真正活动起来,所有就绪进程经由进程调度才能获得CPU 的控制权;实际上,进程调度完成一台物理的 CPU 转变成多台虚拟(或逻辑)的CPU 的工作;进程调度的实现策略往往决定了操作系统的类型,其算法优劣直接影响整个系统的性能。105. 作业调度与进程调度二者间如何协调工作?作业调度和进程调度是 CPU 主要的两级调度。作业调度是宏观调度,它所选择的作业只是具有获得处理机的资格,但尚未占有处理机,不能立即在其上实际运行。而进程调度是微观调度,它根据一定的算法,动态地把处理机
14、实际地分配给所选择的进程,使之真正活动起来。106. 简述中断的定义。中断是指 CPU 对系统发生的某个事件做出的一种反应,它使 CPU 暂停正在执行的程序,保留现场后自动执行相应的处理程序,处理该事件后,如被中断进程的优先级最高,则返回断点继续执行被“打断”的程序。107. 一般中断处理的主要步骤是什么?一般中断处理的主要步骤是:保存被中断程序的现场,分析中断原因,转入相应处理程序进行处理,恢复被中断程序现场(即中断返回)。108. 中断响应主要做哪些工作?由谁来做?中断响应主要做的工作是:中止当前程序的执行;保存原程序的断点信息(主要是程序计数器 PC 和程序状态寄存器 PS 的内容);转
15、到相应的处理程序。中断响应由硬件实施。109. 如何将逻辑地址转换成物理地址?逻辑地址转换成物理地址的过程是:用页号 p 去检索页表,从页表中得到该页的物理块号 f,把它装入物理地址寄存器中。同时,将页内地址 d 直接送入物理地址寄存器的块内地址字段中。这样,物理地址寄存器中的内容就是由二者拼接成的实际访问内存的地址,从而完成了从逻辑地址到物理地址的转换。110. 分页存储管理的基本方法是什么? 分页存储管理的基本方法是:逻辑空间分页,内存空间分块,块与页的大小相等。页连续而块离散,用页号查页表,由硬件作转换。111. 在分页系统中页面大小由谁决定?页表的作用是什么?如何将逻辑地址转换成物理地
16、址?在分页系统中页面大小由硬件决定。页表的作用是实现从页号到物理块号的地址映射。逻辑地址转换成物理地址的过程是:用页号 p 去检索页表,从页表中得到该页的物理块号 f,把它装入物理地址寄存器中。同时,将页内地址 d 直接送入物理地址寄存器的块内地址字段中。这样,物理地址寄存器中的内容就是由二者拼接成的实际访问内存的地址,从而完成了从逻辑地址到物理地址的转换。112. 考虑一个由 8 个页面,每页有 1024 个字节组成的逻辑空间,把它装入到有 32 个物理7块的存储器中,问逻辑地址和物理地址各需要多少二进制位表示?因为页面数为 8=23,故需要 3 位二进制数表示。每页有 1024 个字节,1
17、024=2 10,于是页内地址需要 10 位二进制数表示。32 个物理块,需要 5 位二进制数表示(32=2 5)。因此,页的逻辑地址由页号和页内地址组成,所以需要 3+10=13 位二进制数表示。页的物理地址由块号和页内地址的拼接,所以需要 5+10=15 位二进制数表示。113. 对换技术如何解决内存不足的问题?在多道程序环境中可以采用对换技术。此时,内存中保留多个进程。当内存空间不足以容纳要求进入内存的进程时,系统就把内存中暂时不能运行的进程(包括程序和数据)换出到外存上,腾出内存空间,把具备运行条件的进程从外存换到内存中。114. 虚拟存储器有哪些基本特征?虚拟存储器的基本特征是:虚拟
18、扩充不是物理上,而是逻辑上扩充了内存容量;部分装入每个进程不是全部一次性地装入内存,而是只装入一部分;离散分配不必占用连续的内存空间,而是“见缝插针”;多次对换所需的全部程序和数据要分成多次调入内存。115. 一般说来,文件系统应具备哪些功能?一般说来,文件系统应具备以下功能:文件管理;目录管理;文件存储空间的管理;文件的共享和保护;提供方便的接口。116. 文件的逻辑组织有几种形式?文件的逻辑组织有以下形式:无结构文件和有结构文件。无结构文件是指文件内部不再划分记录,它是由一组相关信息组成的有序字符流,即流式文件。有结构文件又称为记录式文件,它在逻辑上可被看成一组连续顺序的记录的集合,又可分
19、为定长记录文件和变长记录文件两种。117. 什么是文件保护?常用的保护机制有哪些?文件保护是指文件免遭文件主或其他用户由于错误的操作而使文件受到破坏。常用的文件保护机制有:(1)命名自己的文件名,不让他人知道; (2)口令对上口令,才能存取; (3)存取控制有权才可存取,不同权限干不同的事; (4)密码信息加密,解密复原。118. 操作系统中设备管理的功能是什么?操作系统中设备管理的功能是:监视设备状态;进行设备分配;完成 I/O 操作;缓冲管理与地址转换。119. 设备分配技术主要有哪些?常用的设备分配算法是什么? 设备分配技术主要有:独占分配、共享分配和虚拟分配。常用的设备分配算法是:先来
20、先服务算法和优先级高的优先服务算法。120. 处理 I/O 请求的主要步骤是什么?8处理 I/O 请求的主要步骤是:用户进程发出 I/O 请求;系统接受这个 I/O 请求,转去执行操作系统的核心程序;设备驱动程序具体完成 I/O 操作; I/O 完成后,系统进行 I/O 中断处理,然后用户进程重新开始执行。121. 在 UNIX/Linux 系统中,如何表示一个文件的存取权限?在 UNIX/Linux 系统中,一个文件的存取权限用 9 个二进制位表示:前三位分别表示文件主的读、写和执行权限,中间三位分别表示同组用户的读、写和执行权限,最后三位分别表示其他用户的读、写和执行权限。122. 设备驱
21、动程序的主要功能是什么?设备驱动程序的功能主要有:接受用户的 I/O 请求;取出请求队列中队首请求,将相应设备分配给它;启动该设备工作,完成指定的 I/O 操作;处理来自设备的中断。123. 什么是 SPOOLing 系统?它的主要功能是什么?SPOOLing 系统是指在通道技术和中断技术的支持下,在主机的控制之下,完成 I/O 的软件系统。SPOOLing 系统的主要功能是:将独占设备改造为共享设备,实现了虚拟设备功能。124. 硬盘分区有哪三种类型?Linux 可以安装在哪些分区上?硬盘分区有三种类型:主分区、扩展分区和逻辑分区。Linux 既可以安装在主分区上,也可以安装在逻辑分区上。1
22、25.推动操作系统发展的主要动力是什么?推动操作系统发展的因素很多,主要可归结为硬件技术更新和应用需求扩大两大方面。(1)伴随计算机器件的更新换代,计算机系统的性能得到快速提高,也促使操作系统的性能和结构有了显著提高。此外,硬件成本的下降也极大地推动了计算机技术的应用推广和普及。(2)应用需求促进了计算机技术的发展,也促进了操作系统的不断更新升级。126.嵌入式操作系统的最大特点是什么?举例说明。嵌入式操作系统的最大特点就是可定制性,即能够提供对内核进行配置或剪裁等功能,可以根据应用需要有选择地提供或不提供某些功能,以减少系统开销。如从应用领域角度看,可以分为面向信息家电的嵌入式操作系统,面向
23、智能手机的嵌入式操作系统,面向汽车电子的嵌入式操作系统,以及面向工业控制的嵌入式操作系统等。127. 未来操作系统大致应具有哪些特征?未来操作系统大致应具有以下特征:更强的分布式处理能力;更高的安全性和可靠性;符合开放式模型;更方便的用户界面。四、应用题128. 某分时系统的进程出现如下图所示的状态变化。试问:(1)你认为该系统采用的是哪一种进程调度算法?(2)写出图中所示的每一个状态变化的原因(从到)。 运行等待打印机输出结果等磁盘读文件9 就绪进程队列解:(1)该分时系统采用的进程调度算法是时间片轮转法。(2)状态变化的原因如下: 进程被选中,变成运行态;时间片到,运行的进程排入就绪队列尾
24、部;运行的进程启动打印机,等待打印;打印工作结束,阻塞的进程排入就绪队列尾部;等待磁盘读文件工作;磁盘传输信息结束,阻塞的进程排入就绪队列尾部。129. 设 A,B 为两个并发进程,它们共享一个临界资源。其运行临界区的算法框图如下图所示。判断其算法是否正确?若有错,请指出错误原因并予以改正。解:这个算法不对。因为 A、B 两个进程是并发的,它们共享一个临界资源,所以二者应互斥地使用该临界资源,在进入临界区时不存在先 A 后 B 的时序关系,而是哪个进程先到一步就先进入自己的临界区。改正:A、B 两个进程应互斥地进入临界区。为此,设立一个信号量:互斥信号量 mutex,其初值为 1。 算法框图如
25、下图所示。A进程 B进程 P(mutex) P(mutex) 临界区代码CSa 临界区代码CSb 10V(mutex) V(mutex) 130. 设有无穷多个信息,输入进程把信息逐个写入缓冲区,输出进程逐个从缓冲区中取出信息。设缓冲区是环形的,编号为 0n-1,in 和 out 分别是输入进程和输出进程使用的指针,初值都是 0。试分别回答下列问题:(1)输入、输出两组进程读/写缓冲区需要什么条件?(2)根据下面输入、输出进程的同步算法,给出信号量含义、初值并填写相应的P、V 操作。输入进程 Input: while (TRUE) A ;B ;信息送往 buffer(in); in=(in+1
26、)mod N; /*以 N 为模*/C ;D ; 输出进程 Output:while (TRUE)E ;F ;从 buffer(out)中取出信息 ; out=(out+1)mod N; /*以 N 为模*/G ;H ;解:(1)针对容量为 n 的环形缓冲区,输入、输出两组进程读/写缓冲区需要的条件为:输入进程和输出进程需同步执行,即输入进程写缓冲区后,输出进程才可以读;由于缓冲区容量有限,因此任一时刻所有输入进程存放信息的单元数不能超过缓冲区的总容量(n);同理,所有输出进程取出信息的总量不能超过所有输入进程当前写入信息的总数。(2)为使两类进程实行同步操作,应设置三个信号量:两个计数信号量 full 和empty,一个互斥信号量 mutex。full:表示放有信息的缓冲区数,其初值为 0。empty:表示可供使用的缓冲区数,其初值为 n。mutex:互斥信号量,初值为 1,表示各进程互斥进入临界区,保证任何时候只有一个进程使用缓冲区。A:P(empty);