一、什么是死锁
在计算机中有许多互斥的资源(比如打印机,绘图仪等)或者软件资源(如进程表,临界区等),若果两个进程同时使用打印机,或者同时进入临界区必然会出现问题。所谓的死锁就是指两个以上的进程互相都要求对方已经占有的资源,而导致无法继续运行下去的现象。
二、死锁产生的原因和必要条件
产生死锁的原因是进展资源及进程推进顺序非法。当系统中有多个进程所共享的资源不足以同时满足他们的需求时,将引起他们对资源的竞争导致死锁。进程推进顺序非法,是指进程在运行过程中请求和释放资源的顺序不当,导致进程死锁。
产生死锁的4个必要条件是:互斥条件,请求保持条件,不可剥夺条件,环路条件。
三、死锁的处理方式
死锁的处理策略主要有4种:鸵鸟策略,预防策略,避免策略和检测与解除死锁。