操作系统第4章习题带答案教学教材.doc

操作系统第4章习题带答案教学教材.doc

ID:57126845

大小:104.00 KB

页数:24页

时间:2020-08-03

操作系统第4章习题带答案教学教材.doc_第1页
操作系统第4章习题带答案教学教材.doc_第2页
操作系统第4章习题带答案教学教材.doc_第3页
操作系统第4章习题带答案教学教材.doc_第4页
操作系统第4章习题带答案教学教材.doc_第5页
资源描述:

《操作系统第4章习题带答案教学教材.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、操作系统第4章习题带答案精品文档第四章一、问答题1、同步机制应遵循的准则是什么?2、死锁产生的4个必要条件是什么?它们是彼此独立的吗?3、简述死锁的定义和死锁产生的原因。4、简述死锁定理和解除死锁的方法。5、什么是安全状态?怎么判断系统是否处于安全状态?6、同步机制应遵循的准则是什么?7、死锁产生的4个必要条件是什么?它们是彼此独立的吗?二、计算题(共20分)1、当前系统中出现下述资源分配情况:AllocationNeedAvailableP0003200121622P110001750P213542356P303320652P400140656利用银行家算法,试问如果进程P2

2、提出资源请求Request(1,2,2,2)后,系统能否将资源分配给它?答:Request(1,2,2,2)<=(2,3,5,6)申请合法Request(1,2,2,2)<=Available,开始试探性分配,Available=(0,4,0,0)测试系统是否安全:work=Available,finish=1收集于网络,如有侵权请联系管理员删除精品文档没有进程的need满足<=work系统处于不安全状态,系统拒绝此次资源分配。2、当前某系统有同类资源7个,进程P,Q所需资源总数分别为5,4。它们向系统申请资源的次序和数量如表所示。回答:次序进程申请量123456QPQPPQ2

3、11321问:采用死锁避免的方法进行资源分配,请你写出系统完成第3次分配后各进程占有资源量,在以后各次的申请中,哪次的申请要求可先得到满足?答:第1次申请,Q申请资源2,系统安全,分配第2次申请,P申请资源1,系统安全,分配第3次申请,Q申请资源1,系统安全,分配资源剩余3个,P占有1个资源,Q占有3个资源,第4次分配不安全,拒绝,第5分配系统安全,满足。3、一个计算机系统有6个磁带驱动器和4个进程。每个进程最多需要n个磁带驱动器。问当n为什么值时,系统不会发生死锁?并说明理由答:n=2理由同第4题(进程资源最大需求-1)×进程数量+1≤系统资源数量收集于网络,如有侵权请联系管

4、理员删除精品文档4、若系统有某类资源m×n+1个,允许进程执行过程中动态申请该类资源,但在该系统上运行的每一个进程对该资源的占有量任何时刻都不会超过m+1个。当进程申请资源时只要有资源尚未分配完则满足它的申请,但用限制系统中可同时执行的进程数来防止发生死锁,你认为进程调度允许同时执行的最大进程数应该是多少?并说明原因。答;假设系统中有x个进程的进程,则资源至少要有m×x+1个才不会产生死锁,由于系统资源有m×n+1个,则可列出不等式:m×x+1≤m×n+1解不等式,得到x≤n,所以系统允许同时执行的最大进程数为n。证明:假设在系统允许同时执行的最大进程数为n时,仍然出现了死锁,

5、此时应该存在一组进程都在等待资源,而且系统已无资源可用。则此时该组进程最多n个,每个进程没有执行完时最多占用m个资源,所以现在系统分配出去的资源最多m×n,少于系统资源m×n+1,所以不可能有死锁出现。若系统进程数量为n+1,每个进程占有最大资源数量为m+1,则会出现死锁。例如,当其中n个进程均占有m个资源,剩下的一个进程占有了最后一个资源,所有进程都都还需要资源才可运行完,而此时系统已经无资源可用,产生死锁。因此,系统允许同时执行的最大进程数为n时系统不会有死锁发生5、设系统中有3种类型的资源A、B、C和5个进程P0、P1、P2、P3、P4,A资源的数量为10,B资源的数量为

6、5,C资源的数量为7。在T0时刻系统状态如下表所示。系统采用银行家算法实施死锁避免策略。(12分)MaxAllocationNeedAvailableABCABCABCABCP0P1753010743332收集于网络,如有侵权请联系管理员删除精品文档P2P3P4322200122902302600222211011433002431①.T0时刻是否为安全状态?若是,请给出安全序列。②在T0时刻若进程P1发出资源请求Request(1,0,2),是否能够实施资源分配?③在②的基础上P4发出资源请求Request(3,3,0),是否能够实施资源分配?④在③的基础上P0发出资源请求R

7、equest(0,2,0),是否能够实施资源分配?见课本五、应用题1、如果有三个进程R、W1、W2共享一个缓冲器B,而B中每次只能存放一个数。当缓冲器中无数时,进程R可以将从输入设备上读入的数存放到缓冲器中。若存放到缓冲器中的是奇数,则允许进程W1将其取出打印;若存放到缓冲器中的是偶数,则允许进程W2将其取出打印。同时规定:进程R必须等缓冲区中的数被取出打印后才能再存放一个数;进程W1或W2对每次存入缓冲器的数只能打印一次;W1和W2都不能从空缓冲中取数。写出这三个并发进程能正确工作的程序。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。