ImageVerifierCode 换一换
格式:DOC , 页数:20 ,大小:77.50KB ,
资源ID:844578      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-844578.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([考研类试卷]计算机专业基础综合操作系统(进程管理)模拟试卷2及答案与解析.doc)为本站会员(roleaisle130)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

[考研类试卷]计算机专业基础综合操作系统(进程管理)模拟试卷2及答案与解析.doc

1、计算机专业基础综合操作系统(进程管理)模拟试卷 2 及答案与解析一、单项选择题1-40 小题,每小题 2 分,共 80 分。下列每题给出的四个选项中,只有一个选项是最符合题目要求的。1 计算机系统中判别是否有中断事件发生应是在( )。(A)进程切换时(B)执行完一条指令后(C)执行 P 操作后(D)由用户态转入核心态时2 若当前进程因时间片用完而让出处理机时,该进程应转变为( )状态。(A)就绪(B)等待(C)运行(D)完成3 一种既有利于短小作业又兼顾到长作业的作业调度算法是( )。(A)先来先服务(B)轮转(C)最高响应比优先(D)均衡调度4 作业调度程序是从处于( )状态的作业中选取一个

2、作业并把它装入主存。(A)输入(B)收容(C)执行(D)完成5 进程处于下列( ) 等待状态时,它是处于非阻塞状态。(A)等待从键盘输入数据(B)等待协作进程的一个信号(C)等待操作系统分配 CPU 时间(D)等待网络数据进入内存6 若系统中有五个并发进程涉及某个相同的变量 A,则变量 A 的相关临界区是由( )临界区构成。(A)2 个(B) 3 个(C) 4 个(D)5 个7 在多进程的并发系统中,肯定不会因竞争( )而产生死锁。(A)打印机(B)磁带机(C)磁盘(D)CPU8 通常不采用( ) 方法来解除死锁。(A)终止一个死锁进程(B)终止所有死锁进程(C)从死锁进程处抢夺资源(D)从非

3、死锁进程处抢夺资源9 进程所请求的一次打印输出结束后,将使进程状态从( )。(A)运行态变为就绪态(B)运行态变为等待态(C)就绪态变为运行态(D)等待态变为就绪态10 共享变量是指( ) 访问的变量。(A)只能被系统进程(B)只能被多个进程互斥(C)只能被用户进程(D)可被多个进程11 UNIX 系统中,进程调度采用的技术是( ) 。(A)时间片轮转(B)先来先服务(C)静态优先数(D)动态优先数12 死锁现象是由于( ) 造成的。(A)CPU 数量不足(B)内存数量不足(C)多个进程抢夺并独占资源(D)作业批处理13 临界区是指( ) 。(A)一组临界资源的集合(B)可共享的一块内存区(C

4、)访问临界资源的一段代码(D)请求访问临界资源的代码14 在一段时间内,只允许一个进程访问的资源称为( )。(A)共享资源(B)独占资源(C)临界资源(D)共享区15 不需要信号量能实现的功能是( )。(A)进程同步(B)进程互斥(C)执行的前趋关系(D)进程的并发执行16 当中断发生后,进入中断处理的程序属于( )。(A)用户程序(B) OS 程序(C)可能是用户程序,也可能是 OS 程序(D)单独的程序,既不是用户程序,也不是 OS 程序17 某计算机系统中有 8 台打印机,有 K 个进程竞争使用,每个进程最多需要 3 台打印机。该系统可能会发生死锁的 K 的最小值是( )。(A)2(B)

