资源简介
这是关于银行家算法的linux下实现的代码,由于技术有限,其中若有bug,可与本人联系,yym112358@163.com
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#define True 1
#define False 0
pthread_mutex_t mutex;
int Finish[5] = {False};
int allocation[5][3] = {010302302211002};
int need[5][3] = {743020600011431};
int available[3] = {230};
int work[3];
void copy()
{
int i;
for(i = 0;i<3;i++)
work[i]= available[i];
}
int term(int i)
{
int j;
for(j = 0;j<3;j++)
if(need[i][j]>work[j])
return False;
return True;
}
int term1()
{
int i;
int j;
for(i = 0;i<5;i++)
{
if((Finish[i] == 0) && (term(i) == 1))
return i;
}
return 5;
}
void term2(int i)
{
int j;
for(j = 0;j<3;j++)
work[j] = work[j] + allocation[i][j];
Finish[i] = True;
}
int term3()
{
int i;
for(i = 0;i<5;i++)
{
if(Finish[i] == 0)
{
return False;
}
}
return True;
}
int IsSafe()
{
copy();
int i;
for(i = 0;i<5;i++)
{
if(term1()!=5)
{
term2(term1());
}
else if(term1() == 5)
{
int m = term3();
if(m == 1)
return True;
else
return False;
}
}
if(term1() == 5)
{
int m = term3();
if(m == 1)
return True;
else
return False;
}
}
int condition1(int *request)
{
int i;
for(i = 1;i<4;i++)
{
if(request[i]>need[request[0]][i-1])
{
printf(“%s%d %d: %d %s%d %d: %d \n““request“request[0]irequest[i]“> need“request[0]ineed[request[0]][i]);
return False;
}
}
return True;
}
int condition2(int *request)
{
int i;
for(i = 1;i<4;i++)
{
if(request[i]>available[i-1])
{
printf(“%s%d %d: %d %s%d: %d \n““request“request[0]irequest[i]“> available “iavailable[i-1]);
return False;
}
}
return True;
}
void *runner(void *param)
{
pthread_mutex_lock(&mutex);
int *request = (int *)param;
if(condition1(request) == 0)
{
printf(“%s%d:““request“request[0]);
int j;
for(j = 0;j<3;j++)
printf(“ %d “request[j+1]);
printf(“ denied
- 上一篇:数据库工资管理系统课程设计
- 下一篇:jdk8直接可以用的
相关资源
- NLP分词算法,源码
- 一种隐含并行的大规模三相不平衡配
- Berlekamp-Massey算法
- AP聚类算法代码
- 队列实现火车厢重排的算法及代码个
- VRP问题蚁群算法
- 基于栅格化的A*路径算法规划基于Si
- 信号与数据处理中的低秩模型——理
- 第七版操作系统概念答案英文
- 自己整理的国标SM3哈希算法
- Caley树算法 计算机图形学 孔令德 案例
- 多边形边缘填充算法 计算机图形学
- 几种常用music算法
- 严题集算法设计答案汇总
- 计算机操作系统(第三版)[汤子丹
- 蚁群算法简单实现
- 语音压缩算法,比较简单
- Windows主机操作系统安全加固规范 中文
- 严蔚敏清华大学数据结构和算法视频
- SAR雷达CS算法面目标成像算法
- 连通图tarjan算法动画讲解呕心沥血之
- 计算机操作系统 存储管理 FIFO LRU
- ACM 竞赛常用算法与数据结构
- 人脸识别完整代码包括PCA_LDA算法
- 密码学课程设计:仿射加密解密算法
- 进阶01——考虑换乘的基于路径长度的
- FW_BPR算法计算过程.txt
-
Item ba
sed collaborative filtering recommen - 蚁群优化算法源代码,源程序
- 祖冲之密码算法
评论
共有 条评论