• 大小: 5KB
    文件类型: .java
    金币: 1
    下载: 0 次
    发布日期: 2021-05-18
  • 语言: Java
  • 标签: 操作系统  大作业  

资源简介

LRU页面置换算法 操作系统 大作业 郑州大学软件学院 含有详细注释

资源截图

代码片段和文件信息

/*
 * 页面置换算法-最近最久未使用
 * autour:09软开java 牛海燕 20097760437
 */
package com.pageReplaceAlgorithms;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.linkedList;
import java.util.Queue;

import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
@SuppressWarnings(“serial“)
public class LRU extends Jframe{

private static String message = ““;
private JTextField jtf1 = new JTextField(35);
private JTextField jtf2 = new JTextField(5);
private JTextArea jta = new JTextArea();

public LRU()
{
super(“ LRU算法模拟 “);
JLabel jl1 = new JLabel(“将要引用的页面号(以空格分隔):“);
JLabel jl2 = new JLabel(“系统为进程分配的物理块数:“);
JButton jbtn = new JButton(“执行“);
setBounds(200100 1000 600);
Font f=new Font(“微软雅黑“Font.BOLD16);
jta.setFont(f);
Font f2=new Font(“微软雅黑“Font.BOLD14);
jtf1.setFont(f2);
jtf2.setFont(f2);

jbtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int interruptCount=0;
message = ““;
jta.setText(““);
String pages = jtf1.getText();
String pageArrayStr[] = pages.split(“ “);
int pageArray[]=new int[pageArrayStr.length];//将要引用的页面号
for(int i=0;i {
pageArray[i]=Integer.parseInt(pageArrayStr[i]);
}

int physicalBlockSize=Integer.parseInt(jtf2.getText());//系统为进程分配的物理块数
Queue memoryQueue=new linkedList();

if(physicalBlockSize>=pageArray.length)  //分配的内存块大于需求的内存块数,用不完,不用替换,命中时不用调整队列
{
for(int i=0;i {
boolean isIn=false;
for(int mem:memoryQueue)
{
if(mem==pageArray[i])
{
message+=“命中:“+pageArray[i]+“\n“;
isIn=true;
break;
}
}
if(!isIn)
{
memoryQueue.add(pageArray[i]); //入队操作
message+=“装入:“+pageArray[i]+“\n“;
interruptCount++;
}
}
message+=“中断次数:“+interruptCount+“\n“;
return;

评论

共有 条评论