日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

操作系统高响应比优先调度算法模拟实验

發(fā)布時(shí)間:2023/12/10 windows 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 操作系统高响应比优先调度算法模拟实验 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

從輸入井中選擇作業(yè)讀入內(nèi)存,使其獲得處理器,得到運(yùn)行的機(jī)會(huì),即為作業(yè)調(diào)度。輸入井中的作業(yè)用“作業(yè)控制塊”(JCB)標(biāo)識(shí),為了進(jìn)行作業(yè)調(diào)度,將作業(yè)控制塊組成一個(gè)隊(duì)列,這個(gè)隊(duì)列稱為后備隊(duì)列。

模擬實(shí)驗(yàn)中沒有實(shí)際作業(yè),作業(yè)控制塊中的信息內(nèi)容只使用了模擬實(shí)驗(yàn)中需要的數(shù)據(jù)。作業(yè)控制塊中包括作業(yè)名、作業(yè)大小、所需打印機(jī)臺(tái)數(shù)、所需磁帶機(jī)數(shù)量、作業(yè)估計(jì)執(zhí)行時(shí)間、作業(yè)等待時(shí)間、指向下一個(gè)作業(yè)控制塊的指針等內(nèi)容。將作業(yè)控制塊組成一個(gè)隊(duì)列,實(shí)驗(yàn)中采用動(dòng)態(tài)鏈表的方式模擬作業(yè)的后備隊(duì)列。作業(yè)控制塊采用結(jié)構(gòu)型數(shù)據(jù)模擬。

模擬實(shí)驗(yàn)中,主存采用可移動(dòng)的可變分區(qū)管理方法,即只要主存空閑區(qū)總和比作業(yè)大就可以滿足作業(yè)對(duì)主存的需求。對(duì)打印機(jī)和磁帶機(jī)這兩種獨(dú)占設(shè)備采用靜態(tài)分配法,即作業(yè)執(zhí)行前必須獲得所需資源,并且執(zhí)行完才歸還。

實(shí)驗(yàn)中作業(yè)的調(diào)度采用響應(yīng)比高者優(yōu)先算法。響應(yīng)比為作業(yè)的等待時(shí)間和作業(yè)估計(jì)執(zhí)行時(shí)間之比。首先計(jì)算出輸入井中滿足條件的作業(yè)的響應(yīng)比,從中選擇響應(yīng)比最高的一個(gè)作業(yè)裝入主存儲(chǔ)器,分配資源。由于是模擬實(shí)驗(yàn),可將作業(yè)控制塊出隊(duì)裝入主存儲(chǔ)器的工作用輸出作業(yè)名模擬,同時(shí)修改系統(tǒng)的資源數(shù)量。

package OS;import java.util.Arrays; import java.util.Scanner;public class ProcessSchAlg {public static void main(String[] args) {Scanner scn = new Scanner(System.in);int num=Integer.valueOf(scn.nextLine());String initMessage[]=new String[num];for(int i=0;i<initMessage.length;i++) initMessage[i]=scn.nextLine();List Queue=new List(initMessage);Queue.show(0);for(int i=0;i<num;i++) Queue.show(deal(Queue.getProcess()));}public static int deal(Process p){if(p.large>5){System.out.println("The RAM is not enough,Process "+p.name+" require failed!!!");return 0;}if(p.printer>5){System.out.println("The printer is not enough,Process "+p.name+" require failed!!!");return 0;}if(p.tape>5){System.out.println("The tape is not enough,Process "+p.name+" require failed!!!");return 0;}System.out.println("Process "+p.name+" is under operating...");System.out.println("Process "+p.name+" operated successfully!");return p.needTime;} }class List{Process head;Process tail;public List(){head=null;tail=null;}public List(String[] initMessage){head=null;tail=null;for(int i=0;i<initMessage.length;i++) {Process temp =new Process(initMessage[i]);insert(temp);}}public void insert(Process temp){if(head==null){head=temp;head.next=tail;}else if(head.next==null){tail=temp;head.next=tail;}else {tail.next=temp;tail=tail.next;}}public Process getProcess(){double[] lev= new double[10];int index=0;Process p=head;while(p!=null){lev[index]=p.level;index++;p=p.next;}Arrays.sort(lev);p=head;if(p==null)return null;else{if(p.next==null){Process t=new Process();t=head;head=null;return t;}else{Process q=head;if(p.level==lev[9]){Process t=new Process();t=head;head=head.next;return t;}p=p.next;while(p!=null){if(p.level==lev[9]){q.next=p.next;return p;}}}}return null;}public void show(int time){Process p=head;if(p==null) System.out.println("Operate Over!");else {System.out.println("name "+"l\t"+"p\t"+"t\t"+"nT\t"+"wT\t"+"lev");while (p != null) {p.waitTime+=time;p.print();p = p.next;}System.out.println();}} }class Process{String name;int large;int printer;int tape;int needTime;int waitTime;double level;Process next;public Process(){}public Process(String s) {int[] num= new int[4];int index=0;for(int i=0;i<s.length();i++){if(s.charAt(i)==' ') {num[index]=i;index++;}}this.name=s.substring(0,num[0]);this.large=Integer.valueOf(s.substring(num[0]+1,num[1]));this.printer=Integer.valueOf(s.substring(num[1]+1,num[2]));this.tape=Integer.valueOf(s.substring(num[2]+1,num[3]));this.needTime=Integer.valueOf(s.substring(num[3]+1));}public void print(){level=1+((1.0*waitTime)/needTime);System.out.print(name+"\t"+large+"\t"+printer+"\t"+tape+"\t"+needTime+"\t"+waitTime+"\t");System.out.printf("%.2f",level);System.out.println();} }

