資源簡介
工具:Eclipse Java
進(jìn)程調(diào)度:先來先服務(wù)、靜態(tài)優(yōu)先數(shù)調(diào)度、最短時(shí)間調(diào)度
作業(yè)調(diào)度:來先服務(wù)算法、短作業(yè)優(yōu)先算法、高響應(yīng)比算法
內(nèi)存分配:首次適應(yīng)算法FF、循環(huán)首次適應(yīng)算法NF、最佳適應(yīng)算法BF、最壞適應(yīng)算法三種算法WF
前兩個(gè)實(shí)驗(yàn)在別人基礎(chǔ)上添加修改功能,界面還可以,后一個(gè)自己實(shí)現(xiàn)存在小瑕疵,請注意。

代碼片段和文件信息
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{
//界面結(jié)構(gòu)定義
JButton?button_FCFS?button_SJFbutton_HRRN;
JTable?table;
JTextField?TextAvgtotal_time?TextAvgweightotal_time;
//輸入作業(yè)數(shù)預(yù)定窗口
String?str?=?JOptionPane.showInputDialog(“請輸入想?yún)⑴c調(diào)度的作業(yè)數(shù):“);
int?N?=?Integer.parseInt(str);
//數(shù)據(jù)變量定義
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?=?{?“作業(yè)號“?“提交時(shí)間“?“ΔT運(yùn)行““T開始“?“T結(jié)束“?“T周轉(zhuǎn)“?“T帶權(quán)周轉(zhuǎn)““狀態(tài)“};
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平均周轉(zhuǎn):“);
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平均帶權(quán)周轉(zhuǎn):“);
label3.setFont(new?Font(null?Font.BOLD?13));
gbc.gridwidth?=?1;
gbc.gridheight?=?1;
f.setConstraints(label3?gbc);
cContentP
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????301??2018-01-08?16:17??源代碼\作業(yè)調(diào)度\JobScheduling\.classpath
?????文件????????389??2018-01-08?16:17??源代碼\作業(yè)調(diào)度\JobScheduling\.project
?????文件????????598??2018-01-08?16:17??源代碼\作業(yè)調(diào)度\JobScheduling\.settings\org.eclipse.jdt.core.prefs
?????文件??????10103??2018-01-08?21:21??源代碼\作業(yè)調(diào)度\JobScheduling\bin\Job\JobScheduling.class
?????文件???????9975??2018-01-08?21:21??源代碼\作業(yè)調(diào)度\JobScheduling\src\Job\JobScheduling.java
?????文件????????301??2018-01-08?22:54??源代碼\存儲(chǔ)管理\MM\.classpath
?????文件????????378??2018-01-08?22:54??源代碼\存儲(chǔ)管理\MM\.project
?????文件????????598??2018-01-08?22:54??源代碼\存儲(chǔ)管理\MM\.settings\org.eclipse.jdt.core.prefs
?????文件????????777??2018-01-09?22:29??源代碼\存儲(chǔ)管理\MM\bin\MMain\MMOS$1.class
?????文件??????11173??2018-01-09?22:29??源代碼\存儲(chǔ)管理\MM\bin\MMain\MMOS.class
?????文件??????15897??2018-01-09?22:29??源代碼\存儲(chǔ)管理\MM\src\MMain\MMOS.java
?????文件????????301??2018-01-09?20:44??源代碼\進(jìn)程調(diào)度\ProcessSchedue\.classpath
?????文件????????390??2018-01-09?20:44??源代碼\進(jìn)程調(diào)度\ProcessSchedue\.project
?????文件????????598??2018-01-09?20:44??源代碼\進(jìn)程調(diào)度\ProcessSchedue\.settings\org.eclipse.jdt.core.prefs
?????文件????????638??2018-01-09?22:53??源代碼\進(jìn)程調(diào)度\ProcessSchedue\bin\JTableDemo$1.class
?????文件???????1898??2018-01-09?22:53??源代碼\進(jìn)程調(diào)度\ProcessSchedue\bin\JTableDemo$Process.class
?????文件???????9977??2018-01-09?22:53??源代碼\進(jìn)程調(diào)度\ProcessSchedue\bin\JTableDemo$windows.class
?????文件????????841??2018-01-09?22:53??源代碼\進(jìn)程調(diào)度\ProcessSchedue\bin\JTableDemo.class
?????文件??????18205??2018-01-09?22:53??源代碼\進(jìn)程調(diào)度\ProcessSchedue\src\JTableDemo.java
?????文件????1172536??2018-01-27?20:15??操作系統(tǒng)實(shí)驗(yàn)報(bào)告.docx
?????文件???????7074??2018-01-10?00:07??存儲(chǔ)管理實(shí)驗(yàn).jar
?????文件???????7851??2018-01-10?00:08??進(jìn)程調(diào)度實(shí)驗(yàn).jar
?????文件???????5620??2018-01-09?23:31??作業(yè)調(diào)度實(shí)驗(yàn).jar
?????目錄??????????0??2018-01-10?00:10??源代碼\作業(yè)調(diào)度\JobScheduling\bin\Job
?????目錄??????????0??2018-01-10?00:10??源代碼\作業(yè)調(diào)度\JobScheduling\src\Job
?????目錄??????????0??2018-01-10?00:09??源代碼\存儲(chǔ)管理\MM\bin\MMain
?????目錄??????????0??2018-01-10?00:09??源代碼\存儲(chǔ)管理\MM\src\MMain
?????目錄??????????0??2018-01-10?00:10??源代碼\作業(yè)調(diào)度\JobScheduling\.settings
?????目錄??????????0??2018-01-10?00:10??源代碼\作業(yè)調(diào)度\JobScheduling\bin
?????目錄??????????0??2018-01-10?00:10??源代碼\作業(yè)調(diào)度\JobScheduling\src
............此處省略16個(gè)文件信息
評論
共有 條評論