资源简介
进程调度:先来先服务、静态优先数调度、最短时间调度 作业调度:来先服务算法、短作业优先算法、高响应比算法 内存分配:首次适应算法FF、循环首次适应算法NF、最佳适应算法BF、最坏适应算法三种算法WF

代码片段和文件信息
#include
#define false 0
#define true 1
int sourse = 3;
int process = 5;
int all_process[3] = {10 5 7};
int max_process[5][3] = {{7 5 3} {3 2 2} {9 0 2} {2 2 2} {4 3 3}};
int have_process[5][3] = {{0 1 0} {2 0 0} {3 0 2} {2 1 1} {0 0 2}};
int need_process[5][3];
int available_process[3];
int request_process[3];
getNeed() {
for(int i = 0; i < process; i++) {
for(int j = 0; j < sourse; j++) {
need_process[i][j] = max_process[i][j] - have_process[i][j];
}
}
}
getAvailable() {
int temp = 0;
for(int i = 0; i < sourse; i++) {
temp = 0;
for(int j = 0; j < process; j++) {
temp += have_process[j][i];
}
available_process[i] = all_process[i] - temp;
}
}
showProcess(int a[5][3]) {
printf(“ 资源0 资源1 资源2\n“);
for(int i = 0; i < process; i++) {
printf(“进程p%d:“ i);
for(int j = 0; j < sourse; j++) {
printf(“\t %d “ a[i][j]);
}
printf(“\n“);
}
}
showAllProcess(int a[3]) {
printf(“[“);
for(int i = 0; i < 3; i++) {
printf(“ %d “ a[i]);
}
printf(“]\n“);
}
distribute(int k) {
for(int i = 0; i < sourse; i++) {
available_process[i] = available_process[i] - request_process[i];
have_process[k][i] = have_process[k][i] + request_process[i];
need_process[k][i] = need_process[k][i] - request_process[i];
}
}
back(int k) {
for(int i = 0; i < sourse; i++) {
available_process[i] = available_process[i] + available_process[i];
have_process[k][i] = have_process[k][i] - request_process[i];
need_process[k][i] = need_process[k][i] + request_process[i];
}
}
int isExist() {
int temp = 0;
int flag = 1;
int index[5] = {0 0 0 0 0};
int k = 5;
while(k > 0) {
temp = 0;
for(int i = 0; i < 5; i++) {
if(index[i] == 1) {
continue;
}
flag = 1;
for(int j = 0; j < 3; j++) {
if(available_process[j] >= need_process[i][j]) {
continue;
} else {
flag = -1;
break;
}
}
if(flag == 1) {
for(int k = 0; k < 3; k++) {
available_process[k] += have_process[i][k];
}
index[i] = 1;
}
}
k--;
}
for(int i = 0; i < 5; i++) {
if(index[i] == 1) {
continue;
}else {
printf(“不存在安全序列\n“);
return -1;
}
}
printf(“存在安全序列\n“);
return 1;
}
int bank(int num_process) {
int index = 1;
int result;
char input;
int available_process_test[3];
for(int i = 0; i < 3; i++) {
if(available_process[i] < request_process[i]) {
index = -1;
break;
} else if(request_process[i] > need_process[num_process][i]) {
index = -2;
break;
}
}
if(index == -1) {
printf(“要求资源大于可用资源。\n“);
} else if(index == -2) {
printf(“要求资源大于进程所需资源。\n“);
}else {
distribute(num_process);
result = isExist();
if(result == 1) {
printf(“分配资源成功!\n“);
} else if(result == -1) {
}
}
}
int main
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 306 2019-11-27 15:46 OSHomework\.git\config
文件 73 2019-11-27 15:46 OSHomework\.git\desc
文件 23 2019-11-27 15:46 OSHomework\.git\HEAD
文件 478 2019-11-27 15:46 OSHomework\.git\hooks\applypatch-msg.sample
文件 896 2019-11-27 15:46 OSHomework\.git\hooks\commit-msg.sample
文件 3327 2019-11-27 15:46 OSHomework\.git\hooks\fsmonitor-watchman.sample
文件 189 2019-11-27 15:46 OSHomework\.git\hooks\post-update.sample
文件 424 2019-11-27 15:46 OSHomework\.git\hooks\pre-applypatch.sample
文件 1638 2019-11-27 15:46 OSHomework\.git\hooks\pre-commit.sample
文件 1348 2019-11-27 15:46 OSHomework\.git\hooks\pre-push.sample
文件 4898 2019-11-27 15:46 OSHomework\.git\hooks\pre-reba
文件 544 2019-11-27 15:46 OSHomework\.git\hooks\pre-receive.sample
文件 1492 2019-11-27 15:46 OSHomework\.git\hooks\prepare-commit-msg.sample
文件 3610 2019-11-27 15:46 OSHomework\.git\hooks\update.sample
文件 1634 2019-11-27 15:46 OSHomework\.git\index
文件 240 2019-11-27 15:46 OSHomework\.git\info\exclude
文件 182 2019-11-27 15:46 OSHomework\.git\logs\HEAD
文件 182 2019-11-27 15:46 OSHomework\.git\logs\refs\heads\master
文件 182 2019-11-27 15:46 OSHomework\.git\logs\refs\remotes\origin\HEAD
文件 2445 2019-11-27 15:46 OSHomework\.git\ob
文件 1676 2019-11-27 15:46 OSHomework\.git\ob
文件 146 2019-11-27 15:46 OSHomework\.git\ob
文件 2297 2019-11-27 15:46 OSHomework\.git\ob
文件 48376 2019-11-27 15:46 OSHomework\.git\ob
文件 48371 2019-11-27 15:46 OSHomework\.git\ob
文件 1523 2019-11-27 15:46 OSHomework\.git\ob
文件 1271 2019-11-27 15:46 OSHomework\.git\ob
文件 47719 2019-11-27 15:46 OSHomework\.git\ob
文件 21442 2019-11-27 15:46 OSHomework\.git\ob
文件 123 2019-11-27 15:46 OSHomework\.git\ob
............此处省略79个文件信息
- 上一篇:超市管理系统UML建模文档
- 下一篇:cervus群体遗传学软件
相关资源
- 升腾Win终端系统升级方法新版.doc
- Uninstall_Cortana_WINCLIENT.CN.rar
- STM32基于rt_thread操作系统的SDHC卡文件
- 操作系统 LRU算法 实验报告 及 程序代
- [免费]车载CE6.0操作系统
- 分页系统模拟实验 操作系统 课程设
- 模拟段页式虚拟存储管理中地址转换
- 操作系统实验——虚存管理实验
- 广工操作系统实验
- 广东工业大学操作系统实验四文件系
- Bochs入门教程[操作系统第一步]
- 操作系统课程设计完整版
- 磁盘调度算法的模拟实现及对比
- 模拟一个文件管理系统
- 二级文件系统(操作系统)
- uCOS编译环境建立 BC45 TASM
- Linux 操作系统实验(全)
- 操作系统实验综合设计【附代码】
- 操作系统共享内存实验
- 操作系统循环首次适应算法
- 操作系统课程设计实现可变分区存储
- 基于GTK的Linux环境下的简易任务管理器
- 操作系统课程设计 二级文件管理系统
- 加快Windows XP操作系统开机速度
- 操作系统教程课后答案华中科技大学
- 51单片机中使用ucos ii的优缺点转
- 51单片机中使用ucos ii的优缺点
- 嵌入式实时操作系统ucos-II 第二版 源
- 计算机操作系统课后_汤小丹_第四版
- 计算机操作系统(第四版)汤小丹课
评论
共有 条评论