《操作系统原理》5资源管理(死锁)习题

合集下载

操作系统教程习题答案

操作系统教程习题答案
核心级线程由操作系统内核进行管理。操作系统内核为应用程序提供相应的系统调用和应用程序接口API,供用户程序创建执行撤销线程。
1.单项选择题
(1)进程创建原语的任务是。
A、为进程编制程序B、为进程建立PCB表
C、为进程分配CPU D、为进程分配所需的各种资源
(2)进程从执行状态变为阻塞态的原因可能是。
A、D、某个进程被唤醒
(3)进程由执行态变化到就绪态的可能原因是。
A、等待的事件发生B、高优先级进程到来
3.基本概念的解释和辨析
(1)进程和程序
a.进程是动态的,程序是静态的
b.进程是暂时的,程序是永久的
c.进程与程序的组合结构不同
(2)进程和作业
一个正在执行的进程称为作业,作业可包含一个或多个进程
(3)进程和线程
a.地址空间资源:不同的进程地址空间是相互独立的,而统一进程的各线程共享同一地址空间
b.并发性:引入线程的操作系统中,不仅进程之间可以并发执行,而且一个进程的多个线程之间亦可并发执行
单项选择题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有3个进程共享个同类资源为使系统不会发生死锁每个进程最多可以申请个资源

操作系统原理课后习题答案

操作系统原理课后习题答案

操作系统原理课后习题答案操作系统原理课后习题答案操作系统原理是计算机科学与技术专业的一门重要课程,它涉及到计算机操作系统的基本概念、原理和实践。

在学习过程中,我们不可避免地会遇到一些习题,下面我将为大家提供一些操作系统原理课后习题的答案。

1. 什么是操作系统?答:操作系统是计算机系统中的一个重要组成部分,它是用户与计算机硬件之间的桥梁,负责管理和控制计算机系统的各种资源,提供良好的用户界面,并且实现对应用程序的支持和管理。

2. 操作系统的主要功能有哪些?答:操作系统的主要功能包括进程管理、内存管理、文件系统管理、设备管理和用户接口等。

进程管理负责对进程的创建、调度和终止进行管理;内存管理负责对内存空间的分配和回收进行管理;文件系统管理负责对文件的存储和访问进行管理;设备管理负责对计算机硬件设备的管理和控制;用户接口负责提供给用户友好的操作界面。

3. 什么是进程和线程?答:进程是指在计算机系统中正在运行的一个程序,它是操作系统对一个正在执行的程序的抽象。

线程是进程中的一个执行单元,一个进程可以包含多个线程,这些线程共享进程的资源,但每个线程都有自己的执行路径和执行状态。

4. 进程间通信的方式有哪些?答:进程间通信的方式包括共享内存、消息传递、管道和信号等。

共享内存是指多个进程共享同一块内存空间,通过读写这块共享内存来实现进程间的通信;消息传递是指进程通过发送和接收消息来进行通信;管道是一种特殊的文件,可以用于进程间的单向通信;信号是一种软件中断,用于通知进程发生了某个事件。

5. 什么是死锁?如何避免死锁?答:死锁是指在多个进程之间,每个进程都在等待其他进程释放资源,从而导致所有进程都无法继续执行的情况。

为了避免死锁,可以采取以下几种方法:避免使用互斥、占有和不可剥夺的资源;按照相同的顺序申请资源,释放资源时按照相反的顺序释放;引入资源的优先级,保证每个进程都可以获得它所需要的资源;引入超时机制,当进程等待时间过长时,释放已经占有的资源。

第5章操作系统习题(死锁)

第5章操作系统习题(死锁)

一、选择题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、静态C、动态D、短作业8、当进程数大于资源数时,进程竞争资源会产生死锁。

A、一定B、不一定9、检测出发生死锁时,可以通过撤消一个进程解除死锁。

上述描述是。

