时间片算法 编译原理

时间片算法 编译原理

ID:41120265

大小:108.50 KB

页数:7页

时间:2019-08-16

时间片算法 编译原理_第1页
时间片算法 编译原理_第2页
时间片算法 编译原理_第3页
时间片算法 编译原理_第4页
时间片算法 编译原理_第5页
资源描述:

《时间片算法 编译原理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、//夏国峰E01014130时间片算法#include#include#definegetpch(type)(type*)malloc(sizeof(type))structpcb{charname[10];charstate;intntime;intrtime;structpcb*link;}*ready=NULL,*p;//结构体typedefstructpcbPCB;intstart;voidsort(){PCB*end,*recent;intinlist=0;if(ready==NULL){ready=p;

2、}else{recent=ready;end=recent->link;while(end!=NULL){recent=recent->link;end=end->link;}if(end==NULL)recent->link=p;}}voidinput()//进程输入函数{inti,num;printf("Pleaseinputthenumberofprocesses:");scanf("%d",&num);//定义进程个数numfor(i=0;i

3、tructpcb);printf("Inputthenameoftheprocess:");scanf("%s",p->name);printf("Inputtherunningtimeoftheprocess:");scanf("%d",&p->ntime);printf("");p->rtime=0;p->state='w';//进程就绪状态p->link=NULL;sort();}}intspace()//统计链表中的进程数{intl=0;PCB*pr=ready;while(pr!=NULL){l++;//用于记录链表中的进程数pr

4、=pr->link;}return(l);}voiddisp(PCB*pr)//打印显示当前正在执行的进程的相关信息{printf("qnametstatetndtimetruntime");printf("

5、%st",pr->name);printf("

6、%ct",pr->state);printf("

7、%dt",pr->ntime);printf("

8、%dt",pr->rtime);printf("");}voidcheck(){PCB*pr;printf("*********Thecurrentrunningproc

9、essis:%s",p->name);disp(p);pr=ready;//记住表头进程printf("*********ThestateoftheWaitingList:");while(pr!=NULL)//打印出剩余的所有进程的相关信息{disp(pr);pr=pr->link;}if(pr==NULL)printf("Nowaitingprocess!");}voiddestroy()//打印进程执行信息提示{printf("Process[%s]hasfinished.",p->name);free(p);//释放

10、临时变量p的内存空间}voidrunning(){(p->rtime)++;if(p->rtime==p->ntime)destroy();else{p->state='w';sort();//重新插入链表}}voidMenu(){charmenu;printf("**菜单选择**");printf("**1:ENTERSIMULATE**");printf("**2:QUITPROCESS**");printf("Pleaseinputyourchoice!");scanf("%c",&menu);switch(menu)//菜单选项

11、{case'1':start=1;system("cls");printf("***MODEOFSIMILATE!******时间片进程调度***");break;case'2':exit(0);break;default:exit(0);break;}}voidmain(){intlen,h=0;charch;Menu();if(start==1){input();len=space();while((len!=0)&&(ready!=NULL)){ch=getchar();h++;printf("Theexecutenumber:%

12、d",h);p=ready;ready=p->link;p->link=NULL;p->s

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。