资源简介
操作系统课设-页面置换算法,实现FIFO、LRU、Clock三种置换算法,通过GUI界面展示。
代码片段和文件信息
package gui;
import javax.swing.Jframe;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTextField;
import utils.ListUtils;
public class Animationframe extends Jframe {
private static final long serialVersionUID = 1L;
// 访问序列长度
private int count;
// 内存块数
private int memory;
// 数据
private object[][] data;
// 访问序列
private String[] accessSequence;
ClockThread clockThread;
// 内存块
private JTextField[] textField;
// 当前访问页面
JTextArea current;
public Animationframe(int memory String[] accessSequence object[][] data) {
count = accessSequence.length;
this.memory = memory;
this.data = data;
this.accessSequence = accessSequence;
Jframe animationframe = new Jframe();
animationframe.settitle(“页面置换算法动态演示“);
animationframe.setBounds(550 260 541 562);
animationframe.setDefaultCloseOperation(2);
animationframe.getContentPane().setLayout(null);
JPanel functionPanel = new JPanel();
functionPanel.setBackground(Color.WHITE);
functionPanel.setBounds(10 10 224 453);
animationframe.getContentPane().add(functionPanel);
functionPanel.setLayout(null);
JButton autoRun = new JButton(“运行“);
autoRun.setBounds(33 72 93 23);
functionPanel.add(autoRun);
JLabel lab1 = new JLabel(“当前访问页面:“);
lab1.setBounds(33 221 93 23);
functionPanel.add(lab1);
current = new JTextArea();
current.setBounds(136 221 63 24);
functionPanel.add(current);
JButton stop = new JButton(“停止“);
stop.setBounds(33 137 93 23);
functionPanel.add(stop);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(244 10 257 453);
animationframe.getContentPane().add(scrollPane);
JPanel showPanel = new JPanel();
showPanel.setBackground(Color.WHITE);
scrollPane.setViewportView(showPanel);
showPanel.setLayout(null);
textField = new JTextField[memory];
/*textField1 = new JTextField();
textField1.setBounds(80 167 86 37);
showPanel.add(textField1);*/
for(int i = 0; i < memory; i ++) {
JTextField text = new JTextField();
text.setBounds(80 108 + i * 59 86 37);
text.setText(““);
textField[i] = text;
showPanel.add(textField[i]);
}
animationframe.setVisible(true);
autoRun.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
clockThread = new ClockThread(Animationframe.this);
clockThread.start();
}
});
stop.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
clockThread.exit = true;
}
});
}
// 当前计数
private int currentCount = 0;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4640 2018-06-04 21:57 gui\Animationfr
文件 18997 2018-06-04 21:51 gui\Arithmetic.java
文件 3510 2018-06-03 16:05 gui\Initfr
文件 851 2018-06-04 11:45 gui\TestOne.java
文件 2878 2018-06-04 21:24 utils\ListUtils.java
相关资源
- 华中科技大学操作系统课程设计——
- Nachos虚存页面置换算法
- 缓冲池 操作系统课设
- 操作系统课设计 SPOOLing系统
- 页面置换算法 FCFS,SSTF,SCAN和循环
- 操作系统课程设计用C写的模拟页面置
- 操作系统课设 linux 下编程模拟多进程
- 操作系统-页面置换算法的模拟实现及
- 操作系统课设.docx
- 页面置换算法,操作系统实验
- 页面置换算法实验报告
- 广工操作系统课设代码及文档
- 操作系统课设 Ubuntu下运行读者写者问
- 页面置换算法
- 页面置换算法Optimal、FIFO、LRU
- 多用户多目录文件系统设计与实现
- 操作系统课设之页面置换
- 操作系统存储管理页面置换算法(O
- 操作系统实验五 虚拟内存页面置换算
- 广工操作系统课设
- 用多线程同步方法解决生产者-消费者
- 操作系统课程设计页面置换算法
- 操作系统课设 模拟二级文件系统管理
- 操作系统 课程设计 页面置换算法FI
- 先进先出FIFO页面置换算法
- 华南理工大学操作系统课设
- 操作系统课设 缓冲池的管理模拟
- 操作系统课设银行家算法(C源码+报告
- 操作系统课设-贪吃蛇游戏实现
- 用多进程同步方法演示“生产者-消费
评论
共有 条评论