首页 > 试题广场 >

什么是死锁?死锁的原因是什么?

[问答题]

什么是死锁?死锁的原因是什么?

锡头像

死锁:1.两个或两个以上的进程因每个进程都在等待其他进程做完某些事情而不能继续执行的情形。

2.一组相互竞争系统资源或进行通信的进程间的“永久”阻塞。

原因:资源竞争,进程推进顺序不当。


发表于 2019-07-02 14:47:55 回复(0)

死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。

产生原因如下:

1、 竞争资源引起进程死锁。当系统中供多个进程共享的资源如打印机、公用队列的等,其数目不足以满足诸进程的需要时,会引起诸进程对资源的竞争而产生死锁;

2、 可剥夺资源和不可剥夺资源。系统中的资源可以分为两类,一类是可剥夺资源,是指某进程在获得这类资源后,该资源可以再被其他进程或系统剥夺;

3、 竞争不可剥夺资源。在系统中所配置的不可剥夺资源,由于它们的数量不能满足诸进程运行的需要,会使进程在运行过程中,因争夺这些资源而陷于僵局;

4、 竞争临时资源。指由一个进程产生,被另一个进程使用,短时间后便无用的资源,故也称为消耗性资源,它也可能引起死锁。

发表于 2022-10-19 11:36:10 回复(0)