资源简介
操作系统课程设计多道批处理系统两级调度的模拟,里面包括报告、源代码、可执行程序
代码片段和文件信息
#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);
compare(int i);
print(int i);
dis_job();
dis_mem();
merge(link *y);
input_job1();
input_job2();
read();
release();
run();
p_fcfs();
p_spf();
sort_job1();
sort_job2();
sort_result(int i);
time_cmp(time atime b);
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) //时间比较 ab返回1;
{
if(a.hour else if(a.hou
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 329728 2012-07-02 23:26 操作系统课程设计\3109006086李汉权操作系统课程设计报告.doc
文件 229458 2012-06-29 23:55 操作系统课程设计\os.exe
文件 130 2012-06-27 20:49 操作系统课程设计\os.txt
文件 229458 2012-06-29 23:55 操作系统课程设计\源程序\Debug\os.exe
文件 242396 2012-06-29 23:55 操作系统课程设计\源程序\Debug\os.ilk
文件 37339 2012-06-29 23:55 操作系统课程设计\源程序\Debug\os.obj
文件 227804 2012-06-29 22:59 操作系统课程设计\源程序\Debug\os.pch
文件 459776 2012-06-29 22:59 操作系统课程设计\源程序\Debug\os.pdb
文件 41984 2012-06-29 23:55 操作系统课程设计\源程序\Debug\vc60.idb
文件 53248 2012-06-29 22:59 操作系统课程设计\源程序\Debug\vc60.pdb
文件 15771 2012-06-29 22:59 操作系统课程设计\源程序\os.cpp
文件 3353 2012-06-27 20:49 操作系统课程设计\源程序\os.dsp
文件 512 2012-06-27 20:49 操作系统课程设计\源程序\os.dsw
文件 58368 2012-06-29 23:59 操作系统课程设计\源程序\os.ncb
文件 48640 2012-06-29 23:59 操作系统课程设计\源程序\os.opt
文件 726 2012-06-29 23:55 操作系统课程设计\源程序\os.plg
文件 130 2012-06-27 20:49 操作系统课程设计\源程序\os.txt
文件 147 2012-06-30 00:01 操作系统课程设计\源程序\Readme.txt
目录 0 2012-07-02 22:22 操作系统课程设计\源程序\Debug
目录 0 2012-07-02 22:22 操作系统课程设计\源程序
目录 0 2012-07-03 18:24 操作系统课程设计
----------- --------- ---------- ----- ----
1978968 21
相关资源
- 嵌入式实时操作系统μC/OS-II与eCos的
- 嵌入式实时操作系统在DATU中的应用
- 嵌入式实时操作系统μC/OS-II下通用驱
- 嵌入式实时操作系统μC/OS-II在ARM上的
- 嵌入式操作系统的解析
- SAC型液压支架控制器检测平台的设计
- 基于MSP430单片机的实时多任务操作系
- 湖南大学操作系统实验报告
- 中标麒麟操作系统指南
- 操作系统最新视频教材链接(百度网
- 操作系统教程课后习题答案
- 操作系统教程 第5版 费翔林 骆斌 pp
- Linux操作系统下配置无密码的RSH访问
- 易语言仿真版源码易语言模拟版本源
- 嵌入式实时操作系统的RAM盘扩展
- 深入解析windows操作系统第六版 上册
- win7 和xp操作系统的打印机一键共享
- 深入解析Windows操作系统第6版 上下册
- 计算机408天勤2019数据结构计算机考研
- 计算机操作系统第4版超清
- 操作系统设计与实现 第三版 上下册
- 操作系统概念第九版原版辅助资源含
- 北航《操作系统》期末试题与答案
- 操作系统期末试卷与答案
- 自考操作系统上机含源代码
- 操作系统实验报告哲学家就餐问题、
- 操作系统课程设计代码
- linux内核设计的艺术 图解linux操作系统
- 大工软件学院操作系统第四次上机
- 操作系统课程设计 银行家算法论文
评论
共有 条评论