操作系统期末试题(共11页).doc
精选优质文档-倾情为你奉上操作系统试题及答案 2007-7-10 13:01:00点击:1312一、选择题1、 操作系统的主要功能是管理计算机系统中的( )。A程序库 B数据 C文件 D资源2、 在操作系统中,( )是竞争和分配计算机系统资源的基本单位。A程序 B进程 C作业 D用户3、 在操作系统中,并发性是指若干个事件( )发生。A,在同一时刻 B。一定在不同时刻C某一时间间隔内 D。依次在不同时间间隔内4、产生死锁的基本原因是( )和进程推进顺序非法。A资源分配不当B系统资源不足C作业调度不当D进程调度不当5、文件系统采用多级目录结构的目的是( )A 系统开销B节省存储空间C解决命名冲突D缩短传送时间6、位示图方法可用于( )A 盘空间的管理 B盘的驱动调度C文件目录的查找 D页式虚拟存储管理中的页面调度7、下列算法中用于磁盘移臂调度的是( )A时间片轮转法B LRU算法C 最短寻找时间优先算法D优先级高者优先算法8、存放在磁盘上的文件,( )。A即可随机访问,又可顺序访问 B。只能随机访问C只能顺序访问 D。只能读/写不能访问9、一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是( )A2 B1 C3 D0.510、进程和程序的本质区别是( )。A内存和外存 B。动态和静态特征 C。共享和独占使用计算机资源D。顺序和非顺序执行机器指令11、对于硬盘上存放的信息,物理上读写的最小单位是一个( )。A二进位 B。字节 C。物理块 D。逻辑记录12、多道程序设计是指( )A在实时系统中并发运行多个程序B在分布系统中同一时刻运行多个程序C在一台处理机上同一时刻运行多个程序D在一台处理机上并发运行多个程序13、进程从运行状态进入就绪状态的原因可能是( )A被选中占有处理机 B等待某一事件C等待的事件已发生 D时间片用完14、由于系统无法预先知道一个作业未来访问页面的情况,所以( )在实际上是无法实现的。A先进先出淘汰算法 B。最近最少使用淘汰算法C最优淘汰算法 D。最不常用页面淘汰算法15、文件系统为每个文件另建立一张指示逻辑记录和物理块之间的对应关系表,由此表和文件本身构成的文件是( )。A顺序文件 B链接文件C索引文件D逻辑文件 二、填空题1、临界资源的概念是 ,而临界区是指 2操作系统的4个基本特征是 、 、 和 3死锁产生的必要条件有四个,即 、 、 、 。4Spooling系统中,作业执行时,从磁盘上的 中读取信息,并把作业的执行结果暂时存放在磁盘上的 中。5信号量的物理意义是当信号量大于零时表示 ;当信号量值小于零时,其绝对值表示为 。6、将一台独占设备改造成共享设备的一种行之有效的技术是 7、一段时间内只允许一个进程访问的资源称为 8、进程的基本状态有三种,它们分别是 、 和 9CPU与外围设备传输数据有四种方式,即程序直接控制方式、 方式、 方式、 方式。10按逻辑结构可把文件分为_文件和记录式文件两类。11.文件存储空间管理的基本方法有:空闲文件目录、_ 和_ 。 三、简答题1. 何为死锁?产生死锁的原因和必要条件是什么?2. 什么是虚拟存储器和局部性原理? 3以打印机为例说明SPOOLING的工作原理,系统如何利用SPOOLING技术将打印机模拟为虚拟打印机。 四、编程题1、在一个小盒子里存放了黑子和白子两种围棋棋子,已知黑子和白子数量皆等于N,试设计两个并发进程ProcessA和ProcessB,将这些充分混合在一起的棋子分开来。2、吃水果问题:桌上有一只盘子,每次只能放一个水果,爸爸只放苹果,妈妈只放放桔子,儿子只吃桔子,女儿只吃苹果。只要盘子空,则爸爸或妈妈可向盘中放水果,孩子只取自己需要的水果吃,请用P、V操作给出四人之间正确活动的程序。 五、计算题1、在一个请求分页存储管理系统中,一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、1、5,当分配给该作业的物理块数分别为3、4时,试计算采用FIFO和LRU算法时的缺页率,分别给出按照这两种算法处理时,顺序给出被淘汰页面的页号。2、考虑下述页面走向:1,2,5,4,2,1,5,6,4,1,3,4,7,6,3,2,1,2,3,6;当内存块数量为3时,试用FIFO和LRU两种算法分别计算出程序访问过程中所发生的缺页次数(初始所有内存块都是空的)。3、在一个批处理系统中,有两个作业进程。有一作业序列,其到达时间及估计运行时间如下表:作业到达时间估计运行时间(分钟)110:0045210:1030310:1555410:2020510:3035系统采用最高响应比优先的作业调度算法(响应比等待时间/估计运行时间)。进程的调度采用短作业优先的抢占调度算法。(1) 列出各作业的执行时间(2)计算这批作业的平均周转时间4、有5个任务A,B,C,D,E,它们几乎同时到达,预计它们的运行时间为10,6,2,4,8min,优先级分别为3,5,2,1,4,这里5为最高优先级。对于下列每一种调度算法,计算其平均进程周转时间(进程切换开销可不考虑)。1) 先来先服务(按A,B,C,D,E)算法。2) 优先级调度算法。3) 时间片轮转算法。(时间片为2min)5、已知某磁盘的进程访问磁道的序列为55、58、39、18、90、160、150、38、184;当前磁头的位置在100号磁道,磁头向磁道号增大的方向移动;计算:(1)求最短寻道时间优先算法(SSTF)的平均寻道长度(2)求电梯算法的平均寻道长度。6、.若磁头的当前位置为100磁道,磁头正向磁道号增加方向移动。现有一磁盘读写请求序列:23 ,376,205,132,19,61,190,398,29,4,18,40。若采用先来先服务、最短寻道时间优先和扫描算法,试计算出平均寻道长度各为多少? 7、某段式存储存器中采用如下段表 段号段的长度(字节)主存起始地址06602219114033002100903580123749601959请回答:(1) 画出段式管理的地址变换过程。 (2) 计算0,432、1,10、2,500、3,400的内存地址,其中方括号内的第一元素为段号,第二元素为段内地址。 (3)存取一条指令或数据至少要访问几次主存。8、在采用页式存储管理的系统中,某作业J的逻辑地址空间为4页(每页2048字节),且已知该作业的页面映像表如下。页号块号02142638试借助地址变换图(要求画出地址变换图)求出有效逻辑地址4865所对应的物理地址。 六、综合题1、假定系统中有四个进程P1、P2、P3、P4,三种类型的资源R1、R2、R3,数量分别为9、3、6,在T0时刻的资源分配情况如下表所示: 资源进程MaxAllocationNeedAvailableR1 R2 R3R1 R2 R3R1 R2 R3R1 R2 R3P1P2P3P43 2 26 1 33 1 44 2 21 0 05 1 12 1 10 0 22 2 21 0 21 0 34 2 01 1 2(1) :检查T0时刻的安全性(2) :在(1)的基础上,若P2发出请求向量Request2(1,0,1),系统可否满足?(3) :在(2)的基础上,若P1发出请求向量Request1(1,0,1),系统可否满足?(4) :在(3)的基础上,若P3发出请求向量Request3(0,0,1)系统可否满足?2、设系统中有三种类型的资源(A、B、C)和五个进程(P1、P2、P#、P¥、P5)。A资源的数量为17,B资源的数量为5,C资源的数量为20。在T0时刻系统状态如表达式和表面化所示。系统采用银行家算法实施死锁避免策略。试问:1)T0时刻是否为安全状态?若是,请给出安全序列。2)在T0时刻若进程P2请求资源(0,3,4),是否能实施资源分配,为什么?3)在2)的基础上,若进程P4请求资源(2,0,1),是否能实施资源分配,为什么?4)在此)的基础上,若进程P1请求资源(0,2,0),是否能实施资源分配,为什么? 表1 T0时刻系统状态进程最大资源需求量已分配资源数量ABCABCP1559212P2536402P34011405P4425204P5424314表2 T0时刻剩余资源数资源数型A B C剩余资源数2 3 3答案 选择题1D 2B 3C 4B 5C 6A 7C 8A 9C 10 B 11 C 12 D 13 D 14 C 15 C填空题1一次只允许一个进程使用的资源 进程中访问临界资源的那段程序代码2并发性 共享性 虚拟性 异步性3互斥 占有 非剥夺 循环等待4输入井 输出井5可供并发进程使用的资源实体数 正在等待使用临界区的进程数SPOOLING技术 临界资源就绪 等待 运行中断方式、DMA方式、通道方式字符流(流式).空闲块链、位示图简答题1.答:所谓死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都无法再向前推进。 产生死锁的原因可归结为如下两点:竞争资源和进程推进顺序非法。 产生死锁的必要条件:互斥条件、请求和保持条件、不剥夺条件、环路等待条件。2.答: 所谓虚拟存储器,是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。其逻辑容量由内存容量和外存容量之和决定,其运行速度接近于内存速度,而每位的成本却又接近于外存。局部性原理是指程序在执行时将呈现出局部性规律,即在一个较短的时间内,程序的执行仅局限于某个部分:时间局限性:如果程序中的某条指令一旦执行,则不久以后该指令可能再次执行,如果某数据被访问过,则不久以后该数据可能再次被访问。空间局限性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元将被访问,即程序在一段时间内所访问的地址,可能集中在一定的范围之内,其典型便是程序的顺序执行。3.答:当用户进程请求打印输出时,Spooling系统同意打印输出,但并不真正把打印机分配给该用户进程,而只为它做两件事:1,由输出进程在输出井中为之申请一空闲盘块区,并将要打印的数据送入其中;2,输出进程再为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入表中,再将该表挂到请求打印队列之上。如果还有进程要求打印输出,系统仍可以接受该请求,同样做上面的工作。如果打印机空闲,输出进程将从请求打印队列的队首取出一张请求表,根据表中的要求将要打印的数据从输出井传送到内存缓冲区,再由打印机进行打印。打印完毕,输出进程再查看请求打印队列中是否还有等待要打印的请求表,若有,再取出一张表,并根据其中的要求进行打印,如此下去,直至请求队列为空位置,输出进程才将自己阻塞起来,等待下次再由打印请求时才被唤醒。编程题1 BeginVar s,m:semaphore:=1,0;Int I,j=0,0;Cobegin Process A() Begin Repeat P(s); Pick_up(); V(m); I:=I+1;Until I=n End,Process B() BeginRepeat P(m);Pick_up();V(s);J:=j+1;Until j=nEnd;Coend;End.2、struct semaphore s,sp,so=1,0,0;cobegin void father (void) while(TRUE) have an apple; P(s); put an apple;V(sp);void mother (void) while(TRUE) have an orange; P(s); put an orange;V(so);void son (void) while(TRUE) P(so); get an orange; V(s); eat an orange; void daught (void) while(TRUE) P(sp); get an apple; V(s); eat an apple;coend计算题1FIFO 物理块数为3432143543215444111555333444222223331缺页率:9/12*100%=75%被淘汰页面的页号:4 3 2 1 4 3FIFO 物理块数为44321435432154444555511333344445222233331111222缺页率:10/12*100%=83.33%被淘汰页面的页号:4 3 2 1 5 4LRU 物理块数为3432143543215444111522233344441122233335缺页率:10/12*100%=83.33%被淘汰页面的页号:4 3 2 1 5 4 3LRU 物理块数为443214354321544444445333333322551111222缺页率:8/12*100%=66.67%被淘汰页面的页号:2 1 5 4 2、FIFO:14次LRU:16次3、4、 先来先服务 执行次序运行时间优先数等待时间周转时间A103010B651016C221618D411822E842230平均周转时间为:T=(10+16+18+22+30)/5=19.2min最高级优先调度:执行次序运行时间优先数等待时间周转时间A10306B65614C221424D412426E842630平均周转时间为:T=(6+14+24+26+30)/5=20min时间片轮转平均周转时间为:T=(30+22+6+16+28)/5=20.4min5、1.最短寻道时间优先算法SSTF:248/9=27.56道2.电梯算法:250/9=27.786、先来先服务被访问的下一磁道号移动距离 5545583391918219072160701501038112184146平均寻道长度:55.3最短寻道时间优先被访问的下一磁道号移动距离90105832553391638118201501321601018424平均寻道长度:27.5扫描算法被访问的下一磁道号移动距离1505016010184249094583255339163811820平均寻道长度:27.87、26512651越界2651段表始址 段表长度段长 主存起始地址660 2219140 3300100 90580 1237960 1959控制寄存器0 432段号 位移量>2).0,432物理地址为26511,10物理地址为33102,500地址不合法,产生地址越界3,400物理地址为1637(3)存取主存中的一条指令或数据至少要访问2次内存.判断是否为安全状态,关键在于能否找到一个安全序列。这与进程剩余需求量有关,列表如下8、物理地址为13057综合题1、进程 最大资源数量 已分配资源数量 还需要资源数量 剩余资源数量 A B C A B C A B C A B C P1 5 5 9 2 1 2 3 4 7 2 3 3 P2 5 3 6 4 0 2 1 3 4 P3 4 0 11 4 0 5 0 0 6 P4 4 2 5 2 0 4 2 2 1 P5 4 2 4 3 1 4 1 1 0(2)Request4(0,3,4)>Available(2,3,3),系统不能给予满足。(3)a:Request4(2,0,1)<Need4(2,2,1) b:Request4(2,0,1)<Available(2,3,3) C:系统试探将Request4(2,0,1)分配出去并修改数据结构的值进程 最大资源数量 已分配资源数量 还需要资源数量 剩余资源数量 A B C A B C A B C A B C P1 5 5 9 2 1 2 3 4 7 0 3 2 P2 5 3 6 4 0 2 1 3 4 P3 4 0 11 4 0 5 0 0 6 P4 4 2 5 4 0 5 0 2 0 P5 4 2 4 3 1 4 1 1 0此时可以寻找到安全序列<p4,p5,p1,p2,p3>,此次请求可以分配(4)a:Request1(0,2,0)<Available(0,3,2) b: Request1(0,2,0)<Need(3,4,7) C:试探分配,此时系统中的情况如下表所示:进程 最大资源数量 已分配资源数量 还需要资源数量 剩余资源数量 A B C A B C A B C A B C P1 5 5 9 2 3 2 3 2 7 0 1 2 P2 5 3 6 4 0 2 1 3 4 P3 4 0 11 4 0 5 0 0 6 P4 4 2 5 4 0 5 0 2 0 P5 4 2 4 3 1 4 1 1 0d: 剩余资源不足,所以不存在安全序列。此次分配不予满足。2、1)P4、P5、P1、P2、P32)因可用的资源的数量不够,只能推迟分配。3)P4、P5、P1、P2、P34)系统不予以分配,因为分配出去后,找不到一个安全序列。专心-专注-专业