A、正确的B、错误的10、在下列解决死锁的方法中,属于死锁预防策略的是。

A、银行家算法B、资源有序分配方法C、死锁检测法D、资源分配图化简法12、以下叙述中正确的是。

A、调度原语主要是按照一定的算法,从阻塞队列中选择一个进程,将处理机分配给它。

B、预防死锁的发生可以通过破坏产生死锁的四个必要条件之一来实现,但破坏互斥条件的可能性不大。

C、进程进入临界区时要执行开锁原语。

D、既考虑作业等待时间,又考虑作业执行时间的调度算法是先来先服务算法。

二、填空题1、进程的调度方式有两种,一种是,另一种是。

2、死锁是指在系统中的多个无限期地等待永远不会发生的条件。

3、一种最常用的进程调度算法是把处理机分配给具有最高优先权的进程。

《操作系统》习题集:第6章死锁

《操作系统》习题集:第6章死锁

《操作系统》习题集:第6章死锁第6章死锁-习题集⼀、选择题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. 系统中没有采⽤SPOOLing技术B. 使⽤的P、V操作过多C. 有共享资源存在D. 资源分配不当7.产⽣死锁的4个必要条件是:互斥、()、循环等待和不剥夺。

【*,联考,?】A. 请求与阻塞B. 请求与保持C. 请求与释放D. 释放与阻塞8.⼀个进程在获得资源后,只能在使⽤完资源后由⾃⼰释放,这属于死锁必要条件的()。

【*,联考】A. 互斥条件B. 请求和释放条件C. 不剥夺条件D. 环路等待条件9.死锁的预防是根据()⽽采取措施实现的。

【*,★,联考】A. 配置⾜够的系统资源B. 使进程的推进顺序合理C. 破坏死锁的四个必要条件之⼀D. 防⽌系统进⼊不安全状态10.资源的有序分配策略可以破坏死锁的()条件。

(完整版)操作系统原理复习试题(带答案)12023年修改整理

(完整版)操作系统原理复习试题(带答案)12023年修改整理

千里之行,始于足下操作系统原理试题一. 名词解释题1. 中断2. 进程操纵块(PCB)3. 虚时钟4. 段式治理5. 文件操纵块(FCB)6. 对换(SWAPPING)7. 系统调用8. 绝对路径名9. 特别文件10. 虚设备技术11. 管道 12. 中断接收 13. 恢复现场 14. 页式治理 15. 作业步16. 字符流文件 17. 通道 18. 页面淘汰 19. 多道程序设计 20. 死锁21. 当前名目 22. 快表 23. 作业调度 24. 原语 25. 中断屏蔽 26. 地址映射27. 文件名目 28. 死锁幸免 29. 原语 30. 作业操纵块 31. CPU状态32. 虚存 33. 磁盘调度 34. 缓冲技术 35. 中断 36. 进程调度 37. 虚设备39. 死锁预防 40. 文件名目 41. 原语 42. 交换技术 43. 互斥区二. 填空题1. 分时系统追求的目标是_____.2. 用户进程从目态(常态)转换为管态(特态)的唯一途径是____.3. 从静态的观点看, 操作系统中的进程是由程序段、数据和____三部分组成.4. 在系统内核中必须包括的处理模块有进程调度、原语治理和____.5. 批处理操作系统中, 作业存在的唯一标志是____.6. 操作系统中的一种同步机制, 由共享资源的数据及其在该数据上的一组操作组成,该同步机制称为________.7. 在可变分区存储治理中, 为实现地址映射, 一般由硬件提供两个寄存器, 一个是基址寄存器, 另一个是____.8. 联想寄存器(相联存储器)的最重要、最独到的特点是____.9. 在虚拟段式存储治理中, 若逻辑地址的段内地址大于段表中该段的段长, 则发生____中断.10. 文件系统中若文件的物理结构采纳顺序结构, 则文件操纵快FCB 中关于文件的物理位置应包括____.11. 在操作系统设计时确定资源分配算法, 以消除发生死锁的任何大概性, 这种解决死锁的方法是____.12. 抉择对资源需求不同的作业进行合理搭配, 并投入运行是由____来完成的.13. 实时系统应具有两个基本特征: 及时性和______.14. 磁带上的文件只能采纳_____存取方式.15. 不让死锁发生的策略能够分成静态和动态的两种, 死锁幸免属于_____.16. 在UNIX系统中, 文件分成三类, 即一般文件, 名目文件和_____.17. 在磁盘调度策略中有大概使I/O请求无限期等待的调度算法是_____.18. 进程获得了除CPU外的所有资源, 一旦获得CPU即可执行, 这时进程处于_____状求知若饥,虚心若愚。

