操作系统——实验2银行家算法(共9页).doc





《操作系统——实验2银行家算法(共9页).doc》由会员分享,可在线阅读,更多相关《操作系统——实验2银行家算法(共9页).doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上淮海工学院计算机科学系实验报告书课程名: 操作系统原理 题 目: 实验二 银行家算法 班 级: Z软件161 学 号: 姓 名: 陈真杰 评语:成绩: 指导教师: 批阅时间: 年 月 日专心-专注-专业1、实验目的与要求银行家算法是操作系统中避免死锁的典型算法,用C/C+语言编写一个银行家算法的模拟程序。通过本实验可以加深对银行家算法的步骤和相关数据结构用法的更好理解。2、 实验内容或题目用C/C+语言编写一个简单的银行家算法模拟程序,用银行家算法实现资源分配。程序能模拟多个进程共享多种资源的情形。进程可动态地申请资源,系统按各进程的申请动态地分配资源。要求程序具有显
2、示和打印各进程的某一时刻的资源分配表和安全序列;显示和打印各进程依次要求申请的资源数量以及为某进程分配资源后的有关资源数据的情况。实验说明:初始时每个进程运行过程中的最大资源需求量Maxi,j和系统已分配给该进程的资源量Allocationi,j,可利用资源数量Availablej均为已知(这些数值可以在程序运行时动态输入),而算法中其他数据结构的值(Needi,j)则需要由程序根据已知量的值计算产生。3、 实验步骤(1) 认真理解好课本中银行家算法的实例。(2) 根据课本中银行家算法的描述,画出程序流程图。(3) 按照程序流程图,用C/C+语言编程并实现。4、流程图5、源代码与测试数据与实验
3、结果(可以抓图粘贴) 源代码如下所示:#include string.h#include iostreamusing namespace std;#define FALSE 0#define TRUE 1#define W 10#define R 20int M=4 ; /总进程数int N=3 ; /资源种类int ALL_RESOURCE3=9,3,6;/各种资源的数目总和int MAX43=3,2,2,6,1,3,3,1,4,4,2,2; /M个进程对N类资源最大资源需求量int AVAILABLER; /系统可用资源数int ALLOCATION43=1,0,0,6,1,2,2,1,1
4、,0,0,2; /M个进程已经得到N类资源的资源量int NEEDWR; /M个进程还需要N类资源的资源量int RequestR; /请求资源个数void showdata() /函数showdata,输出资源分配情况int i,j;cout各种资源的总数量(all):;cout ;for (j=0;jN;j+)cout ALL_RESOURCEj;cout ;coutendlendl;cout系统目前各种资源可用的数为(available):;cout ;for (j=0;jN;j+)cout AVAILABLEj;cout ;coutendlendl;cout 各进程已经得到的资源量(a
5、llocation): endlendl;cout 资源0 资源1 资源2endl;for (i=0;iM;i+)cout进程pi: ;for (j=0;jN;j+)coutALLOCATIONij ;coutendl;coutendl;cout 各进程还需要的资源量(need):endlendl;cout 资源0 资源1 资源2endl;for (i=0;iM;i+)for (i=0;iM;i+)cout进程pi: ;for (j=0;jN;j+)coutNEEDij ;coutendl; coutendl;void changdata(int k) /分配资源int j;for (j=0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 实验 银行家 算法

限制150内