资源简介
仿真模拟银行家算法对死锁的避免。对于进程死锁的避免问题,分为两种状态:安全状态和非安全状态。在避免死锁的方法中,允许进程动态地申请资源分配之前,应先计算此次资源分配的安全性。若此次分配不会导致系统进入不安全状态,则将资源分配给进程;否则,令进程等待。
所谓安全状态是指系统能按某种进程顺序,来为每个进程pi分配所需的资源,直至满足每个进程对资源的最大需求,使每个进程都可顺利地完成。如果系统无法找到这样一个序列,则系统处于不安全状态。只要系统处于安全状态,系统便可避免进入死锁状态。因此避免死锁的实质在于:系统在进行资源分配时,如何使系统不进入不安全状态。银行家算法就是一种最有代表性的避免死锁的算法。
代码片段和文件信息
/*
程序的界面比较麻烦,所有的控件的添加全部放在了面板里面了,主窗口的最外面的面板是imagePanel,将panelout加在
了imagePanel的北面,将panel6加在了imagePanel的中部。在panel6里面加panel7在西部,panel8在中部。等等,
后面基本全是这么加的。由于开始的时候没有想到会用这么多的面板,所以到最后只能这么一个加一个的编号了。因此看
起来有些乱。代码大部分都在做界面,真正的处理部分在监听器接口里面。程序运行的时候,先将一张图片放在C盘根目
录下,并且将图片的名字命名为宽屏壁纸e.jpg
*/
//package PROJECT;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MyJlist extends Jframe implements ActionListener
{
private JTextField current_text=new JTextField();//添加到标签(“当前进程资源非配情况:“)之后,添加到容器panel1的中间
//保存申请资源不能满足的时候,用于恢复的数值
private String request1;
private String request2;
private String request3;
private String available1;
private String available2;
private String available3;
private String need1;
private String need2;
private String need3;
private int convert=0;//控制申请资源的进程数目只能为1
private int requestThread;//保存申请资源的进程的索引
private JList threadName_list;//显示系统中的进程的名字
private JList max_resource1_list;//显示每个进程的资源1的最大数目
private String[] max_resource1_list_num=new String[10];//存储每个进程的资源1的最大数目
private JList max_resource2_list;
private String[] max_resource2_list_num=new String[10];
private JList max_resource3_list;
private String[] max_resource3_list_num=new String[10];
private JList allocation_resource1_list;//显示进程当前占有的资源1的数目
private String[] allocation_resource1_list_num=new String[10];//存储进程当前占有的资源1的数目
private JList allocation_resource2_list;
private String[] allocation_resource2_list_num=new String[10];
private JList allocation_resource3_list;
private String[] allocation_resource3_list_num=new String[10];
private JList need_resource1_list;//显示进程当前所需要的资源1的数目
private String[] need_resource1_list_num=new String[10];//存储进程当前所需要的资源1的数目
private JList need_resource2_list;
private String[] need_resource2_list_num=new String[10];
private JList need_resource3_list;
private String[] need_resource3_list_num=new String[10];
private JList available_resource1_list;//显示当前资源1的可以使用的数目
private String[] available_resource1_list_num=new String[]{“10“};//存储当前资源1的可以使用的数目
private JList available_resource2_list;
private String[] available_resource2_list_num=new String[]{“5“};
private JList available_resource3_list;
private String[] available_resource3_list_num=new String[]{“7“};
private JTextField add_ThreadName;//填写所添加的进程的名字
private String[] name_num_add_ThreadName=new String[10];//存储添加的进程的名字
private static int num_add_ThreadName;//存储程序中添加的进程的数目
private String[] add_resource1={“0““1““2““3““4““5““6““7““8““9““10“};
private JComboBox add_resource_combobox1=new JComboBox(add_resource1);//选择添加进程的资源1的数目
private String[] add_resource2={“0““1““2““3““4““5““6““7““8““9““10“};
private JComboBox add_resource_combobox2=new JComboBox(add_resource2);
private String[] add_resource3={“0““1““2““3““4““5““6““7““8““9““10“};
private JComboBox add_resource_combobox3=new JComboBox(add_resource3);
private JB
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 82011 2010-07-25 19:48 实现银行家算法\程序代码\MyJlist.java
文件 5385728 2010-07-25 19:49 实现银行家算法\报告\报告.doc
文件 312364 2006-12-16 16:05 实现银行家算法\图片\宽屏壁纸e.jpg
文件 289733 2007-07-07 22:07 实现银行家算法\图片\河流与山坡.jpg
目录 0 2012-12-20 09:04 实现银行家算法\程序代码
目录 0 2012-12-20 09:04 实现银行家算法\报告
目录 0 2012-12-20 09:04 实现银行家算法\图片
目录 0 2012-12-20 09:04 实现银行家算法
----------- --------- ---------- ----- ----
6069836 8
- 上一篇:简单的第一人称射击游戏源码
- 下一篇:黑苹果i2c触摸驱动教程
相关资源
- dvd租赁管理系统
- spring boot+mybatis plus 在线答题系统
- 用友集团UClient
- 微服务说明ppt
- 大华摄像头直连插件webplugin.exe
- 小说管理系统
- 数值模拟方法和运动界面追踪
- _TrackMouseEvent 与 WIN32 ToolTip 源码
- OpenStack web界面使用ISO镜像安装启动
- 作业管理系统设计与实现
- 驾校管理系统源代码
- 斗地主界面程序Qt5.7版本
- VS2008 界面皮肤包控件
- pinpoint中文学习(包含插件、警告)
- 用myeclipse实现的BBS论坛源码
- 360UI完美界面
- 企业内部通信系统.
- QQ 登录界面 Qt实现
- 指纹识别系统包括指纹匹配 gui界面
- 简单的网上购物系统
- 论坛管理系统很简单适合学生党大作
- 房贷计算器和登录界面设计
- 使用itextpdf将PDF大文件拆分成若干份指
- 一款基于微信小程序的音乐播放器
- 旅游管理系统
- 数据库课程设计大作业--库存管理系统
- 通讯录管理系统.zip
- 进销管理系统
- 学生信息管理系统MVC版本
- 电影院售票后台管理系统SpringBoot+An
评论
共有 条评论