银行家算法实验报告.docx

?资.料. ?资.料. 计算机操作系统实验报告 _、实验名称:银行家算法 二、 实验目的:银行家算法是避免死锁的一种重要方法,通过编写 一个简单的银行家算法程序,加深了解有关资源申请、避免死 锁等概念,并体会和了解死锁和避免死锁的具体实施方法。 三、 问题分析与设计: 1、算法思踣:先对用户提出的请求进行合法性检查,即检查 请求是否大于需要的,是否大于可利用的。若请求合法,则进 彳亍预分配,对分配后的状态调用安全性算法进行检查。若安 全,则分配;若不安全,则拒绝申请,恢复到原来的状态,拒 绝申请。 2、银行家算法歩骤:(1 )如果 Requesti or =Need, 2、银行家算法歩骤: 步骤(2);否则,认为出错.因为它所需要的资源数已超过它 所宣布的最大值。 (2 )如果 Request or=Available,则转向歩骤(3);否则, 表示系统中尚无足够的资源,进程必须等待。 (3 )系统试探把要求的资源分配给进程Pi,并修改下面数据结 构中的数值: Available=Available-Request[i]; AUocation=Allocation+Request; Need=Need-Request; (4)系统执行安全性算法,检查此次资源分配后,系统是否处于 安全状态。 3、安全性算法步骤: (1)设置两个向量 工作向量Work0它表示系统可提供进程继续运行

文档评论(0)

1亿VIP精品文档

相关文档