操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】

上传者: laudukang | 上传时间: 2019-12-21 20:05:49 | 文件大小: 465KB | 文件类型: rar
实现了如下四种调度算法的模拟:
(1)时间片轮转调度
(2)优先数调度
(3)最短进程优先
(4)最短剩余时间优先

模拟过程使用了JProgressBar作为进程状态条,更为直观地观察到每个进程的执行状态。

程序用户说明:
1、在上图标号1处输入要创建随机进程的个数,仅可输入正数,非正数会有相关提示。然后点击标号2处的“创建进程”按钮,随进创建的进程显示在程序界面的中央窗口,如标号3所示。
2、创建好随机进程后,在标号4的单选框选择将要模拟执行的调度算法,然后点击标号5处的“开始模拟”,程序开始执行。标号3的列表会显示相应的调度变化。
3、模拟过程中,可以继续添加新的进程,操作同上。
4、 一个算法模拟执行完毕之后,可以点击标号6的“复位”按钮,可以重置列表的内容为程序模拟运行前的内容。复位成功后,可以继续选择其他调度算法进行模拟。
5、标号7显示为程序模拟过程中的时间,从1秒开始累计。
6、点击标号8的“清空”按钮,可以清空类别的进程,以便程序的下次执行。


题目要求:
题目四 单处理器系统的进程调度
一 、 课 程 设 计 目 的
1. 加深对进程概念的理解, 明确进程和程序的区别。
2. 深入了解系统如何组织进程、 创建进程。
3. 进一步认识如何实现处理器调度。
二 、 课 程 设 计 内 容
编写程序完成单处理器系统中的进程调度, 要求实现时间片轮转、 优先数、 最短进程优
先和最短剩余时间优先四种调度算法。 实验具体包括: 首先确定进程控制块的内容, 进程控
制块的组成方式; 然后完成进程创建原语和进程调度原语; 最后编写主函数对所作工作进行
测试。
模拟程序只对你所设置的“ 虚拟 PCB” 进行相应的调度模拟操作, 即每发生“ 调度”
时, 显示出当前运行进程的“ 进程标识符”、“ 优先数”、“ 剩余运行时间” 等, 而不需要对系
统中真正的 PCB 等数据进行修改。

文件下载

资源详情

