freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

操作系統(tǒng)原理課程設(shè)計-模擬存儲器管理(更新版)

2024-09-15 00:10上一頁面

下一頁面
  

【正文】 用,則把 1 換成 3 得到 2 0 0 已在內(nèi)存中,則無需置換。 假定系統(tǒng)為莫進(jìn)程分配了三個物理 塊,并考慮有以下的頁面號引用串: 9 7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1 經(jīng) FIFO 函數(shù)預(yù)算后將得到下列關(guān)系: 頁面號引用串 7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1 物理塊使用情況 7 7 7 2 2 2 4 4 4 0 0 0 7 7 7 0 0 0 3 3 3 2 2 2 1 1 1 0 0 1 1 1 0 0 0 3 3 3 2 2 2 1 前三個 7 0 1 可以直接進(jìn)入 內(nèi)存,由于 7 最先進(jìn)入內(nèi)存,則將 7 換成 2,得到 2 0 1。由于 4 在以后不被使用,所以用 0 代換 2 0 3 序列。//物理塊中此刻存在的頁面序號 int page_n。 輸入:系統(tǒng)分配的塊數(shù),頁面引用序列。 2) 主要數(shù)據(jù)結(jié)構(gòu) 結(jié)構(gòu)體: Page 結(jié)構(gòu)體存儲就緒隊列頁面的相關(guān)情況 struct page { int page_num。 相關(guān)參數(shù): page_size 用來限定頁面就緒隊列數(shù)由用戶鍵入, memory_size 表示分配的物理塊數(shù)由用戶鍵入 page_table[500] 存儲就緒隊列,限定該隊列最多為 500, 500 可以修改 memory_table[100]表示總共物理塊數(shù)及每個物理塊的使用情況,可用物理塊為 4 100,可以修改其大小 3) 算法(流程圖) 主程序流程圖: 開 始輸 入 功 能 序 號 t0 = t = 3是 否 繼 續(xù)結(jié) 束Y確 定 功 能N輸 入 錯 誤 , 請重 新 輸 入退 出 O p t i m a l F I F O L R UYN Optimal 算法流程圖: 5 開 始輸 入 分 配 物 理 塊 數(shù)m e m o r y _ s i z e , 頁 面 數(shù)p a g e _ s i z e 及 頁 面 信 號一 開 始 , 內(nèi) 存 為 空 ,直 接 填 滿n u m + 1下 一 個 頁 面 是 否 已 在 內(nèi) 存中物 理 塊 中 每 個 頁 面 是 否再 會 被 利 用換 出 一 個 未 被使 用 的 頁 面求 出 最 長 時 間 內(nèi) 不 會 被 使 用 的頁 面換 出 該 頁 面n u m p a g e _ s i z e結(jié) 束YNNYYN 6 FIFO 算法流程圖 開 始輸 入 分 配 物 理 塊 數(shù)m e m o r y _ s i z e , 頁 面 數(shù)p a g e _ s i z e 及 頁 面 信 號一 開 始 , 內(nèi) 存 為 空 ,直 接 填 滿n u m + 1下 一 個 頁 面 是 否 已 在 內(nèi) 存中n u m p a g e _ s i z e結(jié) 束YN將 m 個 物 理 塊 頁 面 與 下 一 個 頁 面對 換( m + 1 ) % m e m o r y _ s i z eNY LRU 算法流程圖: 7 開 始輸 入 分 配 物 理 塊 數(shù)m e m o r y _ s i z e , 頁 面 數(shù)p a g e _ s i z e 及 頁 面 信 號一 開 始 , 內(nèi) 存 為 空 ,直 接 填 滿n u m + 1下 一 個 頁 面 是 否 已 在 內(nèi) 存中n u m p a g e _ s i z e結(jié) 束Y找 出 最 近 最 久 未 使 用 頁 面 將 其置 換 出 來NYN 8 源程序文件名: 虛擬存儲器管理 .cpp 執(zhí)行文件名 :虛擬存儲器管理 .exe 三、 實驗結(jié)果與分析 t=1 時選擇 optimal 頁面置換算法 所謂的最佳頁面置換算法就是 其選擇的被淘汰頁面將是以后永不使用,或許是在最長時間內(nèi)不再被訪問的頁面。又由于 0、 1 已在內(nèi)存中,所以無需替換。由于 0 最先進(jìn)入內(nèi)存,則把 0 換成 3,得到 4 2 4 最先進(jìn)入內(nèi)存,則把 4 換成 0,得到 0 2 2 3 已在內(nèi)存中,則無需置換。由于 4 最近最久未使用,則把 4 換成 0,得到 0 3 2,由于 3 2 已在內(nèi)存,則無需置換。比如解決多重循環(huán)跳出問題,以前沒敢用 goto 語句,因為大家都說它不太好,破壞了程序的結(jié)構(gòu)。我用 m 標(biāo)記將要唄置換的物理塊序號,該物理塊被替換后, m+1,這樣下一次替換的就是下一個物理塊,就這樣,先進(jìn)來的總是先 12 出去。//狀態(tài)位 0 表示不在內(nèi)存物理塊中 1 表示在物理塊中 }。 13 void reset()//頁面 物理塊初始化 { cout請輸入頁面大小 :。ipage_size。 }// for(int j=0。i++) }//void creat() //////////////////////////////////// /// optimal 最佳置換算法 /// //////////////////////////////////// void optimal() { int mem=0。 }//if(page_table[num].page_num==memory_table[v].memory_page_num) }//for(int v=0。jmemory_size。 goto begin。h++) { if(memory_table[q].memory_page_num==page_table[h].page_num)//找出內(nèi)存中頁面在等待序列中需等待的時間最長的序號 { if(hmem) mem=h。 for(int l=0。(page_table[h].page_num!=memory_table[q].memory_page_num)) }//for(int h=num。 num+=1。g++) for(int gg=0。i++) { for(int v=0。 page_table[num].P=1。imemory_size。 num++。 for(int i=0。v++) memory_table[i].memory_page_num=page_table[num].page_num。 coutendl。 page_table[num].P=1。l++) for(int a=0。 num++。amp。 cout ┃******************************************************************┃ endl。 cout ┃ 模擬虛擬存儲器管理 ┃ endl。 reset()。 break。 } } 21
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1