《操作系统原理》考题及答案

《操作系统原理》考题及答案

《操作系统原理》期末考试题班级学号姓名一、单项选择题(每题2分,共26分)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.有上邻空闲区但无下邻空闲区C.有下邻空闲区但无上邻空闲区D.有上邻空闲区也有下邻空闲区8.系统“抖动”现象的发生不是由()引起的。

A.置换算法选择不当B.交换的信息量过大C.主存容量不足D.请求页式管理方案9.在进程获得所需全部资源,唯却CPU时,进程处于()状态。

A.运行B.阻塞C.就绪D.新建10.要页式存储管理系统中,将主存等分成()。

A.块B.页C.段长D.段11.系统利用 SPOOLING技术实现()。

A.对换手段B.虚拟设备C.系统调用D.虚拟存储12.设备从磁盘驱动器中读出一块数据的总时间为()。

A.等待时间 + 传输时间B.传输时间C.查找时间 + 传输时间D.延迟时间 + 查找时间 + 传输时间13.如果允许不同用户的文件可以具有相同的文件名,通常采用()来保证按名存取的安全。

操作系统——精髓与设计原理(第五章答案)

操作系统——精髓与设计原理(第五章答案)
hut(); • signal(returnreindeer)//释放驯鹿返回互斥信号量} • } • Kids i:{making toys; • wait(needhelp);//获得需要帮助信号量 • Kidscount++; • if elvescount==3 • signal(wakesanta);//释放唤醒圣诞 //老人信号量 • else signal(needhelp);//释放需要帮助互 //斥信号量 • }
• 5.9 • 错误情形:假设有2个进程都调用Wait且s的 初值为0。在第一个进程执行完 SignalB(mutex)且尚未执行WaitB(delay)时, 第二个进程开始调用Wait,也停在同一点 (即SignalB(mutex)和WaitB(delay)之间)。 这时,s的值为-2,而mutex是打开的。假如 有另外2个进程在这时相继调用了Signal, 那么他们每个都会做SignalB(delay)操作, 但程序中后一个SignalB将没有意义。
总述: • 当一个进程希望进入其临界区,它将得到 一张票,票的号码将是所有等待进入临界 区或已在临界区的进程所得到票的号码中 最大者加1。拥有最小票号的进程将率先进 入临界区。如果有多个进程得到的票具有 相同的号码,则进程号更小的进程将更占 优势。当一个进程离开其临界区,它将重 置其中票号为0。
• b.解释此算法如何避免死锁 • 死锁时的情形:每个人都拿到了顺序号,但 都拿不到面包。 • 在本算法中即使顺序号相同,但数组下标是 不同的。所以进程总可推进不会发生死锁。 • c.解释此算法如何加强互斥; • (1)对临界资源面包是按照顺序号互斥的使用 • (2)对number数组的操作通过写操作前置true 保证其它进程此时不能对其读,从而保证读 写互斥。

死锁知识题及答案解析

死锁知识题及答案解析

第三章死锁习题一、填空题1.进程的“同步”和“互斥”反映了进程间①和②的关系。

