进程调度算法的实现实验报告.docx
- 文档编号:5577809
- 上传时间:2022-12-28
- 格式:DOCX
- 页数:8
- 大小:70.13KB
进程调度算法的实现实验报告.docx
《进程调度算法的实现实验报告.docx》由会员分享,可在线阅读,更多相关《进程调度算法的实现实验报告.docx(8页珍藏版)》请在冰豆网上搜索。
进程调度算法的实现实验报告
进程调度算法的实现实验报告
南昌大学实验报告
---(4)进程调度算法的实现
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合■设计□创新实验日期:
实验成绩:
一、实验目的
通过实验加强对进程调度算法的理解和掌握。
二、实验内容
编写程序实现进程调度算法,具体可以编写程序实现先来先服务算法或优先度高者调度算法。
三、实验要求
1、需写出设计说明;
2、设计实现代码及说明;
3、运行结果;
四、主要实验步骤
1、分析实验内容,画出算法流程图;
2、根据流程图写出实验代码;
3、编译代码,验证结果正确与否;
4、对程序进行修改,得到最后结果。
不能为0,否则带权周转时间的计算会出错。
七、参考资料
《计算机操作系统》
《计算机操作系统实验指导书》
《C程序设计》
《C语言程序设计_现代方法》
八、实验代码
#include
#include
#include
#defineN5//进程个数,可改变
intrt[N];//到达时间
intst[N];//服务时间
intct[N];//完成时间
intcyt[N];//周转时间
floatrct[N];//带权周转时间
floatav[2];
intn,m,c=1,which;
voidline()//美化程序,使程序运行时更加明朗美观
{
printf("------------------------------------------------------------------\n");
}
voidstart()//表示FCFS算法开始
{
line();
printf("FCFS算法开始\n");
printf("——DesignedbyZhangHong\n");
line();
}
voidend()//表示FCFS算法结束
{
line();
printf("FCFS算法结束,谢谢使用\n");
line();
}
voidinput()
{
printf("请输入%d个进程的到达时间:
",N);
for(n=0;n scanf("%d",&rt[n]); printf("请输入%d个进程对应的服务时间: ",N); for(n=0;n scanf("%d",&st[n]); } voidrandom() { srand((unsigned)time(NULL)); for(n=0;n { rt[n]=rand()%100; for(m=0;m if(n! =0&&rt[n]==rt[m]) { rt[n]=rand()%100; m=0; } st[n]=rand()%98+1; for(m=0;m if(n! =0&&st[n]==st[m]) { st[n]=rand()%98+1; m=0; } } } voidordination()//重新排序,应对出现输入的到达时间为乱序的情况 { inttemp; for(n=0;n for(m=0;m if(rt[m+1]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进程 调度 算法 实现 实验 报告