操作系统复习题集及答案 下载本文

操作系统复习题集

三、简答题

1. 分页存储管理存在的局限性是什么?

逻辑地址空间:页是物理单位,共享困难、不便对代码进行分类管理,不能进行动态连接。

2. 多道程序系统为什么能提高CPU的利用率? 利用了原来CPU空闲等待时间

3. 文件的逻辑结构有哪些?

一种是无结构的流式文件,是指对文件内信息不再划分单位,它是依次的一串字符流构成的文件;一种是有结构的记录式文件, 是用户把文件内的信息按逻辑上独立的含义划分信息单位,每个单位称为一个逻辑记录(简称记录)。所有记录通常都是描述一个实体集的,有着相同或不同数目的数据项,记录的长度可分为定长和不定长记录两类。

4. 什么是设备独立性?

应用程序独立于具体使用的物理设备。设备独立性又称为数据无关性。它指的是应用程序在使用设备进行I/O时,使用的是逻辑设备,而系统在实际执行时使用的是物理设备,由操作系统负责逻辑设备与物理设备的映射。

5. 为什么要引入线程,解释一下线程与进程之间的相互关系。

因为虽然进程可以提高CPU的利用率,但是进程之间的切换是非常耗费资源和时间的,为了能更进一步的提高操作系统的并发进,引进了线程.这样,进程是分配资源的基本 单位,而线程则是系统调度的基本单位.一个进程内部的线程可以共享该进程的所分配到的资源.线程的创建与撤消,线程之间的切换所占用的资源比进程要少很多.总的来说就是为了更进一步提高系统的并发性,提高CPU的利用率. 线程是进程的基础,进程包含多个线程,是线程的载体。

6. 死锁的必要条件是什么?

死锁:当某进程提出资源申请后,使得系统中一些进程处于无休止的阻塞状态,在无外力作用下,永远不能再继续前进。产生死锁的必要条件:互斥条件:某段时间内某资源只能由一个进程使用。不剥夺条件:资源在未使用完前,不能被剥夺,由使用进程释放。部分分配(请求和保持):进程因请求资源而阻塞时,对已分配给它的资源保持不放。环路条件:发生死锁时,有向图必构成一环路。

7. 什么是虚拟内存?

虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。

8. 假脱机技术是什么?

通过共享设备来模拟独享设备所采用的操作是假脱机操作,即在联机情况下外部设备设备同时操作。所使用的假脱机技术称之为假脱机技术。

9. 为银行取款机系统配备的操作系统应归类于什么类型的操作系统?

10. 多道程序设计的主要优点是什么?

解:多道程序设计是指在主存中同时存放多道用户作业,使它们都处于执行的开始点和结束点之间,这些程序共享计算机系统资源。多道程序设计的主要优点有:(1) 提高CPU的利用率。在多道程序环境下,多个程序共享计算机资源,当某个程序等待I/O操作时,CPU可以执行其他程序,大大提高了CPU的利用率。(2) 提高设备的利用率。在多道程序环境下,多个程序共享系统的设备,大大提高系统设备的利用率。(3)提高系统的吞吐量。在多道程序环境下,减少了程序的等待时间,提高了系统的吞吐量。

11. 请为的下面应用环境的计算机选择适合的操作系统。

(1)飞机的导航(2)办公室自动化系统(3)航空订票系统(4)复杂的科学计算(5)图书检索系统

12. 什么是并发、并行?

并发和并行是即相似又有区别的两个概念,并行是指两个或者多个事

件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,并发性是指在一段时间内宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。倘若在计算机系统中有多个处理机,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可以同时执行

13.什么是临界区?

一次仅允许一个进程使用的资源称为临界资源,在进程中对于临界资源访问的程序段称为临界区。

14. 引入缓冲的目的是什么?

答:(1)缓和外部设备和CPU的速度差异;(2)减少CPU被中断的

次数;(3)实现CPU和设备、设备和设备之间的并行操作。

15. 设备驱动程序的主要任务是什么?

设备驱动程序是请求I/O的进程与设备控制器之间的一个通信程序,主要功能有:

①将用户的要求转换为具体要求。

②检查用户的合法性,了解设备状态,根据要求传递参数,设置设备的工作方式。

③向设备控制器发I/O命令启动设备,完成具体的I/O操作。