[{"title":"( 47 个子文件 465KB ) 操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】","children":[{"title":"操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】","children":[{"title":"刘杜康201230740312操作系统实验报告.docx <span style='color:#111;'> 383.51KB </span>","children":null,"spread":false},{"title":"OperatingSystem.jar <span style='color:#111;'> 36.03KB </span>","children":null,"spread":false},{"title":"OperatingSystem","children":[{"title":"bin","children":[{"title":"OS","children":[{"title":"MyLink$1.class <span style='color:#111;'> 1.69KB </span>","children":null,"spread":false},{"title":"MainFrame.class <span style='color:#111;'> 13.99KB </span>","children":null,"spread":false},{"title":"icon.gif <span style='color:#111;'> 10.69KB </span>","children":null,"spread":false},{"title":"MyLink.class <span style='color:#111;'> 1.70KB </span>","children":null,"spread":false},{"title":"GyrJProgressBar$GyrProgressUI.class <span style='color:#111;'> 1.40KB </span>","children":null,"spread":false},{"title":"ProgressBarThread1.class <span style='color:#111;'> 2.27KB </span>","children":null,"spread":false},{"title":"MyPath.class <span style='color:#111;'> 1.46KB </span>","children":null,"spread":false},{"title":"MainFrame$InputNumListener.class <span style='color:#111;'> 1.18KB </span>","children":null,"spread":false},{"title":"Timeing.class <span style='color:#111;'> 1.23KB </span>","children":null,"spread":false},{"title":"MainFrame$3.class <span style='color:#111;'> 765B </span>","children":null,"spread":false},{"title":"ProgressBarRenderer.class <span style='color:#111;'> 1.42KB </span>","children":null,"spread":false},{"title":"ProgressBarThread3$1.class <span style='color:#111;'> 754B </span>","children":null,"spread":false},{"title":"MainFrame$MenuItemListener.class <span style='color:#111;'> 2.18KB </span>","children":null,"spread":false},{"title":"StatusTableModel.class <span style='color:#111;'> 1.19KB </span>","children":null,"spread":false},{"title":"MainFrame$ButtonListener.class <span style='color:#111;'> 3.17KB </span>","children":null,"spread":false},{"title":"ProgressBarThread4$1.class <span style='color:#111;'> 754B </span>","children":null,"spread":false},{"title":"ProgressBarThread3.class <span style='color:#111;'> 4.00KB </span>","children":null,"spread":false},{"title":"PCB.class <span style='color:#111;'> 784B </span>","children":null,"spread":false},{"title":"ProgressBarObserver.class <span style='color:#111;'> 945B </span>","children":null,"spread":false},{"title":"ProgressBarThread2.class <span style='color:#111;'> 2.30KB </span>","children":null,"spread":false},{"title":"MainFrame$2.class <span style='color:#111;'> 765B </span>","children":null,"spread":false},{"title":"ProgressBarThread4.class <span style='color:#111;'> 3.91KB </span>","children":null,"spread":false},{"title":"ProgressBarObservable.class <span style='color:#111;'> 643B </span>","children":null,"spread":false},{"title":"MainFrame$1.class <span style='color:#111;'> 598B </span>","children":null,"spread":false},{"title":"GyrJProgressBar.class <span style='color:#111;'> 1.18KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":".settings","children":[{"title":"org.eclipse.core.resources.prefs <span style='color:#111;'> 77B </span>","children":null,"spread":false},{"title":"org.eclipse.jdt.core.prefs <span style='color:#111;'> 598B </span>","children":null,"spread":false}],"spread":true},{"title":"src","children":[{"title":"OS","children":[{"title":"MyLink.java <span style='color:#111;'> 2.03KB </span>","children":null,"spread":false},{"title":"MyPath.java <span style='color:#111;'> 1.17KB </span>","children":null,"spread":false},{"title":"ProgressBarObservable.java <span style='color:#111;'> 390B </span>","children":null,"spread":false},{"title":"PCB.java <span style='color:#111;'> 771B </span>","children":null,"spread":false},{"title":"icon.gif <span style='color:#111;'> 10.69KB </span>","children":null,"spread":false},{"title":"GyrJProgressBar.java <span style='color:#111;'> 1.80KB </span>","children":null,"spread":false},{"title":"ProgressBarThread1.java <span style='color:#111;'> 1.94KB </span>","children":null,"spread":false},{"title":"ProgressBarThread3.java <span style='color:#111;'> 3.72KB </span>","children":null,"spread":false},{"title":"ProgressBarThread4.java <span style='color:#111;'> 3.57KB </span>","children":null,"spread":false},{"title":"MainFrame.java <span style='color:#111;'> 16.91KB </span>","children":null,"spread":false},{"title":"ProgressBarThread2.java <span style='color:#111;'> 2.02KB </span>","children":null,"spread":false},{"title":"ProgressBarObserver.java <span style='color:#111;'> 483B </span>","children":null,"spread":false},{"title":"StatusTableModel.java <span style='color:#111;'> 965B </span>","children":null,"spread":false},{"title":"Timeing.java <span style='color:#111;'> 554B </span>","children":null,"spread":false},{"title":"ProgressBarRenderer.java <span style='color:#111;'> 1.33KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":".project <span style='color:#111;'> 391B </span>","children":null,"spread":false},{"title":".classpath <span style='color:#111;'> 301B </span>","children":null,"spread":false}],"spread":true},{"title":"QQ截图20141225160643.jpg <span style='color:#111;'> 192.87KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

  • qq_33782945 :
    这个帮助我度过一次期末危机,谢谢。
    2018-05-10
  • Frank_Shieh :
    这个对我有很大帮助。
    2015-09-04

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明