首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
请你介绍一下死锁,产生的必要条件,产生的原因,怎么预防死锁
[问答题]
请你介绍一下死锁,产生的必要条件,产生的原因,怎么预防死锁
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(206)
分享
纠错
77个回答
添加回答
32
归云无际
死锁的概念以及产生条件:死锁是两个或两个以上的进程之间由于竞争现象而导致进程都不能继续执行的现象。产生死锁的三个必要条件是互斥、不抢占和占有并等待,这些条件都具备只是有可能会造成死锁,只有第四个条件循环等待也具备的时候才会必然出现死锁。 如何预防死锁:设置某些限定条件,去破坏四个必要条件中的一个或多个,来预防死锁。比如说打破不可抢占条件:当一个进程占有一个资源时又申请另外一个资源,但不能满足时,就退出,并且返还原来占有的资源。
发表于 2022-04-25 16:11:56
回复(0)
17
E空
死锁:由于两个或两个以上的进程由于竞争资源而导致进程都无法执行的情况; 产生的条件:互斥、不可抢占、请求与保持、循环等待 如何避免:破坏不可抢占条件(可以让优先级高的进程抢占优先级低的进程的资源)、破坏请求与保持条件(当进程申请不到自己所需要的的资源时,必须释放掉自己所持有的资源)、破坏循环等待条件(进程只能往前申请资源,不能往后申请资源) 如何预防:有序资源分配法、银行家算法
发表于 2022-06-09 07:58:54
回复(0)
6
姜刀刀
避免死锁:计算安全序列,系统处于安全状态就一定不会发生死锁。 银行家算法:在进程提出资源申请时,先预判此次分配是否会导致系统进入不安全状态,如果会进入不安全状态,就暂时不答应这次请求,让该进程先阻塞等待。 死锁的检测:资源分配图法,依次消除不阻塞进程相连的所有边,若能消去图中所有的边,则称该图是可完全简化的,也就是没有发生死锁。 死锁的解除:资源剥夺法(挂起某些死锁进程,并回收它的资源)、撤销进程(强制撤销部分甚至全部死锁的进程,剥夺这些进程的资源)、进程回退(让一个或多个死锁进程回退到足以避免死锁的地步)。
编辑于 2022-07-20 09:14:51
回复(0)
5
已注销
死锁:两个或两个以上得进程在争夺共享资源时产生的一种互相等待的现象。死锁的条件:1互斥条件,进程对资源的使用是独占形式了,同一时间只有一个进程能够使用该资源,其他进程的请求会等待。2请求和保护条件,当一个进程未使用完一个资源,又请求另一个资源,而那个资源正在被另一个进程使用,该请求进程阻塞,在这期间,请求进程不会释放已有资源。3不剥夺条件,一个进程未使用完的资源,无法被剥夺,只有等进程完成后自己释放该资源。4环路条件,多个进程互相等待,形成一个环路。死锁的原因:资源竞争。死锁的解决方法:有序资源分配法,银行家算法
发表于 2022-06-27 14:53:34
回复(0)
3
在做核酸的懒羊羊想躺平
死锁就是两个幼儿园的小朋友想画画,一个拿了画板,一个拿了画笔,必须同时凑齐这两个东西才能画画,但是两个小朋友都比较自私,不愿意把自己有的资源给另一个人,如果没有老师的介入,那么这两个小朋友就会一直等着对方把东西给他直到自己能画画为止。产生的原因就是 1、因为画板和画笔是大家共享的,且数量唯一,你用了我就不能用了(互斥) 2、一旦一个小朋友自私的占用一个资源并且想要另一个就只能等待(请求与保持) 3、把自己的给别人是不可能的,用完再给你吧(不剥夺) 4、你看看我,我看看你,都等着对方先放手,看谁更倔(环路等待) 预防方法:老师来分配,小朋友不允许自己抢,乖乖给我坐好
发表于 2024-03-20 11:04:51
回复(0)
3
别说天会黑
死锁发生于两个进程由于争夺相同的公共资源而导致谁都无法向下推进。必要条件:互斥、请求和保持、不可剥夺、循环等待。 银行家算法:在进程提出资源申请时,先预判此分配是否会导致系统进入不安全状态。如果会进入不安全状态,就暂时不答应这次请求,让该进程先阻塞等待。
发表于 2022-06-26 09:05:24
回复(0)
2
牛客656026258号
死锁,两个或以上的进程争夺共享资源而互相等待,如果没有外力则无法推进的现象。产生的必要条件有四个必要条件:1互斥2请求和保持3不剥夺4环路等待。产生的原因:资源竞争,进程推进顺序问题。预防死锁:银行家算法
发表于 2022-05-20 13:40:58
回复(0)
1
牛客629480256号
死锁的概念:两个或两个以上的进程在争夺共享资源时产生的一种互相等待的现象。 产生的必要条件:1.互斥条件:进程对资源的使用是独占形式,同一时间只有一个进程能够使用该资源,其他进程需等待2.请求和保护条件:当一个进程未使用完一个资源,又请求另一个资源,而那个资源正在别另一个进程使用,该请求的进程就进入阻塞状态,在这期间,请求的进程不会释放资源3.不剥夺条件:一个进程未使用完的资源,无法被剥夺,只有等进程完成后自己释放该资源4.环路资源:多个进程互相等待,形成一个环路 产生的原因:资源竞争 预防死锁:有序资源分配,银行家算法
发表于 2022-09-04 17:15:56
回复(0)
1
学不明白
死锁发生的条件:互斥,占有且等待,不可抢占,循环等待预防死锁。 预防死锁:- 有序资源分配法 - 银行家算法
编辑于 2022-07-31 16:38:54
回复(0)
1
毛克成
1.互斥条件 2.不可剥夺 3.循环等待 4.请求和保持条件
发表于 2022-07-05 21:16:51
回复(0)
0
bulijiojio
两个或两个以上的线程由于竞争导致进程都不能继续执行 四个条件 1互斥 2持有并等待 3不可剥夺条件 4环路等待条件 常见的可以让占用锁的顺序一致产生预防
发表于 2025-06-01 22:36:47
回复(0)
0
Aurora0067
死锁:在多线程(进程)下,多个进程再执行过程中,因争夺共享资源而形成的相互僵持的局面,若无外力干涉,他们都将无法继续执行。 产生的条件: 互斥条件:进程(线程)对资源的访问是互斥的,一个资源在同一时间只能被一个进程占有。 请求和持有条件:一个进程首先可以持有一个资源,然后需要能够请求另一个资源,且保持当前资源没有释放 不剥夺条件:进程在占有资源时,操作系统不能对该资源进行剥夺分配给其他进程。 循环等待:需要a进程持有资源1然后去请求b进程持有的资源2,b进程持有资源2请求a进程持有的资源1。形成循环等待。 产生的原因:操作系统资源有限,系统中存在多个进程竞争有限的资源;进程的调度顺序不合理。 怎么预防:破坏产生死锁的必要条件。
发表于 2025-04-23 18:10:24
回复(0)
0
涨薪一大步
产生条件:互斥,不可抢占式,循环等待,请求与保持 避免:破坏四个条件中的一个 预防:采用策略算法,比如银行家算法,确定是否有安全的执行方式
发表于 2025-04-21 16:43:10
回复(0)
0
觉醒火龙果很想五点下课
死锁:进程之间占有且申请资源发生了循环,导致进程无法执行; 四个条件:1、互斥:资源不可共享;2、资源不可被剥夺;3、进程占有且申请;4、申请到已经占有的资源 预防死锁:1、原子操作;2、对资源排序,只能由小到大申请资源
发表于 2025-03-22 18:22:58
回复(0)
0
103k
死锁:两个或两个以上的进程在执行过程中,因争夺共享资源而互相等待的现象,若无外力作用,他们将无法推进下去,此时系统产生了死锁 死锁产生的必要条件:持有且等待,互斥条件,非抢占式,环路等待 预防死锁: 资源有序分配法:即加入有三个资源1,2,3,每个进程申请资源时必须按照资源序号的升序来获取资源。 银行家算法 打破不可抢占条件:当一个进程占用一个资源又申请另一个资源申请不到时,就返还已经占有的资源,退出等待
发表于 2024-09-23 23:14:35
回复(0)
0
努力奋斗的新青年
死锁产生的条件:1、互斥,不抢占,请求保持,循环等待
发表于 2024-09-23 09:40:35
回复(0)
0
Fate_yo
死锁,顾名思义程序执行到这后死掉了,无法继续执行下去。产生的条件包含:互斥条件、不可剥夺,循环等待,不可抢占、请求和保持。预防就是通过打破这些条件。
发表于 2024-07-11 14:28:04
回复(0)
0
之昂_
死锁的概念:死锁是指两个或多个线程在争夺系统资源时,由于相互等待对方释放资源而无法继续执行的状态。死锁产生的必要条件:1、互斥条件,多个线程不能同时使用一个资源;2、持有并等待,一个线程在请求另外的资源时,不会释放自己持有的资源;3、不可剥夺条件,资源不能强制性的被另一个进程夺走;4、环路等待条件,多个进程之间形成一个环形等待资源的链路,每个进程都在等待下一个进程释放自己所持有的资源。怎么预防死锁:破坏上述任意一个条件即可预防死锁,一般是让资源按序请求,使用资源有序分配法,让所有进程按照相同的顺序请求资源,释放资源则反序释放。
发表于 2024-07-02 14:56:15
回复(0)
0
永远的i
争对两个及两个以上的互斥量,由于竞争现象导致进程不能继续执行的现象;预防采用weak_ptr弱指针指向互斥量,辅助shared_ptr,或者有序资源分配
发表于 2024-06-24 09:47:42
回复(0)
0
有气魄的修勾上岸了
死锁是两个或两个以上的进程由于竞争资源而导致都不能继续执行的现象 死锁的条件1、互斥,同一段时间内资源只能由一个进程占用2、请求和保持,一个进程持有了一个资源,然后又请求另一个资源占用3、不剥夺,进程当前占用资源不可被剥夺,只能由自己释放4、环路等待,p1等待p2占用的资源,p2等待p1占用的资源 预防死锁:有序资源分配法、银行家算法
发表于 2024-06-13 21:57:25
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
操作系统
上传者:
real1993
难度:
77条回答
206收藏
3012浏览
热门推荐
相关试题
有两个N*N的矩阵A和B,想要在P...
阿里巴巴
操作系统
评论
(38)
来自
中国电信2025春招笔试...
请编写实现malloc()内存分配...
微软
C++
操作系统
评论
(3)
3.下列关于表中西部省市区2006...
资料分析
言语理解与表达
资料分析
评论
(1)
Mysql中表student_in...
数据库
SQL
评论
(1)
下列表达式的值为True的是( )
Python
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题