资源简介
2015广工操作系统课程设计-多道批处理两级调度模拟,含报告
代码片段和文件信息
#include
#include
#include
#include
#define getpch(type)(type*)malloc(sizeof(type))
#define N 10
#define M 100
#define C 4
struct time
{
int hour; //时
int min; //分
};
struct jcb
{
char name[10]; //进程名
struct time arr_time; //到达时间
struct time ent_time; //进入内存时间
struct time sta_time; //开始时间
struct time fin_time; //结束时间
int run_time; //估计运行时间
int tr_time; //周转时间
int men; //主存需要
int mac; //磁带机
int sta; //状态位
struct jcb* next;
};
typedef struct jcb JCB;
struct link
{
char name[10]; //进程名
struct time arr_time; //到达时间
struct time ent_time; //进入内存时间
struct time sta_time; //开始时间
struct time fin_time; //结束时间
int run_time; //估计运行时间
int tr_time; //周转时间
int addr; //起始地址
int len; //分区大小
int mac; //磁带机
int state; //状态位0为空闲1为被使用
struct link *f; //前指针
struct link *b; //后指针
} ;
struct jcb save[N];
struct jcb *first_jcb=NULL*p;
struct jcb result[6][6];
struct link *s*q;
int sort_result(int i);
int run();
int apply(jcb *p1);
int compare(int i);
int print(int i);
int dis_job();
int dis_mem();
int merge(link *y);
int input_job1();
int input_job2();
int read();
int release();
int run();
int p_fcfs();
int p_spf();
int sort_job1();
int sort_job2();
int sort_result(int i);
int time_cmp(time atime b);
int j_attemper(int type);
int sys_men=100; //系统内存分配为100
int sys_mac=4; //磁带机数
struct time sys_timesys_time1;
char name[10];
int print(int i) //显示作业最终运行情况
{
struct jcb *p1;
int j;
p1=first_jcb;
for(j=1;j<=5;j++)
{
result[i][j]=*p1;
p1=p1->next;
}
sort_result(i);
printf(“\n\n ===========================================================================\n“);
printf(“\n\t作业运行结果情况:\n“);
printf(“\n\t进程名\t到达\t运行\t主存\t磁带机\t进入\t开始\t完成\t周转“);
for(j=1;j<=5;j++)
{
printf(“\n\t%s\t %d:%d\t%d\t%d\t%d\t“result[i][j].nameresult[i][j].arr_time.hourresult[i][j].arr_time.minresult[i][j].run_timeresult[i][j].menresult[i][j].mac);
printf(“%d:%d\t%d:%d\t%d:%d\t%d“result[i][j].ent_time.hourresult[i][j].ent_time.minresult[i][j].sta_time.hourresult[i][j].sta_time.minresult[i][j].fin_time.hourresult[i][j].ent_time.minresult[i][j].tr_time);
}
}
int sort_result(int i) //对作业按到达时间重新排序显示分析方便
{
int jk;
for(k=1;k<=4;k++)
{
for(j=1;j<=4;j++)
{
if(time_cmp(result[i][j].arr_timeresult[i][j+1].arr_time)==1)
{
result[i][0]=result[i][j];
result[i][j]=result[i][j+1];
result[i][j+1]=result[i][0];
}
}
}
return 1;
}
int time_cmp(struct time astruct time b) //时间比较 a
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 15831 2016-01-06 23:46 课程设计-多道批处理两级调度模拟\CourseDesign.cpp
文件 130 2012-06-27 20:49 课程设计-多道批处理两级调度模拟\test.txt
文件 15831 2016-01-06 23:46 课程设计-多道批处理两级调度模拟\源程序\CourseDesign.cpp
文件 12288 2016-01-06 23:50 课程设计-多道批处理两级调度模拟\源程序\CourseDesign.exe
文件 10990 2016-01-06 23:50 课程设计-多道批处理两级调度模拟\源程序\CourseDesign.o
文件 130 2012-06-27 20:49 课程设计-多道批处理两级调度模拟\源程序\test.txt
文件 327680 2016-01-07 00:07 课程设计-多道批处理两级调度模拟\课程设计报告.doc
目录 0 2016-01-07 08:54 课程设计-多道批处理两级调度模拟\源程序
目录 0 2016-01-07 08:54 课程设计-多道批处理两级调度模拟
----------- --------- ---------- ----- ----
382880 9
相关资源
- 重庆大学操作系统试卷
- 基于8086的密码锁设计
- 汇编语言课程设计实验报告 拼图游戏
- 数据库原理课程设计-图书管理系统
- 数据结构课程设计教学计划编制问题
- 操作系统考纲样题及试卷
- 东南大学 操作系统试卷
- 编译原理课设——算符优先分析程序
- LL(1)文法分析过程模拟
- 汇编语言课程设计实验报告——拼图
- 自动售货机模拟操作系统代码
- 杭电操作系统往年期末试卷
- 操作系统实验八 磁盘移臂调度算法实
- DSP课设报告
- 东北大学操作系统题库资料
- 重庆大学操作系统期末试卷
- 编译原理课程设计——编译器
- 数据结构 全国交通模拟 课设
- 中国海洋大学操作系统试卷
- 51单片机多任务的切换和堆栈的保护
- 武汉大学高级操作系统结课题目及答
- DSP课程设计报告(基于DSP的语音信号
- 南京大学操作系统期末试卷适合考研
- 操作系统- SPOOLing输出模拟实验报告
- 广工2014信息安全考试试卷
- 07-09年东北大学操作系统试卷、答案
- 实验二、进程通信-管道及共享内存
- 数据结构综合课设排序算法时间.doc
- 课设毕业设计
- 南昌航空大学操作系统考点
评论
共有 条评论