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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、计算机专业基础综合操作系统(进程管理)模拟试卷 3 及答案与解析一、单项选择题1-40 小题,每小题 2 分,共 80 分。下列每题给出的四个选项中,只有一个选项是最符合题目要求的。1 下列选项中,操作系统提供给应用程序使用的接口是( )。(A)系统调用(B)中断(C)库函数(D)原语2 下列进程调度算法中,综合考虑了进程等待时间和执行时间的是( )。(A)时间片轮转调度算法(B)最短进程优先调度算法(C)先来先服务调度算法(D)高响应比优先调度算法3 单处理机系统中,可并行的是( )。I进程与进程 处理机与设备 处理机与通道 设备与设备(A)I、和(B) I、和(C) I、和(D)、和4 如

2、果有一个进程从运行状态变成等待状态,或完成工作后就撤销,则必定会发生( )。(A)进程切换(B)存储器再分配(C)时间片轮转(D)死锁5 在时间片轮转算法中,( )的大小对计算机性能有很大影响。(A)对换区(B)分页(C)时间片(D)程序段6 在操作系统中,资源分配、调度和管理的最小单位是( )。(A)进程(B)线程(C)作业(D)程序段7 正在运行的进程,因某种原因而暂时停止运行,等待某个事件的发生,此时处于( )状态。(A)运行(B)完成(C)就绪(D)阻塞8 进程从运行状态转换为就绪状态的可能原因是( )。(A)被调度程序选中占用处理机(B)等待某一事件(C)等待的事件已经发生(D)时间

3、片用完9 设 m 为同类资源数,n 为系统中并发进程数。当 n 个进程共享 m 个互斥资源时,每个进程的最大需求是 ,则下列情况中会出现系统死锁的是( )。(A)m=2 , n=1,=2(B) m=2,n=2,=1(C) m=4,n=3,=2(D)m=4 , n=2,=310 在操作系统中引入并发可以提高系统效率。若有三个进程 P1、P2 和 P3,按照P1,P2 到 P3 的优先次序运行,采用可抢占式调度,其运行过程如下:P1:计算 6 ms,IO 8 ms,计算 2 msP2:计算 12 ms,IO 6 ms,计算 2 msP3:计算 4 ms,IO 8 ms,计算 4 ms不计系统开销,

4、相比单通道顺序运行,多道并发可以节省的时间和 CPU 利用率分别是( )。(A)14 ms;79(B) 16 ms; 83(C) 12 ms; 75(D)22 ms;10011 系统产生死锁的可能原因是( )。(A)共享资源分配不当(B)系统资源不足(C)进程运行太快(D)CPU 内核太多12 若有一进程拥有 100 个线程,这些线程都属于用户级线程,则在系统调度执行时间上占用的时间片是( )。(A)1(B) 100(C) 1100(D)013 有五个进程共享一个互斥段,如果最多允许两个进程同时进入互斥段,则所采用的互斥信号量初值应该是( )。(A)5(B) 2(C) 1(D)014 2 个优

5、先级相同的并发进程 P1 和 P2,它们的执行过程如下所示,假设当前信号量 s1=0,s2=0,当前的 z=2,进程运行结束后,x、y 和 z 的值分别为( )。进程 P1 进程 P2y:=1 ; x:=1 :y:=y+2; x:=x+1 ;z:=y+1; P(s1);V(s1); x:=x+y ;P(s2); z:=x+z;y:=z+y; V(s2) :(A)5,9,9(B) 5,9,4(C) 5,12,9(D)5,12,415 设有 3 个作业,其运行时间分别为 2 小时、5 小时、3 小时,假定它们同时到达,并在同一台处理机上以单道运行方式运行,则平均周转时间最小的执行顺序是( )。(A

6、)J1,J2,J3(B) J3,J2,J1(C) J2,J1,J3(D)J1,J3,J216 关于临界区问题(critical section problem)有如下算法 (假设只有进程 P0 和 P1 可能进入该临界区),算法如下(i 为 0 或 1),该算法( )。repeatretry:if(turn一 1)turn:=i;if(turni)go to retry;turn:= 一 l:critical section(临界区)turn=0:remainder section(其他区域)until false;(A)不能保证进程互斥进入临界区,且会出现“饥饿”(B)不能保证进程互斥进入临