運(yùn)行結(jié)果示范:

總結(jié)

以上是生活随笔為你收集整理的操作系统高响应比优先调度算法模拟实验的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: www.av成人| 久久人人爽人人爽人人片 | 丁香花完整视频在线观看 | 成年人黄色网址 | 日本三级片在线观看 | 大黄网站在线观看 | 96精品在线| 网站av| 午夜视频入口 | 北条麻妃一区二区三区免费 | 一级aaa毛片| 97午夜| 嫩草www | 成人在线播放网站 | 手机看片亚洲 | 99久久伊人 | 丰满岳乱妇一区二区 | 天天干,夜夜爽 | 欧美福利网址 | 无码国产色欲xxxxx视频 | 777视频在线观看 | 日韩精品久久久久久久酒店 | 亚洲涩涩图 | 无码视频在线观看 | 农村激情伦hxvideos | 久久综合成人 | 亚洲精品国产精品乱码视色 | 国产精品一区二区三区免费观看 | 91精品婷婷国产综合久久竹菊 | 黄色一及毛片 | 超碰超碰| 97在线观看视频 | 亚洲色图27p | 亚洲最新偷拍 | 国产免费成人av | 精品成人 | 无码播放一区二区三区 | 久久久久国产精品国产 | 最新国产在线视频 | 欧美极品视频在线观看 | 丰满少妇麻豆av苏语棠 | 中文写幕一区二区三区免费观成熟 | 青青草成人免费视频 | 欧美黄网站 | 二区三区在线观看 | 国产熟女高潮视频 | 一二三四精品 | 国产精品久久久久久久久久久久久久 | 亚洲成人精品在线播放 | 熟女少妇内射日韩亚洲 | 国产98色在线 | 日韩 | 欧美男人又粗又长又大 | 欧美精品免费播放 | 肉体粗喘娇吟国产91 | 精品国产一区二 | 亚洲免费影院 | 欧美偷拍亚洲 | 色姑娘av | 欧美激情亚洲色图 | 黄视频在线免费看 | 99xav| 黄色av网站在线 | 色 综合 欧美 亚洲 国产 | 国产猛男猛女超爽免费视频 | 激情影院内射美女 | 麻豆影视国产在线观看 | 日韩在线免费视频 | 黄色一毛片 | 日剧大尺度床戏做爰 | 无遮挡aaaaa大片免费看 | 日韩一区精品 | 日韩和欧美一区二区 | 日韩另类在线 | 国产一区一一区高清不卡 | 国产成人精品视频ⅴa片软件竹菊 | 免费国产一区 | 成人无码精品1区2区3区免费看 | 久久接色| 亚洲黄色大片 | 精品一区二区三区在线视频 | 日本暧暧视频 | 欧美一性一乱一交一视频 | 午夜精品久久久久久久蜜桃 | 嫩草研究院在线 | 一本到高清 | 污片在线看 | 国产真实自拍 | 网站在线观看你懂的 | 不许穿内裤随时挨c调教h苏绵 | 狠狠热免费视频 | 超碰97在线资源 | 性感美女高潮 | 樱花av在线 | 五月依人网| 天天射天天干天天操 | 欧美四区 | www.96av| 久久久久久久久蜜桃 | 西野翔夫の目の前で犯在线 |