操作系统课程设计-莫黎(4)

2019-03-22 20:42

int i=0;

cout<<\…

return p; }

void cpu_round(pcb *q){ //处理器的工作状态 q->cputime+=2; q->needtime-=2; …

q->process=execute; }

pcb * get_next(pcb * k,pcb * head){ pcb * t; t=k; … } return t; }

void set_state(pcb *p){ while(p){

if (p->needtime==0){ p->process=finish; }

if (p->process==execute){ p->process=ready; } p=p->next; } }

void display_round(pcb *p){

cout<<\ \\

\ \ \ …

p=p->next; } }

void round_cal(){ pcb * p; …

set_state(p); } }

void main(){ display_menu(); int k;

scanf(\ switch(k){

case 1:priority_cal();break; case 2:round_cal();break; case 3:break; display_menu(); scanf(\ } }

4.6 程序测试数据及结果

图 1程序测试数据

图 1运用循环轮转调度算法的执行结果1

图 2运用循环轮转调度算法的执行结果2

图 3运用循环轮转调度算法的执行结果3

图 4运用优先数调度算法的执行结果1

图5运用优先数调度算法的执行结果2

图 6运用优先数调度算法的执行结果3

五.设计总结

通过本次试验,我了解到优先数算法是一种以进程优先级作为参考来调度进

程的一种算法。这个算法的好处是能够让优先级高的进程得到更多的CPU占用时间,缺点是那些优先级低的进程可以永远得不到执行。对于轮转法是一种比较公平的算法,所有的进程都有机会得到执行。

六.附录.

#include #include #include #include #include #define P_NUM 5 #define P_TIME 50 enum state{ ready, execute,


操作系统课程设计-莫黎(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:满拉灌区水渠工程施工组织设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: