亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? test.java

?? 操作系統-動態分區分配算法 操作系統-動態分區分配算法
?? JAVA
字號:
import java.awt.Color;
import java.util.*;
import javax.swing.JTextPane;
import javax.swing.text.*;

//代表內存信息的類
class mem {// 每個類有四個屬性,m1,m2,m3,m4分別代表分區號、大小、起址、狀態(0表示未分配,1表示已分配)
	int m1, m2, m3, m4;

	public mem(int a, int b, int c, int d) {
		m1 = a;
		m2 = b;
		m3 = c;
		m4 = d;
	}

	public static mem[] lian1(mem[] m) {// 將空閑分區存入數組
		// 先用for循環統計空閑分區數
		int freeLength = 0;
		for (int i = 0; i < m.length; i++) {
			if (m[i].m4 == 0) {// 假如0則代表未分配,即空閑分區
				freeLength++;
			}
		}
		// 生成空的數組準備存入空閑分區信息
		mem[] f = new mem[freeLength];
		int k = 0;
		for (int i = 0; i < m.length; i++) {
			if (m[i].m4 == 0) {// 假如有未分配分區則存入數組
				f[k] = new mem(m[i].m1, m[i].m2, m[i].m3, m[i].m4);
				k++;
			}
		}
		return f;// 將空閑分區數組返回
	}

	// 將數組進行排序的方法,用于最佳及最壞適應算法的空閑分區排序
	public static void px1(mem[] f) {
		// 從小到大排序
		for (int i = 0; i < f.length; i++) {
			for (int j = (i + 1); j < f.length; j++) {
				if (f[j].m2 < f[i].m2) {
					mem x = f[i];
					f[i] = f[j];
					f[j] = x;
				}
			}
		}
	}

	public static void px2(mem[] f) {
		// 從大到小排序
		for (int i = 0; i < f.length; i++) {
			for (int j = (i + 1); j < f.length; j++) {
				if (f[j].m2 > f[i].m2) {
					mem x = f[i];
					f[i] = f[j];
					f[j] = x;
				}
			}
		}
	}
}

// TextPane中的字體顯示方案
class add {
	String str;
	JTextPane t;

	public add() {

	}

	public static void insert(String str, JTextPane t) {// 輸出黑色文本的方法
		Document docs = t.getDocument();// 利用getDocument()方法取得現時JTextPane的Document
		SimpleAttributeSet attrset = new SimpleAttributeSet();// 字體屬性
		StyleConstants.setFontFamily(attrset, "宋體");// 字體類型
		StyleConstants.setForeground(attrset, Color.black);// 顏色
		StyleConstants.setBold(attrset, false);// 是否加粗
		StyleConstants.setItalic(attrset, false);// 是否斜體
		StyleConstants.setFontSize(attrset, 12);// 字體大小
		try {
			docs.insertString(docs.getLength(), str, attrset);// 將str插入到當前文本的最后
		} catch (BadLocationException ble) {
			System.out.println("BadLocationException:" + ble);
		}
	}

	public static void insert2(String str, JTextPane t) {// 輸出紅色文本的方法
		Document docs = t.getDocument();
		SimpleAttributeSet attrset = new SimpleAttributeSet();
		StyleConstants.setFontFamily(attrset, "宋體");
		StyleConstants.setForeground(attrset, Color.red);
		StyleConstants.setBold(attrset, false);
		StyleConstants.setItalic(attrset, false);
		StyleConstants.setFontSize(attrset, 12);
		try {
			docs.insertString(docs.getLength(), str, attrset);
		} catch (BadLocationException ble) {
			System.out.println("BadLocationException:" + ble);
		}
	}

	public static void insert3(String str, JTextPane t) {// 輸出藍色文本的方法
		Document docs = t.getDocument();
		SimpleAttributeSet attrset = new SimpleAttributeSet();
		StyleConstants.setFontFamily(attrset, "宋體");
		StyleConstants.setForeground(attrset, Color.BLUE);
		StyleConstants.setBold(attrset, false);
		StyleConstants.setItalic(attrset, false);
		StyleConstants.setFontSize(attrset, 12);
		try {
			docs.insertString(docs.getLength(), str, attrset);
		} catch (BadLocationException ble) {
			System.out.println("BadLocationException:" + ble);
		}
	}

	// 用于輸出空閑分區鏈的方法
	public static void printF(mem[] f, JTextPane t) {
		add.insert(" -------  空閑分區鏈  --------" + "\n", t);// 調用add類的insert方法插入黑色文本
		add.insert(" 分區號  大小/KB  起址/KB" + "\n", t);
		for (int i = 0; i < f.length; i++) {// 用for循環將空閑分區數組依次輸出
			String s1 = " " + f[i].m1 + "", s2 = " " + f[i].m2 + "", s3 = " "
					+ f[i].m3;
			// 以下if語句用于為字符串加空格,以避免排列不整齊
			if (f[i].m1 < 10) {
				s1 = " " + s1;
			}
			if (f[i].m2 < 10) {
				s2 = " " + s2;
			}
			if (f[i].m3 < 10) {
				s3 = "  " + s3;
			} else {
				if (f[i].m3 < 100) {
					s3 = " " + s3;
				}
			}
			String mes = "  " + s1 + "     " + s2 + "      " + s3;
			add.insert3(mes + "\n", t);
		}
		add.insert(" -----------------------------" + "\n", t);
	}

	// 顯示隨機數組創建結果的方法,供各個分配算法調用
	public static void printJ(int[] a, JTextPane t) {
		add.insert(" 隨機創建了以下大小的待分配作業:" + "\n", t);
		// 通過for循環將傳入的數組a中的元素一個個輸出,a即代表等待作業大小的數組
		for (int i = 0; i < a.length; i++) {
			add.insert(" [" + a[i] + "]", t);
		}
		add.insert("\n", t);
	}

}

// Test類中提供多個常用方法供其他類調用
public class Test {

	// 下面是輸出所有內存分區狀態的方法,類似于printF
	public static void print(mem[] spaces, JTextPane t) {
		add.insert(" --------------------------------" + "\n", t);
		add.insert(" 分區號  大小/KB  起址/KB   狀態" + "\n", t);
		for (int i = 0; i < spaces.length; i++) {
			String s1 = " " + spaces[i].m1 + "", s2 = " " + spaces[i].m2 + "", s3 = " "
					+ spaces[i].m3 + "", s4;
			if (spaces[i].m1 < 10) {
				s1 = "  " + s1;
			} else {
				if (spaces[i].m1 < 100) {
					s1 = " " + s1;
				}
			}
			if (spaces[i].m2 < 10) {
				s2 = "  " + s2;
			} else {
				if (spaces[i].m2 < 100) {
					s2 = " " + s2;
				}
			}
			if (spaces[i].m3 < 10) {
				s3 = "  " + s3;
			} else {
				if (spaces[i].m3 < 100) {
					s3 = " " + s3;
				}
			}
			if (spaces[i].m4 == 0) {// 該類第四個屬性若為零則代表未分配
				s4 = "未分配";
			} else {
				s4 = "已分配";
			}
			String mes = " " + s1 + "     " + s2 + "     " + s3 + "    " + s4;
			if (spaces[i].m4 == 0) {
				add.insert3(mes + "\n", t);
			} else {
				add.insert2(mes + "\n", t);
			}

		}
		add.insert(" --------------------------------" + "\n", t);
	}

