操作系统实验报告-处理器管理银行家算法_第1页
操作系统实验报告-处理器管理银行家算法_第2页
操作系统实验报告-处理器管理银行家算法_第3页
操作系统实验报告-处理器管理银行家算法_第4页
操作系统实验报告-处理器管理银行家算法_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 专业 网络工程一班 姓名 学号 日期 2015年5月7日 课程名称操作系统实验室名称X4313 实验名称 处理器管理银行家算法指导教师 实验目的本实验要求学生设计系统进行资源调度的程序,采用银行家算法有效避免死锁的发生。实验原理和内容(1)设计3个并发进程,共享系统的12个同类不可抢占的资源。各个进程动态进行资源的申请和释放。进程名进程的状态当前申请量资源申请总数已占用资源数能执行完标志(2)用银行家算法设计一个程序,运行这个程序,判断当前状态是不是安全状态;如果是安全状态,当系统接收新的申请请求,系统是否发生死锁,如发生,请找出参与死锁的进程。如果不发生死锁,找出一组进程推进的顺序,能够运

2、行结束。(3)初始化系统资源的最大值,这组进程的最大资源请求和依次申请的资源序列。把各个进程已占用和需求资源情况记录在进程控制块中。假设进程控制块的格式如表所示:其中进程的状态有:就绪、等待和完成。假定资源分配状态如下:进程已占资源数最大需求数P129P2510P324要求学生编程判断当前是否安全状态,并输出该结果。如果该状态下,进程P1申请一个资源,系统分配以后,是否处于安全状态?如果是安全状态,请进程推进的顺序,能够运行结束。请输出这组进程序列。实验步骤#include#include#include#define Avalible 12 /系统可用资源typedef struct PCB

3、int Max; /进程最大需求int Had; /当前拥有int Need; /尚且需要资源int tag; /进程状态 int Finish; /能否完成标志 char Name10; /进程名 PCB,*PCBList; PCB pcb100; /创建pcb块 main() int i=0; int j=0; int code; /标记每次对谁修改 int fin=0; int s=0; int tage=0; int work=12; int a10; int b3; printf(n系统提供可使用资源数为12,供3个进程并发执行nn); printf(n请输入: 进程名 | 最大需求

4、量 | 已占用资源数 nn例如:tt 6 1nn); for(i=1;i=3;i+) printf(第%d个进程:,i); scanf(%s %d %d,&pcbi.Name,&pcbi.Max,&pcbi.Had); printf(n); for(i=1;i=3;i+) pcbi.tag=0; printf(nn进程名 | 进程状态 | 当前申请量 | 已占用资源数 | 资源需求总数 | 能否执行完成标志nn); do for(i=1;i=3;i+) if(pcbi.tag!=1) pcbi.Need=pcbi.Max-pcbi.Had; /printf(%d ,pcbi.Need); if

5、(pcbi.Need=work) code=i; pcbi.Finish=1; bs=i; s+; else pcbi.Need=0; pcbi.Finish=0; printf(%6s | %6d | %10d | %12d | %12d | %6d n,pcbi.Name,pcbi.tag,pcbi.Need,pcbi.Had,pcbi.Max,pcbi.Finish); printf(nn); work+=pcbcode.Had; pcbcode.Need=0; pcbcode.Had=0; / printf( fff %d tt %d ff,work,pcbcode.Max); pcbcode.tag=1; aj=code;j+; while(j!=4); /printf(%d,sizeof(b)/sizeof(b0); if(sizeof(b)/sizeof(b0)!=3) printf(此为不安全状态n); else for(s=0;s100) tage=1; if(tage=1) printf(此为不安全状态nn); else printf(此为安

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论