7、界区,但不会出现“饥饿”(C)保证进程互斥进入临界区,但会出现“饥饿”(D)保证进程互斥进入临界区,不会出现“饥饿”17 下列死锁的论述中,正确的是( )。(A)由于产生死锁的基本原因是系统资源不足,因而,预防死锁最常用的方法是根据系统规模,配置足够的系统资源(B)由于产生死锁的另一个基本原因是进程推进顺序不当,因而,预防死锁的常用方法是使进程的推进顺序合法(C)只要系统不进入不安全状态,便不会产生死锁,因而,预防死锁的常用方法是防止系统进入不安全状态(D)可以通过破坏产生死锁的四个必要条件之一或其中几个的方法来预防发生死锁18 下列关于进程的叙述中,最不符合操作系统对进程的理解的是( )。(

8、A)进程是在多程序并行环境中的完整的程序(B)进程可以由程序、数据和进程控制块描述(C)线程是一种特殊的进程(D)进程是程序在一个数据集合上运行的过程,是系统进行资源管理的一个独立单位19 下列进程调度算法中,综合考虑了 CPU 密集型进程和 IO 密集型进程的是( )。(A)时间轮转(B)优先级(C)多重队列(D)FIFO20 进程 P1、 P2 和 P3 单独执行时间分别为 10 min、15 min 和 20 min,其中处理机占用时间分别为 2 min、3 min 和 12 min。如果采用多道程序设计技术使其并发,并假设处理机的利用率可以达到 60,加上系统开销 5 min,则并发使

9、得计算机系统的效率提高了( ) 。(A)63(B) 38 (C) 74 (D)2621 进程创建的时候,不需要做的是( )。(A)填写一个该进程的进程表项(B)分配该进程适当的内存(C)将该进程插入就绪队列(D)为该进程分配 CPU二、综合应用题41-47 小题,共 70 分。22 兄弟俩共同使用一个账号,每次限存或取 10 元,存钱与取钱的进程分别如下所示:int amount=0:SAVE() TAKE()int ml; int m2:m1=amount; m2=amount:m2=m2 一 10:amount=m2;m1=m1+10:amount=m1:由于兄弟俩可能同时存钱和取钱,因此

10、两个进程是并发的。若哥哥先存了两次钱,但在第三次存钱时弟弟在取钱。请问:(1)最后账号 amount 上面可能出现的值是多少?(2)如何用 P、V 操作实现两并发进程的互斥执行?23 某系统有 R1、R2 和 R3 三种资源,在 T0 时刻 P1、P2、P3 和 P4 四个进程对资源的占用和需求情况如下表所示,此时系统的可用资源向量为(2,1,2)。(1)系统是否处于安全状态? 如安全,请给出一个安全序列。 (2)如果此时 P1 和 P2均发出资源请求向量 Request(1,0,1) ,为了保证系统的安全性,应该如何分配资源给这两个进程? 说明你所采用的策略的原因。 (3)如果(2)中两个请

11、求立即得到满足,系统此刻是否处于死锁状态?24 系统有 5 个进程,其就绪时刻(指在该时刻已进入就绪队列)、服务时间如下表所示。分别计算采用先来先服务、短作业优先、高响应比优先的平均周转时间和带权周转时间。25 有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有 100 个座位。试分别用信号量和 P、V 操作以及管程来实现用户进程的同步算法。26 设有 n 个进程共享一个互斥段,如果:(1)每次只允许一个进程进入互斥段;(2)每次最多允许 m 个进程(mn)同时进入互斥段。试问:所采用的信号量初值是否相同?信号量

12、值的变化范围如何?27 设某系统采用可抢占的优先级进程调度算法,系统在某一段时间内有 A、B 、C三个进程,进程 C 优先级最高,进程 A 优先级最低,进程 B 优先级介于进程A、C 之间,它们的就绪时刻、计算与 IO 所需时间如下表所示:(1)若系统采用多道方式运行,给出这三个进程运行完成总共所需的时间,并用图示给出三个进程的实际运行过程(忽略进行系统调度所需时间)。 (2)采用多道方式运行比采用单道方式运行可节省多少时间?28 某系统中进程有如下的状态变化图:请回答下列问题:(1)该系统采用了怎样的进程调度算法?说明理由。(2) 把图中发生 的状态变化原因填入下表中。29 中断分为哪几种类

