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

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

ID:31688917

大小:84.60 KB

页数:10页

时间:2019-01-17

1实验一进程管理参考代码_第1页
1实验一进程管理参考代码_第2页
1实验一进程管理参考代码_第3页
1实验一进程管理参考代码_第4页
1实验一进程管理参考代码_第5页
资源描述:

《1实验一进程管理参考代码》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、#include#includc#include#defineNULLOintnumber=O;/Z进程数〃进程的内容结构体structnode{inta;charch;};structprocess〃进程PCB结构体{intpid;〃进程标识intpriority;〃优先级floatluntime;floatzhantime;//lun轮转时间//zhan占用CPU时间charstatus;node*content;〃状态,a表示执行,b表示动态就绪〃进程内容structproc

2、ess*next;);structprocess*ready,*present,*p,*q;//present正在执行进程指针,ready就绪进程队列指针〃换岀进程函数voidoutchange(inta){p=ready;while(p->pid!=a&&p!=NULL){q二p;p=p->ncxt;}if(p二二NULL){printf(”该进程不在内存里!”);return;)if(p==ready)ready=ready->next;else〃杀死正在运行进程函数voidkill(){present->next=NULL;pr

3、intf(”运行的进程已经杀死!”);return;}〃创建新进程后与止在运行进程比较优先级并根据优先级判断谁该占川处理机intcompare(){inti,j;p=rcady;while(p!=NULL){q=p;p=p->ncxt;i〃q指向进程的末尾,即新建的进程i=q->priority;j=present->next->priority;〃i代表新进进程的优先级//j代表正在执行进程的优先级〃如果新建的进程的优先级同于正在执行程序的优先级p=rcady;if(p==q)〃就绪队列的进程中只有一个进程。也就是那个新建的进程re

4、ady=present->next;p->content=(node*)malloc(sizeof(node));p->contcnt->a=9;p->content->ch=lc,;present->next=p;〃把处理机交给优先级高的新进程return1;}clsc{while(p->next!=q)p=p->next;}p->next=present->next;〃执行完后p指针在q指针前面〃将正在执行的进程放置p的后面q->content=(node*)malloc(sizeof(node));q->content->a=9;q

5、->contcnt->ch=fc';present->next=q;〃将q放置在正在执行列表中,把处理机交给优先级高的进程preseext->next=NULL;return1;}}elsereturn-1;}voidmain(){intexecute();//定义函数voidkill();//定义杀死函数voidcheck();//定义査看函数voidcommunication(int);//^义通信函数prcscnt=(proccss*)malloc(sizcof(proccss));present->next=NULL;ready=

6、(process*)malloc(sizeof(process));ready->next=NULL;ready->pid=1;ready->priority=6;ready->luntime=3.5;ready->zhantime=3;ready->content=(node:i:)malloc(sizeof(node));ready->content=NULL;ready->status=lbl;number++;p=(process*)malloc(sizeof(process));p->next=ready->next;ready

7、->next=p;p->pid=2;p->priority=5;p->luntime=3.5;p->zhantime=3;p->content=(node*)malloc(sizeof(node));p->contcnt=NULL;p->status=lb,;number++;q=(process*)malloc(sizeof(process));q->next=p->next;p->ncxt=q;q->pid=3;q->priority=4;q->luntime=3.5;q->zhantimc=3;q->zhantime=3;q->co

8、ntent=(node*)malloc(sizeof(node));q->content=NULL;q->status=rbf;numbcr++;inti,n=l;intk,j,s;j=exe

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

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

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