网站大量收购独家精品文档,联系QQ:2885784924

1实验一进程管理参考代码.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
#includestdio.h #includestdlib.h #includestring.h #define NULL 0 int number=0;//进程数 //进程的内容结构体 struct node { int a; char ch; }; struct process //进程PCB结构体 { int pid; //进程标识 int priority; //优先级 float luntime; //lun轮转时间 float zhantime; //zhan占用CPU时间 char status; //状态,a表示执行,b表示动态就绪 node *content; //进程内容 struct process *next; }; struct process *ready,*present,*p,*q;//present正在执行进程指针,ready就绪进程队列指针 //换出进程函数 void outchange(int a) { p=ready; while(p-pid!=ap!=NULL) { q=p; p=p-next; } if(p==NULL) { printf(该进程不在内存里!\n); return; } if(p==ready) { ready=ready-next; } else { q-next=p-next; //把目标进程换出来,即把目标进程从就绪队列中移出来 } } //杀死正在运行进程函数 void kill() { present-next=NULL; printf(运行的进程已经杀死!\n); return; } //创建新进程后与正在运行进程比较优先级并根据优先级判断谁该占用处理机 int compare() { int i,j; p=ready; while(p!=NULL) { q=p; p=p-next; //q指向进程的末尾,即新建的进程 } i=q-priority; //i代表新进进程的优先级 j=present-next-priority; //j代表正在执行进程的优先级 if(ij) //如果新建的进程的优先级高于正在执行程序的优先级 { p=ready; if(p==q) //就绪队列的进程中只有一个进程。也就是那个新建的进程 { ready=present-next; p-content=(node*)malloc(sizeof(node)); p-content-a=9; p-content-ch=c; present-next=p; //把处理机交给优先级高的新进程 return 1; } else{ while(p-next!=q) { p=p-next; } //执行完后 p 指针在 q指针前面 p-next=present-next; //将正在执行的进程放置p的后面 q-content=(node*)malloc(sizeof(node)); q-content-a=9; q-content-ch=c; present-next=q; //将q放置在正在执行列表中,把处理机交给优先级高的进程 present-next-next=NULL; return 1; } } else return -1; } void main() { int execute();//定义函数 void kill();//定义杀死函数 void check();//定义查看函数 void communication(int);//定义通信函数 present=(process*)malloc(sizeof(process)); present-next=NULL; ready=(process*)malloc(sizeof(process)); ready-next=NULL; ready-pid=1; ready-priority=6; ready-lu

文档评论(0)

dashewan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档