13、型?请给出各自的含义。30 引起进程切换的时机有哪些?31 时间片轮转调度算法中,时间片值的选取对系统有什么影响?32 什么是抢占式优先级调度和非抢占式优先级调度?33 设有三个进程 A、B、C,进程 A 和进程 B 各需要运行 3 ms 的处理器时间,而进程 C 却要 24 ms 的处理器时间,分别考虑当三个进程到达顺序为 A,B,C 时及C,B,A 时,用先来先服务进行调度时各自的平均等待时间。计算机专业基础综合操作系统(进程管理)模拟试卷 3 答案与解析一、单项选择题1-40 小题,每小题 2 分,共 80 分。下列每题给出的四个选项中,只有一个选项是最符合题目要求的。1 【正确答案】

14、A【试题解析】 在现代操作系统中,操作系统提供了包括系统调用、命令接口、图形接口等方便用户使用系统资源的接口,在上述接口中,只有系统调用是提供给程序使用的。【知识模块】 操作系统2 【正确答案】 D【试题解析】 在若干进程调度算法中,时间片轮转调度算法考虑的是时间分配上的均衡,最短进程优先调度算法主要考虑的是短作业的等待时间,先来先服务调度算法考虑的是到达顺序的合理性,而只有高响应比优先调度算法做到了综合考虑进程等待时间和执行时间。【知识模块】 操作系统3 【正确答案】 D【试题解析】 在单处理机系统中,仅有一个处理机,所以在一个特定的时刻只能有一个进程能够获得处理机的使用权,因而排除选项 A

15、、B 和 C,只有选项 D 是合理的答案。【知识模块】 操作系统4 【正确答案】 A【试题解析】 此题主要考查进程切换的相关内容。进程调度将从就绪队列中另选一个进程占用处理机。使一个进程让出处理要,由另一个进程占用处理机的过程称为进程切换。若有一个进程从运行状态变成等待状态,或者进程完成工作后被撤销,则必定会发生进程切换:若一个进程从等待状态变成就绪状态,则不一定会发生进程切换。【知识模块】 操作系统5 【正确答案】 C【试题解析】 此题主要考查在时间片轮转算法中时间片大小对于系统性能的重要性。在时间片轮转算法中,时间片的大小对计算机性能有很大影响。如果时间片划分不当,则系统不能提供令用户满意

16、的响应时间。时间片的大小应选择得适当,通常要考虑以下几个因素:(1)系统对响应时间的要求;(2)就绪队列中进程的数目;(3)系统的处理能力。【知识模块】 操作系统6 【正确答案】 A【试题解析】 此题主要考查进程调度的基本概念等相关内容。进程的引入可以更好地描述系统中的并发活动。它被定义为一个具有独立功能的程序关于某个数据集合的一次运行活动。在操作系统中,进程是进行系统资源分配、调度和管理的最小独立单位,操作系统的各种活动都与进程有关。【知识模块】 操作系统7 【正确答案】 D【试题解析】 此题主要考查进程的基本状态及其转换等相关内容。在操作系统中,进程的三种基本状态之一的阻塞状态是指正在运行

17、的进程,因某种原因而暂停运行(如发生了 IO 请求等),等待某个事件的发生,导致进程不能继续运行且交出处理机时的状态。【知识模块】 操作系统8 【正确答案】 D【试题解析】 就绪状态是指一个进程获得了除处理机以外的一切资源,当得到调度时,就由就绪状态转换为运行状态;运行状态就是一个进程在处理机上正在运行。当处于运行状态的进程在运行过程中所分配的时间片用完,则会被强制撤离处理机,以便调度其他进程运行。由于原先运行的进程是非自愿地离开运行状态,所以没有其他的事件相关,只有继续在就绪队列中等候下一次的调度,所以选项 D 是正确的。选项 A 的情形是由就绪状态转换为运行状态;选项 B 的情形是由运行状

18、态转换为阻塞状态:选项 C 的情形是由阻塞状态转换为就绪状态。【知识模块】 操作系统9 【正确答案】 D【试题解析】 本题考查死锁的检测。选项 A 不会发生死锁,只有一个进程时不会发生死锁。选项 B 不会发生死锁,两个进程各需要一个资源,而系统中恰好有 2个资源。选项 C 不会发生死锁,3 个进程需要的最多资源数都是 2,系统总资源数是 4,所以总会有一个进程得到 2 个资源,运行完毕后释放资源。选项 D 可能会发生死锁,当 2 个进程各自都占有了 2 个资源后,系统再无可分配资源。由此可得出结论:当满足 mn(一 1)+1 时,不会产生死锁。【知识模块】 操作系统10 【正确答案】 A【试题

