上海大学操作系统(二)实验报告(全)
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。
Round Robin算法:
实验代码:
//操作系统实验--进程调度 #include #include #include #include const long n=5; struct pcbtype { long id, priority, runtime, totaltime; char status; //R, W, F -> 运行,就绪,完成 //进程控制块结构 }PCB[n+1]; long link[n+1]; //链表结构 long RUN, HEAD, TAIL; //选择算法 long ChooseAlgo() { char s[128]; printf(\gets(s); if (s[0]=='P' || s[0]=='p') } return 1; return 0; //初始化 void init() { long i; for (i=1; i<=n; i++) { PCB[i].id = i; PCB[i].priority = rand()%4+1; PCB[i].runtime = 0; PCB[i].totaltime = rand()%8+1; PCB[i].status = 'W'; } } //显示进程调度状况 void showit() { long i; printf(\printf(\for (i=1; i<=n; i++) printf(\printf(\for (i=1; i<=n; i++) printf(\printf(\for (i=1; i<=n; i++) printf(\printf(\for (i=1; i<=n; i++) printf(\printf(\for (i=1; i<=n; i++) printf(\printf(\if (RUN != -1) printf(\else printf(\printf(\for (i=HEAD; i!=-1; i=link[i]) printf(\printf(\} //优先数调度算法 HEAD=sort[1]; for (i=1; ii; j--) { if (PCB[sort[j]].priority > PCB[sort[j-1]].priority) { k=sort[j]; sort[j]=sort[j-1]; sort[j-1]=k; } } } //根据优先数排序 long sort[n+1];
上海大学操作系统(二)实验报告(全).doc
将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印