操作系统进程调度模拟课程设计(JAVA)

上传人:汽*** 文档编号:507301230 上传时间:2022-10-28 格式:DOCX 页数:19 大小:166.74KB
返回 下载 相关 举报
操作系统进程调度模拟课程设计(JAVA)_第1页
第1页 / 共19页
操作系统进程调度模拟课程设计(JAVA)_第2页
第2页 / 共19页
操作系统进程调度模拟课程设计(JAVA)_第3页
第3页 / 共19页
操作系统进程调度模拟课程设计(JAVA)_第4页
第4页 / 共19页
操作系统进程调度模拟课程设计(JAVA)_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《操作系统进程调度模拟课程设计(JAVA)》由会员分享,可在线阅读,更多相关《操作系统进程调度模拟课程设计(JAVA)(19页珍藏版)》请在金锄头文库上搜索。

1、计算机操作系统课程设计实验报告题目 名称进程调度模拟系统院系班级完成时间2013.1.8指导老师本次实验成绩组长 联系电话邮件地址组长(姓 名、学号)主要 任务需求分析,模块设计与代码编写,组织任务 分配,PPT制作,实验报告审定材料汇总等成员(姓 名、学号)主要 任务代码的编写实验报告的编写、材料查找等题目进程调度:模拟FCFS和SJF进程调度过程实验介绍原理现在的处理机任务量大,多个进程会不同时先后到达,并且各个 进程的工作时间也不一定相同,为了使各个进程间不发生冲突,有条 不紊的先后运行,并以最短的时间占用处理机,面对这种发展状况, 有必要使用进程调度算法来提高处理机的工作效率。去选择合

2、适的一 种进程调度算法达到理想的效果,可以做到信息的规范管理、科学统 计和快速运作,从而减少时间上的浪费。用Java语句设计实现登陆界面,直观显示各种算法和调度结果, 直观地显示运行结果,设计进程调度算法实现用不同算法(先来先服 务,短作业优先,高响应比优先调度算法,时间片轮转算法)进行进 程调度,算出最短周转时间,实现高效率调度算法。参考资料1 黄祥喜,计算机操作系统实验教程。广州:中山大学出版社,1994.2 汤子瀛,计算机操作系统(修订版)西安电子科技大学出版社3 Andrew S.Tanenbaum,现代操作系统,机械工业出版社。4 (美)Bruce Eckel. Java编程思想.陈

3、昊鹏译.北京:机械工业 出版社,20075 王路群.Java高级程序设计北京:中国水利水电出版社,20066 孙卫琴.精通Struts:基于MVC的Java Web设计与开发.北京: 电子工业出版社,2004.08实验环境(软件和硬件):(1)硬件要求EGA或VGA卡彩显或单显(640X350以上),单机内存2M以上,硬盘40M 以上。客户端计算机采用586以上机型,客户端应用程序可以稳定的运行在 Windows07 xp操作系统之上。(2)软件要求实现前台登陆界面,需用到JAVA语句,需要安装MyEclipse软件。数据结构的定义进程号Q提交时间运行时间*开始时间#结束时间*周转时间+转时间

4、+1P口口实验实现(1)进程个数N进程号biO提交时间bi1运行时间bi2开始时间bi结束时间bi4(7)周转时间bi带权周转时间bi算法介绍(可以是流程图、可以是类C代码、可以是文字算法描述。)1. FCFS算法FCFS算法是最简单的算法,每次调度是从就绪的进程队列中,选择一个最 先进入该队列的进程,为之位置分配处理机,使之运行。(1)先对各进程的提交顺序进行升序排列,选择最先提交的进程开始运行。(2)对已运行结束的进程结束时间与下一个提交的进程时间比较,若大于下 一个进程的提交时间,则下一个进程的开始运行时间就是上一个进程的结束时 间,否则,下一个进程的开始运行时间就是自己的提交时间。(3

5、)依次向后运行。2. SJF算法SJF算法是以作业的长短来计算优先级,作业越短优先级越高。作业长短用所 要求的运行时间来衡量。(1) 先对各进程的提交顺序进行升序排列,选择最先提交的进程开始运行。(2) 对已运行结束的进程结束时间与下一个提交的进程时间比较,若大于下 一个进程的提交时间,则下一个进程的开始运行时间就是上一个进程的结束时 间,再次对刚运行结束的进程的结束时间与下一个提交的进程时间进行比较;若已运行结束的进程结束时间小于下一个提交的进程时间,则再找到刚 刚运行结束的进程结束时间大于余下的的进程提交时间,在这两个进程之间对 运行时间升序排列,找到运行时间最短的,开始投入运行。然后对余

6、下的进程 的提交时间排序,按此操作循环进行。(3) 依次向后运行。3. 时间片轮转调度算法时间片轮转法表示的是系统在给定的时间内,响应所有用户的要求。(1) 将所有进程按先来先服务的原则,排成一个队列,每次调度时,把CPU 分配给队首进程,并令其执行一个时间片。(2) 执行时间片用完时,由一个计时器发出时钟中断请求,调度程序据此信 号来停止该进程的执行,并把他送往就绪队列的末尾。(3) 把处理机分配给就绪队列中新的队首进程,同时也让他执行一个时间片。 这样就可以保证就绪队列中的所有进程在给定的时间内,均获得一时间片的处 理执行时间。4. 高响应比优先调度算法该算法综合考虑到先来先服务和短作业优

