资源描述:
《实验1:处理机调度算法的实现(》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、计算机与通信工程学院天津理工大学计算机与通信工程学院实验报告2010至2011学年第二学期课程名称操作系统实验(1)实验名称处理机调度算法的实现实验时间学号姓名专业主讲教师辅导教师软件环境Java硬件环境PC机5计算机与通信工程学院实验目的通过实验,进一步加深对进程的理解,实现处理机调度算法,掌握轮转调度,优先级调度等调度算法实验内容(应包括实验题目、实验要求、实验任务等)实验题目:处理机调度算法的实现实验要求:1.设定系统中有五个进程,每一个进程用一个进程控制块表示。2.输入每个进程的“优先数”和“要求运行时间”。3.为调度方便,将五个进程按给
2、定的优先数从大到小连成就绪队列。4.采用动态优先数算法,进程每运行一次优先数减1,同时将运行时间减1。实验任务:实现先来先服务算法实验过程与实验结果(可包实验实施的步骤、算法描述、流程、结论等)实验步骤1输入时间数2依照进程数执行进程1逐级递减直至为03进入下一进程重复进程1过程直至全部进程执行完毕算法描述对于每一次时间片执行一次for循环流程5计算机与通信工程学院输入时间数依照进程数顺序执行第一个进程直到执行完毕依照进程数顺序执行第2个进程直到执行完毕依照进程数顺序执行第3个进程直到执行完毕依照进程数顺序执行第4个进程直到执行完毕依照进程数顺序
3、执行第5个进程直到执行完毕实验结果5计算机与通信工程学院附录(可包括源程序清单或其它说明)importjava.util.Scanner;publicclasswxc{publicstaticvoidmain(String[]args){Scannerreader=newScanner(System.in);inti1,i2,i3,i4,i5;System.out.println("请输入五个进程所运行需要的时间:");System.out.println("进程一");i1=reader.nextInt();System.out.println
4、("进程二");i2=reader.nextInt();System.out.println("进程三");i3=reader.nextInt();System.out.println("进程四");i4=reader.nextInt();System.out.println("进程五");i5=reader.nextInt();wxc1w1=newwxc1("一",i1);wxc1w2=newwxc1("二",i2);wxc1w3=newwxc1("三",i3);wxc1w4=newwxc1("四",i4);wxc1w5=newwxc1("五"
5、,i5);w1.wxc2(w1,w2,w3,w4,w5);}}classwxc1{intt;Stringn;wxc1(Stringname,intt1){n=name;t=t1;}voidrun(){if(t!=0)t=t-1;}voidprint(wxc1a,wxc1b,wxc1c,wxc1d,wxc1e){System.out.println(a.n+":"+a.t+b.n+":"+b.t+c.n+":"+c.t+d.n+":"+d.t+e.n+":"+e.t);5计算机与通信工程学院}voidwxc2(wxc1a,wxc1b,wxc1c,w
6、xc1d,wxc1e){for(inti=a.t;i>0;i--){a.run();print(a,b,c,d,e);}for(inti=b.t;i>0;i--){b.run();print(a,b,c,d,e);}for(inti=c.t;i>0;i--){c.run();print(a,b,c,d,e);}for(inti=d.t;i>0;i--){d.run();print(a,b,c,d,e);}for(inti=e.t;i>0;i--){e.run();print(a,b,c,d,e);}}}5