19、解析】 本题考查多道程序运行的工作方式,解决此类问题的关键一般是根据进程的优先级和时序关系画出时序图,注意 I O 设备不能抢夺,CPU 可以根据优先级来抢夺。 根据题意,进程运行时序图如下:单道运行时需要耗时: 6+8+2+12+6+2+4+8+4=52(ms) 从表中分析,并发运行时需要耗时: 6+8+2+4+4+2+2+6+4=38(ms) 节省时间为 5238=14(ms) CPU 效率为 (6+8+2+4+4+2+4)38=79【知识模块】 操作系统11 【正确答案】 A【试题解析】 系统死锁的可能原因主要是时间上和空间上的。时间上由于进程运行中推进顺序不当,即调度时机不合适,不该切

20、换进程时进行了切换,可能会造成死锁。空间上的原因是对共享资源分配不当,互斥资源部分分配又不可剥夺,极易造成死锁。那么,为什么系统资源不足不是造成死锁的原因呢?系统资源不足只会对进程造成“饥饿”,例如,某系统只有 3 台打印机,若进程运行中要申请 4 台,显然不能满足,该进程会永远等待下去。如果该进程在创建时便声明需要 4 台打印机,那么操作系统立即就会拒绝,不会创建该进程。一般地,系统由于部分分配的剩余资源不足时,可能会造成死锁,这实际上是资源分配不当的一种表现。不能以系统资源不足来描述剩余资源不足的情形。【知识模块】 操作系统12 【正确答案】 A【试题解析】 本题主要考查关于进程和线程之间

21、资源共享的知识点。在引入线程的操作系统中,线程是进程中的一个实体,是系统独立调度和分派的基本单位。但是线程自己基本上不拥有系统资源,所以它不是资源分配的基本单位,它只拥有一部分在运行中必不可少的与处理机相关的资源,如线程状态、寄存器上下文和栈等,它同样有就绪、阻塞和执行三种基本状态。它可与同属一个进程的其他线程共享进程所拥有的全部资源。一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行。由于用户线程不依赖于操作系统内核,因此,操作系统内核是不知道用户线程的存在的,用户线程是由用户来管理和调度的,用户利用线程库提供的 API 来创建、同步、调度和管理线程。所以,用户线程的调

22、度在用户程序内部进行,通常采用非抢占式和更简单的规则,也无须用户态和核心态切换,所以速度很快。由于操作系统不知道用户线程的存在,所以,操作系统把 CPU 的一时间片分配给用户进程,再由用户进程的管理器将时间分配给用户线程。那么,用户进程能得到的时间片即为所有用户线程共享。因此,正确答案应为 A。【知识模块】 操作系统13 【正确答案】 B【试题解析】 因为最多允许两个进程同时进入互斥段,所以信号量为 2。如果一个互斥段可以同时允许两个进程进入,则相当于有两个互斥段。【知识模块】 操作系统14 【正确答案】 C【试题解析】 本题考查并发进程的特点,并结合信号量进行同步的原理。由于进程并发,所以进

23、程的执行具有不确定性,在 P1、 P2 执行到第一个 P、V 操作前,应该是相互无关的。现在考虑第一个对 1 的 P、V 操作,由于进程 P2 是 P(s1)操作,所以,它必须等待 P1 执行完 V(s1)操作以后才可继续运行,此时 x、y、z 的值分别为 3、3、4,当进程 P1 执行完 V(s1)以后便在 P(s2)上阻塞,此时 P2 可以运行直到 V(s2),此时x、y、z 值分别为 5、3、 9,进程 P1 继续运行直到结束,最终的 x、y、z 值分别为5、12、9。【知识模块】 操作系统15 【正确答案】 D【试题解析】 本题考查平均周转时间的概念,周转时间=等待时间+ 运行时间,平

