全部科目 > 嵌入式系统设计师 >
2014年下半年 上午试卷 综合知识
第 50 题
知识点 死锁  
关键词 死锁  
章/节 嵌入式操作系统基础知识  
 
 
以下关于死锁的叙述中,不正确的是(50)。
 
  A.  死锁涉及的资源必须遵循申请、分配、使用和释放的管理模式
 
  B.  发生死锁时,系统中一定至少存在一个资源等待的回路
 
  C.  死锁是用户之间循环等待资源而引起的僵局
 
  D.  死锁只可能在单个进程中发生,不可能在多个进程中发生




 
 
相关试题     嵌入式操作系统基础知识 

  第21题    2023年上半年  
假设系统中有三类互斥资源R1、R2和R3,可用资源数分别为10、5和3。在T0时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下..

  第56题    2013年下半年  
设有4个作业同时到达,每个作业的执行时间均为2小时,它们在一台处理器上按单道方式运行,则平均周转时间为(56)。

  第21题    2014年下半年  
假设系统采用PV操作实现进程同步与互斥。若n个进程共享两台打印机,那么信号量S的取值范围为(21)。

 
知识点讲解
· 死锁
 
        死锁
        在一组任务当中,每个任务都占用着若干个资源,同时又在等待其他任务所占用的资源,从而造成所有任务都无法进展下去的现象,这种现象称为死锁,这一组相关的任务称为死锁任务。在死锁状态下,每个任务都动弹不得,既无法运行,也无法释放所占用的资源,它们互为因果、相互等待。
        死锁的产生有四个必要条件,只有当这四个条件同时成立时,才会出现死锁。
        .互斥条件:在任何时刻,每一个资源最多只能被一个任务所使用;
        .请求和保持条件:任务在占用若干个资源的同时又可以请求新的资源;
        .不可抢占条件:任务已经占用的资源不会被强制性拿走,而必须由该任务主动释放;
        .环路等待条件:存在一条由两个或多个任务所组成的环路链,其中每一个任务都在等待环路链中下一个任务所占用的资源。
        除了资源的竞争之外,PV操作使用不当也会引起死锁,下图是一个例子。
        
        PV操作引发的死锁示例
        在系统中,定义了两个信号量S和Q,它们的初始值都是1。两个任务T1和T2,假设T1先被调度执行,它顺利地通过了P(S)操作,并使S的值变为0。假设这时发生了一次时钟中断,任务T2被调度执行。它顺利地通过了P(Q)操作,并将Q的值变为0。接着在执行P(S)操作时,由于S的值已经是0,因此T2在这里被阻塞起来,并让出CPU。然后任务T1重新开始运行,但是当它执行到P(Q)时,由于Q的值已经为0,因此T1也被阻塞起来。这样一来,任务T1和T2都处于阻塞状态,都在等待对方释放信号量,这就是一种死锁的状态。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有