操作系统实验处理机调度C语言实现(共8页).docx
《操作系统实验处理机调度C语言实现(共8页).docx》由会员分享,可在线阅读,更多相关《操作系统实验处理机调度C语言实现(共8页).docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上#include#include#include #include#define N 20#define MAX 100typedef struct PCB /pcb进程控制块定义 int numN; /进程序号 char name10; /进程名 char state; /进程状态 int tijiaotime; /进程到达时间 int runtime; /进程开始时间 int finishtime; /进程结束时间 int needtime; /服务时间 int pro;/进程优先级 struct PCB *next; /链接指针 指向下个作业的pcb;struc
2、t PCB *head_input;struct PCB *head_run;struct PCB *head_run_pre;unsigned long current; /记录系统当前时间的变量int time=10000,n; /计时器 pcb *head=NULL,*p,*q;void getInfo() /创建进程 int num; printf(n请输入要建立的进程个数:); scanf(%d,&n); for(num=0;numnum,&p-name,&p-tijiaotime,&p-needtime); if(p-tijiaotime tijiaotime; q-next=p;
3、 p-runtime=0; p-finishtime=0; p-next=NULL; p-state=W; q=p; / *1.先来先服务调度算法*void run_fcfo(pcb *p1)/定义先来先到服务的算法 time = p1-tijiaotime time? p1-tijiaotime:time; p1-runtime=time; printf(n现在时间是%d,开始运行进程%sn,time,p1-name); time+=p1-needtime; p1-state=F; p1-finishtime=time; printf(进程名 开始时间 所需时间 结束时间n); printf
4、(%s %d %d %d ,p1-name,p1-runtime,p1-needtime,p1-finishtime);void fcfo()/定义运行进程函数 int i,j,t; for(j=0;jn;j+) p=head; t=10000; for(i=0;itijiaotimestate=W) t=p-tijiaotime; q=p; /标记当前未完成的进程 p=p-next; run_fcfo(q); / *2.优先级调度服务算法*int readydata() /建立就绪队列 if(head_input-next=NULL) return 0; struct PCB *p1=hea
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 实验 处理机 调度 语言 实现
限制150内