实验四 银行家算法 一、 实验目的 1理解死锁避免相关内容; 2掌握银行家算法主要流程; 3掌握安全性检查流程。 操作系统中的死锁避免部分的理论进行实验。要求实验者设计一个程序, 该程序可对每一次资源申请采用银行家算法进行分配。 二、实验设备 PC 机、windows 操作系统、VC+6.0 三、 实验要求 本实验要求 3 学时完成。 1设计多个资源( 3 ); 2设计多个进程( 3 ); 3设计银行家算法相关的数据结构; 4动态进行资源申请、分配、安全性检测并给出分配结果。 5撰写实验报告,并在实验报告中画出银行家算法和和安全性检查算法流 程图。 四、 预备知识 死锁避免定义:在系统运行过程中,对进程发出的每一个资源申请进行动 态检查,并根据检查结果决定是否分配资源:若分配后系统可能发生死锁,则 不予分配,否则予以分配。 由于在避免死锁的策略中,允许进程动态地申请资源。因而,系统在进行 资源分配之前预先计算资源分配的安全性。若此次分配不会导致系统进入不安 全状态,则将资源分配给进程;否则,进程等待。其中最具有代表性的避免死 锁算法是银行家算法。 1 系统安全状态 1)安全状态 所谓系