资源简介
工具:Eclipse Java
进程调度:先来先服务、静态优先数调度、最短时间调度
作业调度:来先服务算法、短作业优先算法、高响应比算法
内存分配:首次适应算法FF、循环首次适应算法NF、最佳适应算法BF、最坏适应算法三种算法WF
前两个实验在别人基础上添加修改功能,界面还可以,后一个自己实现存在小瑕疵,请注意。
代码片段和文件信息
package Job;
import java.awt.EventQueue;
import javax.swing.Jframe;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JTable;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.text.DecimalFormat;
public class JobScheduling extends Jframe implements ActionListener{
//界面结构定义
JButton button_FCFS button_SJFbutton_HRRN;
JTable table;
JTextField TextAvgtotal_time TextAvgweightotal_time;
//输入作业数预定窗口
String str = JOptionPane.showInputDialog(“请输入想参与调度的作业数:“);
int N = Integer.parseInt(str);
//数据变量定义
String process_num = null;
String arrive_time = null;
String service_time = null;
String state;
String start_time = null end_time = null total_time = null
weightotal_time = null;
String a[][] = new String[N][8];
String[] name = { “作业号“ “提交时间“ “ΔT运行““T开始“ “T结束“ “T周转“ “T带权周转““状态“};
double avgtotal_time avgweightotal_time;
//主页面布局
public JobScheduling() {
super(“OS-Job Scheduling“);
Container cContentPane = getContentPane();
GridBagLayout f = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
cContentPane.setLayout(f);
table = new JTable(a name);
JScrollPane p1 = new JScrollPane(table);
gbc.gridwidth = GridBagConstraints.REMAINDER;
gbc.gridheight = 40;
gbc.fill = GridBagConstraints.HORIZONTAL;
f.setConstraints(p1 gbc);
cContentPane.add(p1);
JLabel label7 = new JLabel(“ “);
gbc.gridwidth = GridBagConstraints.REMAINDER;
gbc.gridheight = 1;
f.setConstraints(label7 gbc);
cContentPane.add(label7);
button_FCFS = new JButton(“FCFS“);
button_FCFS.setFont(new Font(null Font.BOLD 13));
gbc.gridwidth = 1;
gbc.gridheight = 1;
f.setConstraints(button_FCFS gbc);
cContentPane.add(button_FCFS);
button_SJF = new JButton(“SJF“);
button_SJF.setFont(new Font(null Font.BOLD 13));
gbc.gridwidth = 1;
gbc.gridheight = 1;
f.setConstraints(button_SJF gbc);
cContentPane.add(button_SJF);
button_HRRN = new JButton(“HRRN“);
button_HRRN.setFont(new Font(null Font.BOLD 13));
gbc.gridwidth = GridBagConstraints.REMAINDER;
gbc.gridheight = 1;
f.setConstraints(button_HRRN gbc);
cContentPane.add(button_HRRN);
JLabel label2 = new JLabel(“T平均周转:“);
label2.setFont(new Font(nullFont.BOLD 13));
gbc.gridwidth = 1;
gbc.gridheight = 1;
f.setConstraints(label2 gbc);
cContentPane.add(label2);
TextAvgtotal_time = new JTextField(10);
gbc.weightx = 0.0;
gbc.weighty = 0.0;
gbc.gridwidth = 1;
gbc.gridheight = 1;
f.setConstraints(TextAvgtotal_time gbc);
TextAvgtotal_time.setText(““ + avgtotal_time);
cContentPane.add(TextAvgtotal_time);
JLabel label3 = new JLabel(“T平均带权周转:“);
label3.setFont(new Font(null Font.BOLD 13));
gbc.gridwidth = 1;
gbc.gridheight = 1;
f.setConstraints(label3 gbc);
cContentP
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 301 2018-01-08 16:17 源代码\作业调度\JobScheduling\.classpath
文件 389 2018-01-08 16:17 源代码\作业调度\JobScheduling\.project
文件 598 2018-01-08 16:17 源代码\作业调度\JobScheduling\.settings\org.eclipse.jdt.core.prefs
文件 10103 2018-01-08 21:21 源代码\作业调度\JobScheduling\bin\Job\JobScheduling.class
文件 9975 2018-01-08 21:21 源代码\作业调度\JobScheduling\src\Job\JobScheduling.java
文件 301 2018-01-08 22:54 源代码\存储管理\MM\.classpath
文件 378 2018-01-08 22:54 源代码\存储管理\MM\.project
文件 598 2018-01-08 22:54 源代码\存储管理\MM\.settings\org.eclipse.jdt.core.prefs
文件 777 2018-01-09 22:29 源代码\存储管理\MM\bin\MMain\MMOS$1.class
文件 11173 2018-01-09 22:29 源代码\存储管理\MM\bin\MMain\MMOS.class
文件 15897 2018-01-09 22:29 源代码\存储管理\MM\src\MMain\MMOS.java
文件 301 2018-01-09 20:44 源代码\进程调度\ProcessSchedue\.classpath
文件 390 2018-01-09 20:44 源代码\进程调度\ProcessSchedue\.project
文件 598 2018-01-09 20:44 源代码\进程调度\ProcessSchedue\.settings\org.eclipse.jdt.core.prefs
文件 638 2018-01-09 22:53 源代码\进程调度\ProcessSchedue\bin\JTableDemo$1.class
文件 1898 2018-01-09 22:53 源代码\进程调度\ProcessSchedue\bin\JTableDemo$Process.class
文件 9977 2018-01-09 22:53 源代码\进程调度\ProcessSchedue\bin\JTableDemo$windows.class
文件 841 2018-01-09 22:53 源代码\进程调度\ProcessSchedue\bin\JTableDemo.class
文件 18205 2018-01-09 22:53 源代码\进程调度\ProcessSchedue\src\JTableDemo.java
文件 1172536 2018-01-27 20:15 操作系统实验报告.docx
文件 7074 2018-01-10 00:07 存储管理实验.jar
文件 7851 2018-01-10 00:08 进程调度实验.jar
文件 5620 2018-01-09 23:31 作业调度实验.jar
目录 0 2018-01-10 00:10 源代码\作业调度\JobScheduling\bin\Job
目录 0 2018-01-10 00:10 源代码\作业调度\JobScheduling\src\Job
目录 0 2018-01-10 00:09 源代码\存储管理\MM\bin\MMain
目录 0 2018-01-10 00:09 源代码\存储管理\MM\src\MMain
目录 0 2018-01-10 00:10 源代码\作业调度\JobScheduling\.settings
目录 0 2018-01-10 00:10 源代码\作业调度\JobScheduling\bin
目录 0 2018-01-10 00:10 源代码\作业调度\JobScheduling\src
............此处省略16个文件信息
- 上一篇:超实用Java开发简历
- 下一篇:java毕业设计项目
评论
共有 条评论