7、先算法的优缺点,改善了处理机调度 的性能。从而引入了优先权,优先权越咼,先运行。优先权=(当前时间-提交时间)/运行时间+1当前时间是刚刚运行的进程的结束时间,提交时间是准备运行的进程的提交时 间。(1) 先对各进程的提交顺序进行升序排列,选择最先提交的进程开始运行。(2) 对已运行结束的进程结束时间与下一个提交的进程时间比较,若大于下 一个进程的提交时间,则比较剩下的进程的优先权,优先权越大则先运行。下 一个进程的开始运行时间就是上一个进程的结束时间,再次对刚运行结束的进 程的结束时间与下一个提交的进程时间进行比较;然后对余下的进程的提交时 间排序,按此操作循环进行。若已运行结束的进程结束时

8、间小于下一个提交的进程时间,贝y找到最先 提交的进程投入运行,再次比较优先权。(3) 依次向后运行。5Java运行界面的实现使用Java中GUI界面设计,实现各个按钮,文本和标签,再附上一个面 板,把表格放到面板上,对于各个按钮实现监听便可对其产生作用。6.系统模块设计及调试1开始界面一一任意设置进程个数2.先来先服务算法运彳丁结果3.短作业优先算法运行结果4时间片轮转调度算法运行结果略 I tSHIB I 赣闫 删須I SHa搁 JW咖 和9磐DO早山4軋側耳甘砖:丸|:H呻蠱比Jt时问片*fr*心皮出出趾5.高响应比优先调度算法运行结果实践计划本次实践计划、进度安排及完成情况12.1012

9、.13任务分配,资料收集和汇总12.1412.18需求分析,组员讨论12.1912.23算法设计,界面设计,组员讨论12.241.3编程实现及调试,组员讨论1.41.8实验报告及PPT汇报1 资料收集和总结2. 需求分析和算法设计,界面设计3. 编程实现及调试,小组讨论及改进4. 实验报告及PPT汇报进度安排完成情况填写人完成情况组织任务分配,材料汇总,需求分析,模块设计与代码编写,实验报告审定,PPT制作收集资料,需求分析,编写部分程序代码资料查找,需求分析,实验报告编写资料查找,实验报告整理收集资料,需求分析,材料总结,PPT整理实验心得*:此次操作系统课程设计,作为组长,主要任务为组织任

10、务分配,在技 术方面负责需求分析,模块设计与代码编写,PPT制作,实验报告审定,材 料汇总等。我们采用JAVA语言设计进程调度模拟系统,在给定题目的基础上, 增加了两个调度算法,在此模拟系统中实现了四种基本进程调度,并利用GUI 设计的优势设计出良好的界面风格。从课题确定到正式成稿的一个月过程中, 我们进行了合理的计划安排和任务分配,组员合作十分融洽,并每周进行一次 集中讨论交流,最终较好地完成了预定目标。在编程实践中,我对JAVA语言 有了进一步的深入,对进程调度有了更深入的认识。此次团队合作也使我更加 明确集体合作的重要性,大家共同讨论,共同搜集资料,集思广益,项目才能 圆满完成。相信每一

11、位组员也都收获颇多,很感谢有这么一次机会和大家合作, 这会是一次难忘的经历。*:在这次操作系统课程设计中,我的主要任务是编写部分代码。另外,我也 协助编写了实验报告以及资料的收集。编写代码过程中,我认真回顾了上学期 操作系统的知识及JAVA和C语言的知识,并仔细编写研究了代码,进行了多 次的修改。通过此次课程设计,我对四个进程调度有了更深入的理解(特别是 时间片轮转算法),同时我的编程能力也得到了提高,综合运用各种编程语言 的能力得到了很好的锻炼,很庆幸有这次锻炼的机会。这次小组分工干活更体 现出了合作的优越性,相信对我今后的学习和工作会有很大帮助。*:此次课程设计,我参与了实验报告的编写以及

12、资料的查找。在实验报告 编写前,我需要对所描述的四个进程有充分的了解,明白他们各自的流程,以 及多具有的优缺点;并明白所编写的代码的原理及具体的操作。这些要求也让 我对操作系统的调度进程有了进一步的了解与认识,并掌握了对于进程代码的 编写与具体操作。小组成员各有分工,也让我明白了分工合作的重要性。*:在这次课程设计中,我担任了查找资料和编写实验报告的任务。在这一 过程中,我更深入的了解了四个进程调度的流程、运行及优缺点,并且对进程 代码的编写有了一定的了解。对于自己的一些不足,小组成员能够耐心帮助, 更让我体会到合作的重要性。*:经过这次操作系统课程设计的项目,我对操作系统中学到的知识认识的更

13、 清晰,更透彻。我也明白了个人的能力有限,而集体的能力无限,我们小组共 同思考,共同讨论,共同搜集资料,集思广益,项目才能完成的圆满。在此次 项目中,我参与了查找资料,需求分析,整理ppt等任务。项目的完成与每一 个成员的付出和努力分不开关系,我很感谢这次课设项目提供给我们的机会。源程序清单package NEW2;备注(包括源 程序清单 及其它说明)import javax.swing.*;import java.awt.*;import java.awt.event.*;public class OS extends JFrame implements ActionListenerJBut

14、ton bl, b2, b3, b4;JTable table;JTextField j2, j3;String str = JOptionPane.showInputDialog(请输入进程数:”);int N = Integer.parseInt(str);String process_num = null;String arrive_time = null;String service_time = null;String start_time = null, end_time = null, total_time = null,weightotal_time = null;String a = new StringN7;String name

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号