用java语言实现计算机操作系统中的银行家算法实验
实验名称 银行家算法
一、实验目的
用高级语言编写和调试一个银行家算法程序,并可以利用银行家算法模拟分配资源以及进行安全性检查。加深对银行家算法的理解。
二、实验指导
1. 银行家算法中的数据结构
(1) 可利用资源向量Available。这是一个含有m个元素的数组,其中的每一个元素代表一类可利用的资源数目,其初始值是系统中所配置的该类全部可用资源的数目,其数值随该类资源的分配和回收而动态地改变。如果Available[j]=K,则表示系统中现有Rj类资源K个。
(2) 最大需求矩阵Max。这是一个n×m的矩阵,它定义了系统中n个进程中的每一个进程对m类资源的最大需求。如果Max[i,j]=K,则表示进程i需要Rj类资源的最大数目为K。
(3) 分配矩阵Allocation。这也是一个n×m的矩阵,它定义了系统中每一类资源当前已分配给每一进程的资源数。如果Allocation[i,j]=K,则表示进程i当前已分得Rj类资源的数目为K
(4) 需求矩阵Need。这也是一个n×m的矩阵,用以表示每一个进程尚需的各类资源数。如果Need[i,j]=K,则表示进程i还需要Rj类资源K个,方能完成其任务。
Need[i,j]=Max[i,j]-Allocation[i,j]
2. 银行家算法
设Requesti是进程Pi的请求向量,如果Requesti[j]=K,表示进程Pi需要K个Rj类型的资源。当
Pi
(1) 如果Requesti[j]≤Need[i,j],便转向步骤2;否则认为出错,因为它所需要的资源数已超过它所宣布的最大值。
(2) 如果Requesti[j]≤Available[j],便转向步骤(3);否则, 表示尚无足够资源,Pi须等待。
(3) 系统试探着把资源分配给进程Pi
Available[j]∶=Available[j]-Requesti[j];
Need[i,j]∶=Need[i,j]-Requesti[j]; Allocation[i,j]∶=Allocation[i,j]+Requesti[j];
(4) 系统执行安全性算法,检查此次资源分配后,系统是否处于安全状态。若安全,才正式将资源分配给进程Pi,以完成本次分配;否则, 将本次的试探分配作废,恢复原来的资源分配状态,让进程Pi等待。
3. 安全性算法
java实现银行家算法_IT/计算机_专业资料。操作系统 银行家算法import java.util.*; class ThreadTest { static int type = 4, num = 10; //定义资源数目和线...
java实现的银行家算法 隐藏>> package bao1; import java.util.*; /*此类主要功能如下: * 1.初始化资源 * 2.进行死锁避免 * 3.检索进程请求资源是否可行 ...
/*银行家算法 java 语言实现*/ 此处是函数部分因实现的功能不是核心故而略去 class TheBanker{ int m; int n; int[][] max; int[][] maxbak;//备份用 ...
java--编写银行家算法(附图片) - 1、在 cmd 窗口运行的结果: 2、在 netbean 中运行的结果: import java.util.Scanner; /** * * @a...
用java编写的银行家算法_计算机软件及应用_IT/计算机_专业资料。package 银行家算法...-银行家算法实现 9页 免费 Java语言的银行家算法 12页 免费 c++银行家算法 ...
/*死锁避免与死锁检测模拟程序【银行家算法】 06-3 班 学号:310609040308*/ import java.util.*; public class TestTheBanker { 网络工程 public static void ...
银行家算法java源代码_计算机软件及应用_IT/计算机_专业资料。银行家算法java源代码//11111111111111111111111111111111111 import java.util.*; public class Bank { pub...
银行家算法java源代码_IT/计算机_专业资料。这是关于操作系统的银行家算法的java...java实现银行家算法 6页 1下载券 Java语言的银行家算法 12页 免费 银行家算法...
银行家算法--操作系统JAVA实现_计算机软件及应用_IT/计算机_专业资料。银行家算法--操作系统JAVA实现//QQ:249030379 梦若 import java.util.Scanner; public class...
保证可以直接运行的java编程 银行家算法import java.util.*; public class ...
我要评论