5、 3(C) 4(D)518 进程 P0 和 P1 的共享变量定义及其初值如下:boolean flag2;int turn=0;flag0=false;flag1=false;若进程 P0 和 P1 访问临界资源的伪代码按照下面设计:void P0()f进程 P0 while(TRUE) flag0=TRUE; turn=1;while(flag1beginrepeatwait(mutex):wait(empty):*应为 wait(full),而且还应该在 wait(mutex)的前面*nextc:=buffer(out);out:=out+1;*考虑循环,应改为:out:=(out+1)m

6、od n:*signal(mutex):*signal(empty)*consumer item in nextc:until false;end【知识模块】 操作系统24 【正确答案】 (1)定义信号量 s1 控制 P1 与 P2 之间的同步,s2 控制 P1 与 P3 之间的同步,empty 控制生产者与消费者之间的同步, mutex 控制进程间互斥使用缓冲区。(2)程序如下:vat s1=0,s2=0 ,empty=N,mutex=1 ;parbeginP1:beginX=produce(): *生成一个数*P(empty); *判断缓冲区是否有空单元*P(mutex); *缓冲区是否被

7、占用*Put():If X2=0V(s2): *如果是偶数,向 P3 发出信号*elseV(s1): *如果是奇数,向 P2 发出信号*V(mutex): *使用完缓冲区,释放 *endP2:beginP(s1); *收到 P1 发来的信号,已产生一个奇数*P(mutex): *缓冲区是否被占用*Getodd();Countodd(): =countodd()+1;V(mutex);*释放缓冲区*V(empty); *向 P1 发信号,多出一个空单元*endP3:beginP(s2) *收到 P1 发来的信号,已产生一个偶数*P(mutex); *缓冲区是否被占用*Geteven():Coun

8、teven():=counteven()+1;V(mutex); *释放缓冲区*v(empty); *向 P1 发信号,多出一个空单元*endparend【知识模块】 操作系统25 【正确答案】 (1)在串行情况下,两个程序运行时间共计 25 h;在并行方式下,处理器利用率为 50,说明处理器的工作时间占总运行时间的 50。根据已知条件,“处理器工作时间分别为 TA=18 min,T B=27 min”,即总运行时间为(18+27)50(min) ,考虑到还有 15 min 系统开销,故并行与串行的效率比为并行处理所需的时间串行处理所需要的时间总和=(18+27)50+152560=70 。

9、(2)即采用多道处理技术之后,完成程序 PA 和程序 PB 所需的时间为串行处理方法的70。因此可以说效率提高了 30。【知识模块】 操作系统26 【正确答案】 为了清楚地描述作业执行情况,我们对题目假设的情况分析如下:(1)J1 占用 102 传输 30 ms 时,J1 传输完成,抢占 J2 的 CPu,运行 10 ms,再传输 30 ms,运行 10 ms,完成。J1 从开始到完成所用的时间为:30+10+30+10=80(ms)。J2 与其并行地在 IO1 上传输 20 ms,抢占 J3 的 CPU,J2 运行 10 ms 后,被 J1 抢占 CPU,等待 10 ms 之后, J2 再次

10、得到 CPU,运行 10 ms,J2 启动 102 传输,40 ms 完成。 J2 从开始到完成所用的时间为: 20+10+10+10+40=90(ms)。J3 在 CPU 上执行 20 ms,被 J2 抢占 CPu,等待 30 ms,再运行 10ms,等待 10 ms,J3 启动 IO1 运行 20 ms 的传输,完成。J3 从开始到完成所用的时间为20+30+10+10+20=90(ms)。(2)三个作业全部完成时,CPU 的利用率为(10+20+30+10) 90=7 9=78。(3)三个作业全部完成时,外设 IO1 的利用率为(20+30+20)90=79=78。【知识模块】 操作系统

11、27 【正确答案】 此题考查学生对并发程序概念的理解。 (1)程序 A 和程序 B 顺序执行时,程序 A 执行完毕程序 B 才开始执行。两个程序共耗时 75 s,其中占用CPU 的时间为 40 s,因此顺序执行时 CPU 的利用率为 4075=53。 (2)在多道程序环境下,两个程序并发执行,其执行情况如下表所示。 由表中数据可以看出,两个程序共耗时 40 s,其中 CPU 运行时间为 40 s,故此时 CPU 的利用率为4040=100。【知识模块】 操作系统28 【正确答案】 (1)死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进。(2)产生死锁的原

12、因有二,一是竞争资源,二是进程推进顺序非法。(3)产生死锁的必要条件是互斥条件、请求和保持条件、不可剥夺条件和循环等待条件。(4)解决死锁可归纳为四种方法:预防死锁、避免死锁、检测死锁和解除死锁。(5)解决死锁的四种方法中,预防死锁是最容易实现的,而避免死锁的发生则可以使资源的利用率最高。【知识模块】 操作系统29 【正确答案】 (1)方法一:如果系统当前存在的资源数量能够满足进程的资源需求,便一次性地为进程分配其所需的全部资源;在该进程完成之后再一次性地回收全部资源。这个做法被称为摒弃“请求和保持” 条件,该方法可以预防死锁。(2)方法二:当系统中某些进程在已经占有一定数量资源的情况下,又提

13、出新的资源请求,操作系统不能立即满足该进程的需求时,该进程必须立即释放已经占有和保持的所有资源,待以后需要时再重新申请;这种可以剥夺进程资源的做法可以有效地防止死锁的产生。其被称为摒弃“不可剥夺” 条件。(3)方法三:就是采用一定的方法,将所有可提供的资源按类型排序编号,所有进程对资源的请求也必须严格按序号递增的次序提出,避免产生资源占有和资源需求的回路出现,造成死锁的产生。此方法也被称为摒弃“环路等待” 条件。【知识模块】 操作系统30 【正确答案】 此题主要考查中断概念在操作系统设计过程中的重要作用与临界区的概念。用户进程进入临界区时屏蔽所有中断,包括系统程序的中断。假如屏蔽的是用户进程,

14、确实可以保护临界资源,但如果连系统所发出的中断也被屏蔽的话,就会引起系统错误。虽然系统外中断往往与当前运行的程序无关,但如果是一些重要的硬件中断,如电源故障等,就可能会引起错误,故不可盲目屏蔽所有中断。【知识模块】 操作系统31 【正确答案】 本题考查用 P、V 操作解决进程的同步互斥问题。 (1)进程PA、PB、PC 之间的关系为:PA 与 PB 共用一个单缓冲区,PB 又与 PC 共用一个单缓冲区,其合作方式如下图所示。当缓冲区 1 为空时,进程 PA 可将一个记录读入其中;若缓冲区 1 中有数据且缓冲区 2 为空,则进程 PB 可将记录从缓冲区 1 复制到缓冲区 2 中;若缓冲区 2 中

15、有数据,则进程 PC 可以打印记录。在其他条件下,相应进程必须等待。事实上,这是一个生产者一消费者问题。为遵循这一同步规则。应设置 4 个信号量empty1、empty2、fulll、full2,信号量 emptyl 和 empty2 分别表示缓冲区 1 缓冲区2 是否为空,其初值为 1;信号量 fulll 和 full2 分别表示缓区 1 及缓冲区 2 是否有记录可供处理,其初值为 0。 (2)相应的进程描述如下: semaphore emptyl=1 : 缓冲区 1 是否为空 semaphore fulll=0: 缓冲区 1 是否有记录可供处理 semaphore empty2=1; 缓冲

16、区 2 是否为空 semaphore full2=0: 缓冲区 2 是否有记录可供处理 cobegin process PA() while(TRuE) 从磁盘读入一条记录: P(emptyl); 将记录存入缓冲区 1; V(fulll); process PB() while(TRuE) P(fulll);从缓冲区 1 中取出一条记录; V(empty1) : P(empty2) ; 将取出的记录存入缓冲区2; V(full2): process PC() while(TRUE) P(full2): 从缓冲区 2 中取出一条记录;V(empty2); 将取出的记录打印出来: coend【知识

17、模块】 操作系统32 【正确答案】 本题考查用 P、V 操作解决进程的同步互斥问题。(1)第 1 队音乐爱好者要竞争“ 待出售的音乐磁带和电池” ,而且在初始状态下系统并无“待出售的音乐磁带和电池” ,故可为该种资源设置一初值为 0 的信号量buy1;同样,需设置初值为 0 的 buy2、buy3 分别对应“待出售的随身听和电池” 、“待出售的随身听和音乐磁带” 。另外,为了同步买者的付费动作和卖者的给货动作,还需设置信号量 payment 和 goods,以保证买者在付费后才能得到所需商品。信号量 music_over 用来同步音乐爱好者听乐曲和酒吧老板的下一次出售行为。(2)具体的算法描述

18、如下:semaphore buy1=buy2=buy3=0semaphore payment=0;semaphore goods=0;semaphore music_over=0;cobegmprocess boss() 酒吧老板while(TRUE)拿出任意两种物品出售:if(出售的是音乐磁带和电池)V(buy1) ;else if(出售的是随身听和电池)V(buy2) :else if(出售的是随身听和音乐磁带)V(buy3) ;P(payment); 等待付费V(goods); 给货P(music_over); 等待乐曲结束process fanl() 第 1 队音乐爱好者while(T

19、RUE)P(buyl); 等待有音乐磁带和电池出售V(payment); 付费P(goods); 取货欣赏一曲乐曲:V(music_over); 通知老板乐曲结束process fan2() 第 2 队音乐爱好者while(TRUE)P(buy2); 等待有随身听和电池出售V(payment); 付费P(goods); 取货欣赏一曲乐曲:V(music_over); 通知老板乐曲结束process fan3() 第 3 队音乐爱好者while(TRUE)P(buy3); 等待有随身听和音乐磁带出售V(payment): 付费P(goods): 取货欣赏一曲乐曲;V(music_over):通知老板乐曲结束coend【知识模块】 操作系统

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1