24、均周转时间=总周转时间n 。在本题中,选项 A 的顺序 J1,J2,J3 的平均周转时间是 (2+7+10)3=193=63(小时) ;选项 B 的顺序 J3,J2,J1 的平均周转时间是(3+8+10)3=213=7(小时);选项 C 的顺序 J2,J1,J3 的平均周转时间是(5+7+10)3=223=73(小时):选项 D 的顺序 J1,J3,J2 的平均周转时间是(2+5+10)3=173=57(小时)。因此,答案为 D。【知识模块】 操作系统16 【正确答案】 A【试题解析】 例如当 P0 执行完语句 turn:=一 1,刚好要进入临界区时,CPu 又调度 P1 执行,P1 能够顺利

25、进入临界区,不能满足互斥。当 P0 执行完临界区时,CPU 调度 P1 执行,P1 在 retry 循环,CPU 调度 P0 执行,P0 继续执行,重复以上过程,会导致 P1“饥饿”。【知识模块】 操作系统17 【正确答案】 D【试题解析】 选项 A,不可能根据系统的规模,配置足够的系统资源,因为系统的资源是有限的。选项 B,这种方法不能保证死锁不发生,而且进程推进过程很复杂,实现合理的顺序不太可能。选项 C,系统进入不安全状态不一定会产生死锁,防止系统进入不安全状态不太可能,故不是常用的方法。【知识模块】 操作系统18 【正确答案】 A【试题解析】 A 的说法不够全面。【知识模块】 操作系统

26、19 【正确答案】 C【试题解析】 多重队列通过将进程分类,在系统中设置若干队列进行进程调度,综合考虑了 CPU 密集型进程和 IO 密集型进程。【知识模块】 操作系统20 【正确答案】 D【试题解析】 本题考查并发的计算。由于本题并没有详细描述进程的执行过程,所以,计算是以总体效率来进行的。总体效率是指并发执行所花费的时间值与原时间值相比提高了多少。依本题题意,可以计算出处理机所需时间为2+3+12=17(min),按处理机 60的利用率,并发所需总时间为1760+5=3333(min) ,单道运行时所需要的总时间为 10+15+20=45(min),则系统效率提高了(453333)45=2

27、6。注意题意,并发时不要忘记系统开销 5 min。单道执行时由于较少需要进程切换,因此系统开销一般忽略不计。并发时系统要进行大量的进程切换,因此,系统开销有时会比较大,此时就应该纳入计算。【知识模块】 操作系统21 【正确答案】 D【试题解析】 本题考查的是进程创建的过程。进程创建最主要的工作是为该进程申请并填写一张进程表。进程表内包含有多个与进程有关的数据结构,例如,进程号、进程组、进程的优先级、进程所分配的内存、进程需要的 IO 设备、进程要打开的文件等。当填写好了进程表以后,进程创建模块便将进程表按照该系统规定的法则插入到就绪队列的适当位置,等待进程调度模块进行下一步的调度。所以进程创建

28、的过程中不会包含分配 CPU 的过程,这不是进程创建的工作,而是调度器的工作。【知识模块】 操作系统二、综合应用题41-47 小题,共 70 分。22 【正确答案】 本题考查 P、V 操作实现进程的互斥。(1)哥哥存两次钱后,共享变量 amount 的值为 20。哥哥的第三次存钱与弟弟的取钱同时进行,如果两者顺序执行,则最后 amount 的值为 20:如果在一个进程的执行过程中进行 CPU 调度,转去执行另一进程,则最后 amount 的值取决于amount=m1 及 amount=m2 的执行先后次序,若前者先执行,则最后 amount 的值为10,若后者先执行,则最后 amount 的值

29、为 30。因此,最后账号 amount 上可能出现的值有 10、20、30。(2)在上述问题中,共享变量 amount 是一个临界资源,为了实现两并发进程对它的互斥访问,可为它设置一初值为 1 的互斥信号量 mutex,并将上述算法修改为:int amount=0:semaphore mutex=1: 互斥访问 amount 变量的信号量cobeginprocess SAVE()int m1;P(mutex);m1=amount;m1=m1+10:amount=m1:V(mutex);process TAKE()int m2;P(mutex);m2=amount;m2=m210:amount=

30、m2:V(mutex);coend【知识模块】 操作系统23 【正确答案】 本题考查采用银行家算法避免死锁。 (1)利用安全性算法对 T0 时刻的资源分配情况进行分析,可得到如下表所示的安全性检测情况。可以看出,此时存在一个安全序列P2, P3,P4,P1,故该系统是安全的。(2)若此时 P1 发出资源请求 Request1(1,0,1) ,按银行家算法进行检查:Requestl(1,0 ,1)Needl(2,2,2)Requestl(1,0,1)Available(2,l,2) 试分配并修改相应的数据结构,由此形成的资源分配情况如下表所示。(3)如果(2)中两个请求立即得到满足,此刻系统并没

