毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 报告 >> 正文

银行家算法防止死锁-银行家算法

更新时间:2009-4-14:  来源:毕业论文

银行家算法防止死锁-银行家算法
课程名称:操作系统

       课程类型:必修        实验项目名称:银行家算法

       实验题目:采用银行家算法防止死锁                    班级:实验学院一班 
                                                 设计成绩  报告成绩  指导老师

一、实验题目

     设计一个 n  个并发进程共享 m  个系统资源的系统。进程可动态 申请资源和释放资源,系统按各进程的申请动态的分配资源。要求采 用银行家算法防止死锁。

二、实验目的

     死锁会引起计算机工作僵死,造成整个系统瘫痪。因此,死锁现 象是操作系统特别是大型系统中必须设法防止的。通过本次实验,使 学生掌握死锁的概念和产生死锁的原因和必要条件, 预防和避免死 锁的方法,死锁的检测与解除。通过本次实验,使学生加深了对死锁 概念的理解和掌握,深刻领会银行家算法的实质及实现过程。 

三、设计思想(本程序中的用到的所有数据类型的定义,主

程序的流程图及各程序模块之间的调用关系)       1.程序流程图  开 始

                                                             收回假定分配给现
          剩余资源能否满              否
                                                             行进程的资源
          足现行进程?
                                                             输出信息资源不足

                 是

                                   承认已假定分配给现行                如不采用死锁预防算
         当前分配状态               是    进程的资源,输出完成信               法,将现行进程死锁

         安全吗?(safe)                息,置ADVANCE=true           位置  1

                 否

                                   收回假定分配给现行进                采用死锁预防算法如
          采用死锁预防算              是
                                   程的资源,输出失败信                已 有 进 程 死 锁 置
              法?
                                   息,置ADVANCE=true           ADVANCE=false

                 否

     承认已假定分配给现行进

     程的资源,输出完成信息,

     置ADVANCE=true

             结 束

安全(safe)函数框图如下:           开 始

                            未完成进程的T 标志为 1

                         置   已完成进程的T 标志为0

                         置局部变量Change 为‘true ’

                          (即是否有进程标志位T 从1变0)

                   否
                                 Change 是否为

                                    ‘true ’

                                        是

判定是否还存在不能                       置change 为‘false’

完成的进程,若不存

在,置 SAFE 为 ‘true ’,

否则为‘false’

                              全部进程已经完成?即                    是

                              各进程T 标志都为0
      结 束

                                        否

                              剩余资源与新完成资源
                   否
                              之和是否超过某进程还

                              需要的资源?

                                        是

                           置局部变量PROGRESS 为true

                           改变对应的T 值

      2.逻辑设计

      用结构体数组表示 3  个进程,其中包括使用数组形式的线性表

表示某个进程申请资源的列表(队列),以及进程需要的总资源数338

[1] [2] [3] 下一页

银行家算法防止死锁-银行家算法下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。