欢迎来到天天文库
浏览记录
ID:44645935
大小:29.50 KB
页数:12页
时间:2019-10-24
《第04章死锁及其对策》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第四章死锁及其对策4.14.24.34.44.54.6死锁的基本概念死锁原理及对策鸵鸟算法死锁的检测和恢复死锁预防死锁避免第四章死锁及其对策今犬日期:今天日期:2012-3-19第1页4.1死锁的基本概念在计算机系统中,在计算机系统中,产生死锁的直接原因是多个进程的并发执行。程的并发执行。多个进程的并发执行改善了系统资源的利用率,提高了系统的处理能力,的利用率,提高了系统的处理能力,但由于每个系统资源都由多个进程共享,有些资源本身又要求互斥的资源都曲多个进程共享,使用,所以如果处理不当就可能产生死锁。使用,所以如果处理不当就可能产生死锁。第四章死锁
2、及其对策今天H期:今天日期:2012-3-19第2页4.1.1资源依资源的性质:依资源的性质:可剥夺和非可剥夺资源可剥夺资源:可剥夺资源:处理机和内存非可剥夺资源:非可剥夺资源:磁带和打印机依资源的使用方式:依资源的使用方式:共享资源和独享资源共享资源:处理机、内存、共享资源:处理机、内存、磁盘等独享资源:磁带机、读卡机和打卬机等独享资源:磁带机、依资源的使用期限:依资源的使用期限:永久资源和临时资源永久资源:永久资源:硬资源和可重入的纯代码过程临时资源:进程同步和通信过程屮出现的消息、信号的数据。临时资源:进程同步和通信过程屮出现的消息、信号的数
3、据。在进行资源分配时,一定要先认清相应资源的特性,在进行资源分配时,一定耍先认清相应资源的特性,以便选择合适的分配策略,合适的分配策略,在竞争非剥夺资源和临时性资源时都可能产生死在并发进程的活动中,锁。在并发进程的活动中,若选择一种合理的推进顺序就可以避免死锁的发生。死锁的发生。第四章死锁及其对策今天H期:今天日期:2012-3-19第3页4.1.2死锁的定义死锁是计算机系统中多道程序并发执行时,死锁是计算机系统中多道程序并发执行时,两个或两个以上的进程由于竞争系统资源而出现的一种互相等待的现象。待的现象。此时,每个进程都“占用"此时,每个进程都“
4、占用"一些其他进程正在等待的资源,而用,没有完全得到所有的资源,的资源,而用,每个进程都没有完全得到所有的资源,结果所有这些进程互相等待,谁也无法继续,结果所有这些进程互相等待,谁也无法继续,我们称这些进程是死锁的,相应的计算机系统处于死锁状态。些进程是死锁的,相应的计算机系统处于死锁状态。第四章死锁及其对策今天日期:今天日期:2012-3-19第4页4.1.3产生死锁的原因系统竞争临界资源。当系统所拥有的某种临界资源系统竞争临界资源当系统所拥有的某种临界资源个数比各个进程要求该资源的总数要少时,个数比各个进程要求该资源的总数要少时,则有可能引起多
5、个并发进程对资源的竞争而产生死锁。起多个并发进程对资源的竞争而产生死锁。进程推进顺序不当,进程运行过程中,进程推进顺序不当进程运行过程中,由于请示和进程运行过程中释放资源的顺序不当,而产生死锁。释放资源的顺序不当,而产生死锁。第四章死锁及其对策今天日期:今天日期:2012-3-19第5页1、竞争临界资源引起的死锁、竞争非剥夺性资源引起的死锁竞争临时性资源引起的死锁竞争同一类资源引起的死锁2、进程推进顺序不当引起的死锁、第四章死锁及其对策今天日期:今天日期:2012-3-19第6页P2进展P2进展D2占用R1C2占用R22B2ND1A23占用R2占用
6、R20G2G1G3AlBl占用R1占用R1ClDIPl进展Pl进展占用R1占用R1第四章死锁及其对策占用R2占用R2今天日期:今天日期:2012-3-19第7页4.2死锁原理及对策421死锁原理及产生死锁的必要条件死锁是与时间有关的一种现象,死锁是与时间有关的一种现象,它涉及到多进程的并发,并发进程对一些特殊资源的共享,的并发,并发进程对一些特殊资源的共享,以及具体进行并发进程资源调度的时机等。综上所述,产生死进行并发进程资源调度的时机等。综上所述,锁的四个必要条件如下:锁的四个必要条件如下:互斥条件、不可剥夺条件、部分分配条件、互斥条件、不可剥夺
7、条件、部分分配条件、环路等待条件第四章死锁及其对策今天日期:今天日期:2012-3-19第8页4.2.2死锁的描述1、资源分配图、P2R2R1P1第四章死锁及其对策今犬FI期:今犬F1期:2012-3-19第9页2、死锁举例PlR1P2PlSIS3P3S2R2竞争非剥夺性资源引起的死锁竞争临时性资源引起的死锁P2竞争同一类资源引起的死锁P1P2P3第10页第四章死锁及其对策今天日期:今天日期:2012-3-194.2.3解决死锁的方法1.预防死锁为了使系统不发生死锁现象,在系统设计初期即预防死锁:为了使系统不发生死锁现象预防死锁为了使系统不发生死锁
8、现象,选择一些限制条件,选择一些限制条件,來破坏产生死锁的四个必要条件之一或其中几个。这样,条件之一或其中几个。这样,系统
此文档下载收益归作者所有