④及时响应外设的中断请求,根据中断类型调用相应的中断处理程序。

⑤具有通道的控制系统,还要构造通道程序。

四、综合题

1. 信号量的PV操作解决进程的同步问题。 2. 银行家算法判断系统状态是否安全。

3. 分页系统中逻辑地址和物理地址的转换。

4. 页面置换算法,主要掌握先进先出、LRU、最佳置换。

5. 磁盘调度算法,包括FCFS、短寻道优先、电梯算法、LOOK算法等。 6. 进程调度算法,包括FCFS、短任务优先、最短剩余时间优先、时间片轮转等。

综合题案例:

1.考虑下列进程集,进程占用的CPU区间长度以毫秒来计算:

进程 区间时间 优先级 P1 10 3 P2 1 1 P3 2 3 P4 1 4 P5 5 2

假设在时刻0以进程P1,P2,P3,P4,P5的顺序到达。

a.画出4个Gantt图分别演示用FCFS、SJF、非抢占优先级(数字小代表优先级高)和RR(时间片=1)算法调度时进程的执行过程。 b.在a里每个进程在每种调度算法下的周转时间是多少? c.在a里每个进程在每种调度算法下的等待时间是多少? d.在a里哪一种调度算法的平均等待时间对所有进程而言最小? 答:a.甘特图(看教材138页) FCFS: P1 P2 P3 P4 P5 0 10 11 13 14 19 SJF: P2 P4 P3 P4 P5 0 1 2 4 9 19

非抢占优先级: P2 P5 P1 P3 P4 0 1 6 16 17 19 RR: P1 P2 P3 P4 P5 P1 P3 P5 P1 P5 P1 P5 P1 P5 P1 P1 P1 P1 P1 0 19

b.周转时间 P1 P2 P3 P4 P5 c.等待时间 P1 P2 P3 P4 P5 d.SJF

2.考虑一个运行十个I/O限制任务和一个CPU限制任务的系统。假设,I/O限制任务一次分配给一个I/O操作1毫秒的CPU计算,但每个I/O操作的完成需要 10毫秒。同时,假设间接的上下文切换要0.1毫秒,所有的进程都是长进程。对一个RR调度来说,以下情况时CPU的利用率是多少: a.时间片是1毫秒

FCFS 0 10 11 13 14 RR 9 1 5 3 9 SJF 9 0 2 1 4 非抢占优先级 6 0 16 18 2 FCFS 10 11 13 14 19 RR 19 2 7 4 14 SJF 19 1 4 2 9 非抢占优先级 16 1 18 19 6 b.时间片是10毫秒

答:a.时间片是1毫秒:不论是哪个进程被调度,这个调度都会为每一次的上下文切换花费一个0.1毫秒的上下文切换。CPU的利用率是1/1.1*100=92%。 b.时间片是10毫秒:这I/O限制任务会在使用完1毫秒时间片后进行一次上下文切换。这个时间片要求在所有的进程间都走一遍,因此,10*1.1+10.1(因为每个I / O限定任务执行为1毫秒,然后承担上下文切换的任务,而CPU限制任务的执行10毫秒在承担一个上下文切换之前) 。因此,CPU的利用率是20/21.1*100=94%。

3. 考虑下面的一个系统在某一时刻的状态:

Allocation Max Available A B C D A B C D A B C D

P0 0 0 1 2 0 0 1 2 1 5 2 0 P1 1 0 0 0 1 7 5 0 P2 1 3 5 4 2 3 5 6 P3 0 6 3 2 0 6 5 2 P4 0 0 1 4 0 6 5 6 使用银行家算法回答下面问题: a.Need矩阵的内容是怎样的? b.系统是否处于安全状态?

c.如果从进程P1发出一个请求(0 4 2 0),这个请求能否被满足? 答:a.Need矩阵的内容是

P0(0 0 0 0) P1(0 7 5 0) P2(1 0 0 2) P3(0 0 2 0) P4(0 6 4 0)。

b. .系统处于安全状态,因为Available矩阵等于(1 5 2 0),进程P0和P3都可以运行,当进程P3运行完时,它释放它的资源,而允许其它进程运行。

c.可以被满足,满足以后,Available矩阵等于(1 1 0 0),当以次序P0,P2, P3, P1 ,P4运行时候,可以完成运行。