【答案】①直接制约、②间接制约【解析】进程的同步是指在异步环境下的并发进程因直接制约而互相发送消息,进行相互合作、相互等待,使得各进程按一定的速度执行的过程;而进程的互斥是由并发进程同时共享公有资源而造成的对并发进程执行速度的间接制约。

2.死锁产生的原因是①和②。

【答案】①系统资源不足、②进程推进路径非法【解析】死锁产生的根本原因是系统的资源不足而引发了并发进程之间的资源竞争。

由于资源总是有限的,我们不可能为所有要求资源的进程无限地提供资源。

而另一个原因是操作系统应用的动态分配系统各种资源的策略不当,造成并发进程联合推进的路径进入进程相互封锁的危险区。

所以,采用适当的资源分配算法,来达到消除死锁的目的是操作系统主要研究的课题之一。

3.产生死锁的四个必要条件是①、②、③、④。

【答案】①互斥条件、②非抢占条件、③占有且等待资源条件、④循环等待条件【解析】互斥条件:进程对它所需的资源进行排它性控制,即在一段时间内,某资源为一进程所独占。

非抢占条件:进程所获得的资源在未使用完毕之前,不能被其它进程强行夺走,即只能由获得资源的进程自己释放。

占有且等待资源条件:进程每次申请它所需的一部分资源,在等待新资源的同时,继续占有已分配到的资源,循环等待条件:存在一进程循环链,链中每一个进程已获得的资源同时被下一个进程所请求。

4.在操作系统中,信号量是表示①的物理实体,它是一个与②有关的整型变量,其值仅能由③原语来改变。

【答案】①资源,②队列,③P-V【解析】信号量的概念和P-V原语是荷兰科学家E.W.Dijkstra提出来的。

信号量是一个特殊的整型量,它与一个初始状态为空的队列相联系。

信号量代表了资源的实体,操作系统利用它的状态对并发进程共享资源进行管理。

信号量的值只能由P-V原语来改变。

5.每执行一次P原语,信号量的数值S减1。

如果S>=0,该进程①;若S<0,则②该进程,并把它插入该③对应的④队列中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第五章死锁练习题(一)单项选择题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.死锁的避免C.死锁的检测D.死锁的防止、避免和检测的混合(二)填空题1.若系统中存在一种进程,它们中的每一个进程都占有了某种资源而又都在等待其中另一个进程所占用的资源。

这种等待永远不能结束,则说明出现了______。

2.如果操作系统对______或没有顾及进程______可能出现的情况,则就可能形成死锁。

3.系统出现死锁的四个必要条件是:互斥使用资源,______,不可抢夺资源和______。

4.如果进程申请一个某类资源时,可以把该类资源中的任意一个空闲资源分配给进程,则说该类资源中的所有资源是______。

5.如果资源分配图中无环路,则系统中______发生。

6.为了防止死锁的发生,只要采用分配策略使四个必要条件中的______。

7.使占有并等待资源的条件不成立而防止死锁常用两种方法:______和______.8静态分配资源也称______,要求每—个进程在______就申请它需要的全部资源。

9.释放已占资源的分配策略是仅当进程______时才允许它去申请资源。

10.抢夺式分配资源约定,如果一个进程已经占有了某些资源又要申请新资源,而新资源不能满足必须等待时、系统可以______该进程已占有的资源。

11.目前抢夺式的分配策略只适用于______和______。

12.对资源采用______的策略可以使循环等待资源的条件不成立。

13.如果操作系统能保证所有的进程在有限的时间内得到需要的全部资源,则称系统处于______。

14.只要能保持系统处于安全状态就可______的发生。

15.______是一种古典的安全状态测试方法。

16.要实现______,只要当进程提出资源申请时,系统动态测试资源分配情况,仅当能确保系统安全时才把资源分配给进程。

17.可以证明,M个同类资源被n个进程共享时,只要不等式______成立,则系统一定不会发生死锁,其中x为每个进程申请该类资源的最大量。

