操作系统课程设计.doc

约9页DOC格式手机打开展开

操作系统课程设计,目录 课程设计的目的1课程设计的题目1问题描述(单资源)1算法分析2流程图2程序源代码3程序调试过程中遇到的问题及解决方式8程序中的不足及改进设想8课程设计心得体会8课程设计的目的经过一个学习《操作系统》课程的学习,掌握了许多书本上的知识,但是对书上的概念并没有真正意义的了解。这次课程设计,就是通过模拟...
编号:10-2704大小:64.00K
分类: 办公/文书/范本>实验/实践报告

内容介绍

此文档由会员 onlyme 发布

目录

操作系统课程设计

课程设计的目的 1
课程设计的题目 1
问题描述(单资源) 1
算法分析 2
流程图 2
程序源代码 3
程序调试过程中遇到的问题及解决方式 8
程序中的不足及改进设想 8
课程设计心得体会 8


课程设计的目的
经过一个学习《操作系统》课程的学习,掌握了许多书本上的知识,但是对书上的概念并没有真正意义的了解。这次课程设计,就是通过模拟银行家算法来避免死锁的产生,加深对进程死锁概念的理解。
.课程设计的要求
通过对银行家算法的模拟,用户输入进程跟资源的数目,再给每个进程的每个资源申请资源,用以判断进程是否会出现死锁,若出现死锁,就释放整个内存的资源,总而减轻操作系统的负担。
课程设计的题目
本次操作系统课程设计的题目为《模拟银行家算法》。
问题描述(单资源)
Dijkstra(1965)年提出了一种能够避免死锁的调度方法,称为银行家算法。它的模型基于一个小城镇的银行家,描述如下:假定一个银行家拥有资金,数量为Ё,被N个可户共享。银行家对可户提出下列约束条件:
Ⅰ.每个客户必须预先说明自己所要求的最大资金量;
Ⅱ.每个客户每次提出部分资金量申请和获得分配;
Ⅲ.如果银行家满足了客户对资金的最大需求量,那么,客户在资金运作后,应在有限时间内全部归还银行。
只要每个客户遵守上述约束,银行家将保证做到:若一个客户所要求的最大资金量不超过Ё,则银行一定接纳该客户,并处理他的资金需求;银行在收到一个客户的资金申请要求时,可能因资金不足而让客户等待,但保证在有限是见被让客户获得资金。在银行家算法中,客户可以看做进程,资金可以看作资源,银行家可以看做是操作系统。