31、有立即进入死锁状态,因为这时所有进程没有提出新的资源申请,全部进程均没有因资源请求没有得到满足而进入阻塞状态。只有当进程提出资源请求,且全部进程都进入阻塞状态时,系统才处于死锁状态。【知识模块】 操作系统24 【正确答案】 本题考查各种调度算法的执行以及性能分析。 (1)采用先来先服务调度时,执行作业的次序为 P1、P2 、P3、P4、P5,如下表所示。(2)采用短作业优先调度时,执行作业的次序为 Pl、P2、P5 、P3、P4,如下表所示。(3)采用高响应比优先调度时,响应比= 响应时间运行时间。在时刻 0,只有进程P1 就绪,执行 P1,在时刻 3 结束。此时刻只有 P2 就绪,执行 P2

32、,在时刻 9 结束。此时刻 P3、P4、P5 均就绪,计算它们的响应比分别为 225、16、15,则选择执行 P3,在时刻 13 结束。此时刻 P4、P5 均就绪,计算它们的响应比分别为24、35,则选择执行 P5,在时刻 15 结束。此时刻只有 P4 就绪,执行 P4,在时刻 20 结束。整个执行作业的次序为 P1、P2 、P3、P5、P4 ,如下表所示。【知识模块】 操作系统25 【正确答案】 (1)使用信号量和 P、V 操作:var A:array1100of Rec ;Rec=recordnumber:integer;name:string;end;i:integer;for i:=1

33、 to 100 doAinumber:=i;Ai name:=null;mutex,seatcount:semaphore: semaphore:信号量mutex:=1;seatcount:=100 ;cobeginprocess readeri(var readername:string)(i=1,2,)P(seatcount);P(mutex);for i:=1 to 100 doi+if Ainame=null then Ai name :=readername; 读者登记*必须采用这种方式,因为该空位是随机产生的。我们无法知道哪个读者何时离开*V(mutex)进入阅览室,座号 i,坐下

34、读书;P(mutex); 读书完毕,需要退场Ainame:=null;V(mutex):V(seatcount);离开阅览室:coend(2)使用管程操作:TYPE readbook=monitorVAR R:condition;i,seatcount:integer;name:array1100 of string;DEFINE readercome,readerleave ;USE check,wait ,signal, release:procedure readercome(readername)begincheck(IM):if seatcount100 wait(R,IM)seat

35、count:=seatcount+1:for i=1 to 100 do i+if namei=null then namei:=readername;get the seat number=i;release(IM);endprocedure readerleave(readername)begincheck(IM);seatcount-一;for i=1 to 100 do i+if namei=reademame then namei:=null ;release(IM);endbeginseatcount:=100;name:=null :endcobegmprocess reader

36、i(i=1,2)beginreadercome(readername) :read the bookreaderleave(readername):leave the readroomendcoend【知识模块】 操作系统26 【正确答案】 所采用的互斥信号量初值不同。(1)互斥信号量初值为 1,变化范围为-n+1,1。当没有进程进入互斥段时,信号量值为 1;当有 1 个进程进入互斥段但没有进程等待进入互斥段时,信号量值为 0;当有 1 个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为一 1;最多可能有 n1 个进程等待进入互斥段,故此时信号量的值应为一(n1) ,也就是一 n+1。(

37、2)互斥信号量初值为 m,变化范围为一 n+m,m。当没有进程进入互斥段时,信号量值为 m;当有 1 个进程进入互斥段但没有进程等待进入互斥段时,信号量值为 m 一 1;当有 m 个进程进入互斥段且没有一个进程等待进入互斥段时,信号量值为 0:当有 m 个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为一 1:最多可能有 n 一 m 个进程等待进入互斥段,故此时信号量的值应为一(nm),也就是一 n+m。【知识模块】 操作系统27 【正确答案】 (1)若系统采用多道方式运行,这三个进程运行完成总共所需的时间为 68 ms。(2)采用单道方式运行,这三个进程运行完成总共所需的时间为 113