18.______对资源的分配不加限制,只要有剩余的资源,就可把资源分配给申请者。

19.死锁检测方法要解决两个问题,一是______是否出现了死锁,二是当有死锁发生时怎样去______。

20.对每个资源类中只有一个资源的死锁检测程序根据______和______两张表中记录的资源情况,把进程等待资源的关系在矩阵中表示出来,以判别是否出现死锁。

21.如果资源类中含有若干个资源,应根据进程对各类资源的占有量、______和各类资源的______来考虑是否有死锁存在。

22.解除死锁的方法有两种,一种是______一个或几个进程的执行以破坏循环等待,另一种是从涉及死锁的进程中______23.中断某个进程并解除死锁后,此进程可从头开始执行,有的系统允许进程退到发生死锁之前的那个______开始执行。

24.操作系统中要兼顾资源的使用效率和安全可靠,对不同的资源采用不同的分配策略,往往采用死锁的______、避免和______的混合策略。

(三)简答题1.何谓死锁?产生死锁的原因是有哪些?2.可以通过哪些途径防止死锁的产生?3.什么叫系统处于安全状态?常用什么方法保持系统处于安全状态?4.简述解决死锁问题的三种方法。

5.用抢夺资源的方法解除死锁时要注意什么问题?(四)应用题1.若有10个同类资源供三个进程共享,下表列出了这三个进程目前己占资源和最大需求量的情况,现在这三个进程P1,P2,P3又分别申请1个、2个、1个资源,请问:(1)能否先满足进程P2的要求?为什么?(2)如何为这三个进程分配资源比较合适?进程已占资源数最大需求量P1 3 7P2 3 8P3 2 32.现有五个进程A,B,C,D,E共享R1,R2,R3,R4这四类资源,进程对资源的需求量和目前分配情况如下表。

若系统还有剩余资源数分别为R1类2个,R2类6个,R3类2个和R4类1个,请按银行家算法回答下列问题:(1)目前系统是否处于安全状态? (2)现在如果进程D提出申请(2,5,0,0)个资源,系统是否能为它分配资源?进程已占资源数最大需求量R1 R2 R3 R4 R1 R2 R3 R4A 3 6 2 0 5 6 2 0B 1 0 2 0 1 0 2 0C 1 0 4 0 5 6 6 0D 0 0 0 1 5 7 0 1E 5 3 4 1 5 3 6 23.假设系统配有相同类型的m个资源,系统中有n个进程,每个进程至少请求一个资源(最多不超过m)。

请证明,当n个进程最多需要的资源数之和小于(m+n)时,该系统不会发生死锁。

4.若某一系统有同类资源12个,进程A,B,C所需的资源总数分别为5,10,7。

下表中列出了这些进程向系统申请资源的次序和数量,请回答:(1)如采用银行家算法分配资源.请写出完成第5次分配后各进第五章死锁练习题参考答案(一)单项选择题1.D 2.C 3.B 4.D 5.A 6.C 7.D(二)填空题1.死锁2.资源管理不得当,并发执行时3.占有并等待资源,循环等待资源4.等价的5.没有死锁6.一个条件不成立7.静态分配资源,释放已占资源8.预分配资源.开始执行前9.没有占用资源10.抢夺11.主存空间,处理器12.按序分配13安全状态14.避免死锁15.银行家算法16.死锁的避免17.n(x- 1)+l<=m 18.死锁检测方法19判断系统,解除死锁20.占用表,等待表21.尚需量,剩余量22终止,抢夺资源23.校验点24.防止,检测(三)简答题1.若系统中存在一组进程、它们中的每—个进程都占用了某种资源而又都在等待其中另一个进程所占的资源,这种等待永远不能结束,则说明系统出现了死锁。

产生死锁的原因有两个:一是操作系统对资源的管理不当,二是没有顾及进程并发执行时可能出现的情况。