	// build為隨機創建內存分區狀態的方法
	public static mem[] build() {
		int sum = 0, index = 0;
		// 創建一個足夠大的數組存放隨機生成的數,用于生成各個分區的大小,假定內存為256K
		int[] spa = new int[255];
		Random r = new Random();
		for (int i = 0; i < 255; i++) {
			int space = r.nextInt(99) + 1;// 使每個分區大小不超過100,以增多分區數
			sum += space;
			if (sum > 255) {// 假如已超過內存容量,則直接將內存大小減去之前已生成的內存大小總和,表示最后一個分區
				spa[i] = 256 - (sum - space);
				index++;
				break;
			} else {// 否則存入spa數組
				spa[i] = space;
				index++;
			}
		}
		//
		mem[] spaces = new mem[index];
		int j = 0;
		for (int i = 0; i < index; i++) {
			int allocate = r.nextInt(2);// 隨機生成是否已分配的狀態(0,1)
			spaces[i] = new mem(i + 1, spa[i], j, allocate);
			j += spa[i];// 起址為前一個元素的起址加上前一個元素的大小,j初始為0,供給第一個分區
		}
		return spaces;// 將此生成的分區信息數組返回
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人激情校园春色| 欧美激情在线一区二区| 亚洲美女在线一区| 国产亚洲午夜高清国产拍精品| 日韩一本二本av| 欧美一区二区视频观看视频 | 成人网男人的天堂| 国产成人亚洲综合a∨猫咪| 国产一二三精品| 国产一区二区导航在线播放| 久久国产精品99精品国产| 美女在线视频一区| 国产精品一区二区黑丝| 国产馆精品极品| av亚洲精华国产精华| 色偷偷久久人人79超碰人人澡| 一本到三区不卡视频| 欧美日韩一区二区在线观看 | 亚洲不卡一区二区三区| 亚洲成av人影院| 男女激情视频一区| 国产在线一区二区| 成人免费的视频| 色8久久精品久久久久久蜜| 欧美唯美清纯偷拍| 日韩久久精品一区| 久久精品免费在线观看| 亚洲婷婷综合色高清在线| 亚洲尤物在线视频观看| 日韩av网站在线观看| 国产一区二区免费在线| 99久久婷婷国产精品综合| 欧美视频一区二区三区四区| 日韩欧美国产wwwww| 国产日韩欧美不卡在线| 一区二区三区小说| 蜜臀a∨国产成人精品| 国产精品一二三四| 91精品1区2区| 精品嫩草影院久久| 亚洲特级片在线| 免费国产亚洲视频| 成人av综合在线| 欧美日韩国产另类不卡| 久久久美女艺术照精彩视频福利播放| 国产精品天天摸av网| 亚洲国产精品一区二区www| 国产真实乱子伦精品视频| 在线精品视频免费观看| 2021久久国产精品不只是精品| 亚洲免费在线播放| 国产麻豆日韩欧美久久| 在线免费观看日韩欧美| 2021中文字幕一区亚洲| 亚洲在线观看免费视频| 福利一区福利二区| 欧美精品99久久久**| 中文字幕一区二区三区蜜月| 日韩精品成人一区二区在线| av动漫一区二区| 亚洲一区二区三区四区在线观看 | 中文在线资源观看网站视频免费不卡| 一区二区三区四区不卡在线 | 91麻豆自制传媒国产之光| 91麻豆精品国产91久久久更新时间 | 丁香六月久久综合狠狠色| 欧美二区在线观看| 国产精品电影一区二区三区| 奇米精品一区二区三区在线观看一 | 亚洲一区二区av电影| 国产aⅴ综合色| 欧美一级片在线看| 一级日本不卡的影视| 成人丝袜高跟foot| 久久先锋资源网| 性感美女极品91精品| 99re成人精品视频| 亚洲国产精品二十页| 国内成人免费视频| 日韩欧美色电影| 午夜激情久久久| 91福利在线观看| 亚洲人吸女人奶水| 成人国产精品免费观看| 久久久久久久综合狠狠综合| 日本不卡的三区四区五区| 欧美日韩在线播| 一区二区久久久久| 色偷偷88欧美精品久久久| 成人欧美一区二区三区黑人麻豆| 国产精品一区二区久久不卡| 精品国精品自拍自在线| 免播放器亚洲一区| 欧美一区二区女人| 免费在线观看日韩欧美| 欧美日本一区二区三区| 亚洲小说欧美激情另类| 色噜噜狠狠一区二区三区果冻| 一区二区中文视频| 99视频一区二区三区| 国产精品免费av| 成人高清av在线| 国产精品国产三级国产aⅴ无密码| 国产精品亚洲专一区二区三区| 欧美成人伊人久久综合网| 另类综合日韩欧美亚洲| 精品99一区二区| 激情深爱一区二区| 久久嫩草精品久久久久| 国产精品一区免费在线观看| 国产午夜精品理论片a级大结局| 激情综合网天天干| 久久久精品免费免费| 成人三级在线视频| 国产乱码精品1区2区3区| 久久久久国产精品人| 丰满放荡岳乱妇91ww| 国产精品久久久久久久久久免费看 | 欧美xfplay| 国产一区二区三区| 国产欧美精品国产国产专区| 成人高清视频在线观看| 亚洲精选一二三| 欧美男女性生活在线直播观看 | 欧美日韩国产另类一区| 日韩中文字幕亚洲一区二区va在线| 欧美一级艳片视频免费观看| 久久精品二区亚洲w码| 亚洲男同性视频| 日韩福利视频网| jlzzjlzz亚洲女人18| 一区二区三区在线免费观看| 欧日韩精品视频| 日本少妇一区二区| 国产欧美一区视频| 99re这里只有精品6| 亚洲一卡二卡三卡四卡五卡| 欧美一区二区二区| 成人免费看黄yyy456| 一区二区三区.www| 精品免费一区二区三区| 9久草视频在线视频精品| 午夜一区二区三区视频| xnxx国产精品| 日本精品一级二级| 久久99精品久久久久久动态图| 久久精品免视看| 欧美亚洲丝袜传媒另类| 国产露脸91国语对白| 一区二区三区在线视频观看58| 欧美一区二区三区视频免费| 成人精品一区二区三区中文字幕| 亚洲午夜一区二区| 国产丝袜欧美中文另类| 欧美日韩一区二区欧美激情| 国产高清精品久久久久| 亚洲午夜激情av| 久久你懂得1024| 欧美日韩亚洲丝袜制服| 国产成人丝袜美腿| 亚洲电影一区二区三区| 久久久久久久久久电影| 在线精品视频免费观看| 国产黄色成人av| 婷婷久久综合九色国产成人| 国产三级精品视频| 欧美精三区欧美精三区| 波多野结衣在线一区| 麻豆精品在线看| 一区二区视频在线| 久久久久久一二三区| 欧美丰满一区二区免费视频| 99久久久精品免费观看国产蜜| 美女视频黄 久久| 一区二区不卡在线播放| 欧美激情一区二区在线| 日韩精品在线一区二区| 欧美中文字幕一二三区视频| 成人精品高清在线| 久久99精品一区二区三区三区| 夜夜嗨av一区二区三区四季av| 蜜桃久久久久久| 亚洲国产成人av| 亚洲三级小视频| 亚洲国产成人在线| 欧美精品一区二区三| 欧美一区二区在线播放| 欧美日韩一区二区三区在线看| 91麻豆视频网站| av成人老司机| 国产91精品在线观看| 国产一区二区影院| 亚洲成人第一页| 亚洲一区二区美女| 亚洲影院在线观看| 一二三区精品视频| 亚洲人成网站影音先锋播放| 国产精品久99| 中日韩免费视频中文字幕| 国产视频911|