资源简介

实现了如下四种调度算法的模拟:
(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 等数据进行修改。

资源截图

代码片段和文件信息

package OS;

import javax.swing.*;
import javax.swing.plaf.basic.BasicProgressBarUI;
import java.awt.*;
 
/**
 * Created with IntelliJ IDEA.
 * User: noah
 * Date: 7/24/12
 * Time: 8:43 PM
 * To change this template use File | Settings | File Templates.
 */
public class GyrJProgressBar extends JProgressBar {
 
    private class GyrProgressUI extends BasicProgressBarUI {
 
        private double greenOverPercent=100d;
 
      //  private double yellowOverPercent=(1d/3d)*100d;
 
        private JProgressBar jProgressBar;
 
        private GyrProgressUI(JProgressBar jProgressBar) {
            this.jProgressBar = jProgressBar;
            jProgressBar.setBackground(Color.white);
        }
 
        @Override
        protected void paintDeterminate(Graphics g JComponent c) {
 
 
            double percent=100d*this.jProgressBar.getValue()/(this.jProgressBar.getMaximum()-this.jProgressBar.getMinimum());
           
            if (percent >= this.greenOverPercent) {
                this.jProgressBar.setForeground(Color.green);
            } else {
                this.jProgressBar.setForeground(Color.red);
            }
            super.paintDeterminate(g c);
        }
 
    }
 
    public GyrJProgressBar() {
        init();
    }
 
    public GyrJProgressBar(int orient) {
        super(orient);
        init();
    }
 
    public GyrJProgressBar(int min int max) {
        super(min max);
        init();
    }
 
    public GyrJProgressBar(int orient int min int max) {
        super(orient min max);
        init();
    }
 
    public GyrJProgressBar(BoundedRangeModel newModel) {
        super(newModel);
        init();
    }
 
    private void init(){
        this.setBorderPainted(false);
        this.setUI(new GyrProgressUI(this));
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        301  2014-12-23 10:00  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\.classpath

     文件        391  2014-12-23 10:00  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\.project

     文件         77  2014-12-25 09:47  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\.settings\org.eclipse.core.resources.prefs

     文件        598  2014-12-23 10:00  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\.settings\org.eclipse.jdt.core.prefs

     文件       1434  2014-12-25 16:00  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\GyrJProgressBar$GyrProgressUI.class

     文件       1210  2014-12-25 16:00  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\GyrJProgressBar.class

     文件      10949  2013-12-14 18:07  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\icon.gif

     文件        598  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mainframe$1.class

     文件        765  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mainframe$2.class

     文件        765  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mainframe$3.class

     文件       3250  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mainframe$ButtonListener.class

     文件       1211  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mainframe$InputNumListener.class

     文件       2230  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mainframe$MenuItemListener.class

     文件      14329  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mainframe.class

     文件       1734  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mylink$1.class

     文件       1742  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Mylink.class

     文件       1495  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\MyPath.class

     文件        784  2014-12-25 16:00  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\PCB.class

     文件        643  2014-12-25 09:47  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarObservable.class

     文件        945  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarObserver.class

     文件       1456  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarRenderer.class

     文件       2327  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarThread1.class

     文件       2359  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarThread2.class

     文件        754  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarThread3$1.class

     文件       4097  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarThread3.class

     文件        754  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarThread4$1.class

     文件       4007  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\ProgressBarThread4.class

     文件       1222  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\StatusTableModel.class

     文件       1257  2014-12-25 17:01  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\bin\OS\Timeing.class

     文件       1844  2014-12-25 16:00  操作系统课程设计题目四单处理器系统的进程调度源码&详细实验报告【JAVA版】\OperatingSystem\src\OS\GyrJProgressBar.java

............此处省略27个文件信息

评论

共有 条评论