2.采用某些资源分配策略使死锁的四个必要条件之一不成立,就能防止死锁。

除第一个条件互斥使用资源没有对应策略外,对占有并等待资源、不可抢夺资源和循环等待资源这三个条件可采用静态分配资源,释放已占资源,抢夺式分配资源和按序分配资源等资源分配策略。

3.如果操作系统能保证所有的进程在有限的时间内得到需要的全部资源,则称系统处于安全状态。

常用银行家算法动态地检测系统中的资源分配情况和进程对资源的需求情况进行资源分配,确保系统处于安全状态。

4解决死锁问题有以下三种方法:(1)死锁的防止。

系统按预定的策略为进程分配资源,这些分配策略能使死锁的四个必要条件之一不成立,从而使系统不产生死锁。

(2)死锁的避免。

系统动态地测试资源分配情况,仅当能确保系统安全时才给进程分配资源。

(3)死锁的检测。

对资源的申请和分配不加限制,只要有剩余的资源就可把资源分配给申请者,操作系统要定时判断系统是否出现了死锁,当有死锁发生时设法解除死锁。

5.用抢夺资源的方式解除死锁时要注意三点:(1)抢夺进程资源时希望付出的代价最小。

(2)为被抢夺者的恢复准备好条件,如返回某个安全状态,并记录有关信息。

(3)防止被抢夺资源的进程“饿死”,一般总是从执行时间短的进程中抢夺资源。

(四)应用题1.(1)根据表,P1,P2和P3三个进程尚需资源数分别是4,5和1,系统的资源剩余量为2,若把剩余的资源量全部分配给P2,系统产已无资源可分配,使三个进程都等待资源而无法完成,形成死锁。

所以不能先满足进程P2的要求。

(2)可先为进程P3分配1个资源,当它归还3个资源后,这样共有4个可分配资源,可满足P1申请1个资源的要求,再分配3个资源给进程P1,待P1归还7个资源后,先满足P2申请2个资源的请求,分配给进程P2,再分配3个资源给P2,使它完成。

2.(1)系统目前尚余有的资源数为(2,6,2,1),五个进程尚需的资源数分别是A:(2,0,0,0) ; B:(0,0,0,0); C:(4,6,2,0) ; D:(5,7,0,0); E:(0,0,2,1);由于进程B己满足了全部资源需求,它在有限时间内会归还这些资源,因此可分配资源达到(3,6,4,1),这样就可分配给进程A;等A归还资源后,可分配资源达到(6,12,6,1),再分配给进程C;之后可分配资源会达到(7,12,10,1),分配给进程D并等待一段时间后,可分配资源将达到(7,12,10,2),最后,可分配给进程E,满足其全部请求。

所以说目前系统处于安全状态。

(2)若此时给进程D分配(2,5,0,0)个资源,进程D尚需(3,2,0,0),则系统剩余的资源量为(0,1,2,1);若待进程B归还资源后,可分配资源能达到(1,1,4,1),根据各进程尚需资源量,只有先满足E的资源需求,待它归还资源后,可配资源只有(1,1,6,1),显然无法满足进程A,C,D中任何一个进程的资源要求,这样系统就会产生死锁。

所以此时系统不能为进程D分配(2,5,0,0)个资源。

3.证明:设n个进程请求的最大资源量分别为x i,i=1,2,…n。

根据条件∑x i<m+n, 从而∑x i-n<m, 则有∑(x i-1)<m,∴∑(x i-1)+1<=m.资源申请最坏的情况是每个进程已得到了(x i-1)个资源,现均要中请最后一个资源,由上式可知系统至少还有一个剩余资源可分配给某个进程,待它归还资源后就可供其他进程使用,因此该系统不会发生死锁。

4.(1)用列表法分析这个问题,下表中每一行表示这一次资源分配后的情况。

相关文档
最新文档