38、 ms。采用多道方式运行比采用单道方式运行节省时间:11368=45(ms)【知识模块】 操作系统28 【正确答案】 (1)该系统采用的是时间片轮转调度算法。 该调度算法让就绪进程按就绪的先后次序排成队列,每次总是选择就绪队列中的第一个进程占用处理器,但规定只能使用一个时间片。如果一个时间片用完,进程工作尚未结束,则它也必须让出处理器而被重新排到就绪队列的末尾,等待再次运行,当再次轮到运行时,重新开始使用一个新的时间片。这样,就绪队列中的进程就依次轮流地占用处理器运行。(2)【知识模块】 操作系统29 【正确答案】 (1)硬件故障中断。它是由于机器故障造成的,例如,电源故障、主存出错等。(2)

39、程序中断。这是由于程序执行到某条机器指令时可能出现的各种问题而引起的中断,例如,发现定点操作数溢出、除数为“0”、地址越界、使用非法指令码、目态下的用户使用了特权指令等。(3)外部中断。这是由各种外部事件引起的中断,例如,按压了控制板上的一个中断键、设置的定时时钟的时间周期到。(4)输入输出中断。输入输出控制系统发现外围设备完成了输入输出操作或在执行输入输出操作时通道或外围设备产生错误而引起的中断。(5)访管中断。它是正在运行的进程为了请求调用操作系统的某个功能而执行一条访管指令所引起的中断。例如,用户要求分配一台外围设备、要求分配一些主存区域、要求启动外围设备读一批数据等。【知识模块】 操作

40、系统30 【正确答案】 我们把处理机从一个进程转到另一个进程称为进程切换。引起进程切换的时机有以下几种情况:(1)一个进程从运行状态变为等待状态。(2)一个进程从运行状态变为就绪状态。(3)一个进程从等待状态变为就绪状态。(4)一个进程运行完成而撤离系统。【知识模块】 操作系统31 【正确答案】 (1)时间片取值的大小关系到计算机系统的效率和用户的满意度,所以,时间片的值应根据进程要求系统给出应答的时间和进入系统的进程数来决定。如果要求系统快速应答,则时间片小些,这样使轮转一遍的总时间减少而可对进程尽快应答。如果进程数少,则时间片可以大些,这样可减少进程调度的次数,提高系统效率。(2)对每个进

41、程可规定相同的时间片,但有的系统对不同的进程规定不同的时间片,例如,对很少使用外围设备而需要运算时间长的进程,给一个大一些的时间片,以达到减少调度次数,加快进程执行速度的目的。但应注意到,时间片值过大时该算法退化为先来先服务;时间片值过小时加重系统开销。【知识模块】 操作系统32 【正确答案】 采用“ 非抢占式 ”调度时,一旦有某个高优先数的进程占用了处理器,就一直让它运行下去,直到该进程由于自身的原因主动让出处理器或进程执行结束而让出处理器。此时,进程调度才重新再按优先数选择另一个占用处理器的进程。采用“可抢占 ”式的调度方式严格保证任何时刻总是让具有最高优先数的进程在处理器上运行。也就是说

42、,当某一进程在处理器上运行时,一旦有另一个更高优先数的进程就绪,进程调度就要剥夺正在处理器上运行的进程使用处理器的权力,抢回分配给它的处理器,而把处理器让给具有更高优先数的进程使用。这种抢占式的优先数调度算法在实时系统中很有用。例如,在实际系统中可把处理紧急情况的报警进程赋予最高优先数,一旦有紧急事件发生,触发报警进程就绪,进程调度就让这个报警进程抢占处理器进行紧急处理和发出警告信号。【知识模块】 操作系统33 【正确答案】 (1)当三个进程到达顺序为 A、B 、c 时,按照先来先服务的顺序,进程 A 先占用处理器,进程 B 需等待 3 ms 后才能去占用处理器,进程 C 在等待 6 ms 的时间后可以占用处理器。于是,它们的平均等待时间为(0+3+6)3=3(ms) 。(2)如果进程是按 C、B、A 的次序排入队列,则进程 C 先占用处理器运行 24 ms 后才能让进程 B 占用,即进程 B 需等待 24 ms,而进程 A 在等了 27 ms 后才可占用处理器,现在这三个进程的平均等待时间为(27+24+0)3=17(ms)。可见当运行时间长的进程先就绪时,先来先服务算法使系统效率受到影响。【知识模块】 操作系统

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