网站大量收购独家精品文档,联系QQ:2885784924

银行家算法c代码实现.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
银行家算法c代码实现

编号:实验一二三四五六七八九十总评教师签名成绩武汉大学计算机学院课程实验(设计)报告专业(班):计算机科学与技术计科6班学号: 2013301500217 姓名:张伟课程名称:操作系统设计任课教师:宋伟2015年12 月22日银行家算法实现实习内容编写实现银行家算法,实现资源的安全分配。通过本实验熟悉银行家算法,对预防死锁有更深刻的认识。实习题目初始状态下,设置数据结构存储可利用资源向量(Available),最大需求矩阵(MAX),分配矩阵(Allocation),需求矩阵(Need),输入待分配进程队列和所需资源。设计安全性算法,设置工作向量表示系统可提供进程继续运行的可利用资源数目。如果进程队列可以顺利执行打印输出资源分配情况,如果进程队列不能顺利执行打印输出分配过程,提示出现死锁位置。设计思想数据结构classprocess //定义进程{public :bool finish = false; //完成状态int need[max_resources]; //还需要分配的资源int allocation[max_resources]; //已经分配的资源int max_need[max_resources]; //最大需求量int request[max_resources]; //本次需求量public:process(int_need[max_resources], int_allocation[max_resources], int_max_need[max_resources]){for (int i = 0; i max_resources; i++){need[i] = _need[i];allocation[i] = _allocation[i];max_need[i] = _max_need[i];}}//构造函数voidset(int_need[max_resources], int_max_need[max_resources]){for (int i = 0; i max_resources; i++){need[i] = _need[i];allocation[i] = 0;max_need[i] = _max_need[i];}} //赋值函数process(){}};主要函数(1)bool check_safe(intwork[max_process], processmy_process[max_process]) //安全性算法(2)bool destribute(intavailable[max_resources], processthe_process, processmy_process[max_process]) //是否分配空间成功的算法(3)void init(intavailable[max_resources], processmy_process[max_process]) //初始化函数Main函数int main(){int _need[max_resources];int _allocation[max_resources];int available[max_resources];process my_process[max_process];int i,j;int choice=1;init( available, my_process);while (true){cout 选项\n 1:继续分配\n 2:查看当前available资源数\n其他字符:退出\n;scanf_s(%d, choice);switch (choice){ case 1:{cout 请输入本次请求分配给第i个进程的资源,格式:进程号 xx xx xx xx,空格隔开 endl; scanf_s(%d, i);for (j = 0; j max_resources; j++){scanf_s(%d, my_process[i].request[j]);}if (destribute

文档评论(0)

2017ll + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档