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

正文內(nèi)容

操作系統(tǒng)原理課程設(shè)計(jì)-模擬存儲(chǔ)器管理(留存版)

  

【正文】 .................11 附錄 ............................................12 3 課程設(shè)計(jì)題目 :模擬存儲(chǔ)器管理 一、設(shè)計(jì)內(nèi)容及要求 編寫(xiě)程序模擬虛擬存儲(chǔ)器管理。 現(xiàn)假定系統(tǒng)為某進(jìn)程分配了三個(gè)物理塊,并考慮有以下的頁(yè)面號(hào)引用串: 7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1 用最佳頁(yè)面置換算法就會(huì)得到下列物理塊使用情況: 頁(yè)面號(hào)引用串 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 2 2 7 0 0 0 0 4 0 0 0 1 1 3 3 3 1 1 前三個(gè) 7 0 1 可以直接進(jìn)入內(nèi)存,由于 7 是未來(lái)最長(zhǎng)時(shí)間不被使用的,所以把 7 換成 2,得到 2 0 1 序列。由于 0 已在內(nèi)存,則無(wú)需置換。這是我這次收獲的最大的好處。//物理塊中此刻存在的頁(yè)面序號(hào) int page_n。 cinmemory_size。//頁(yè)面號(hào)計(jì)數(shù)器 14 for(int i=0。 coutendl。//如果在等待序列中找到與內(nèi)存中相等的頁(yè)面序號(hào) 則給該物理塊做標(biāo)記 q++。h++) }//for(。gg++) memory_table[gg].A=0。 //cout此時(shí)在內(nèi)存中的頁(yè)面序號(hào)是 :endl。 m=m%memory_size。 page_table[num].P=1。 goto begin。 for(int b=0。 cout ┃ **** 算法 算法 ****┃ endl。 optimal()。 default: cout輸入錯(cuò)誤,請(qǐng)重新輸入 endl。 break。l++) }//void LRU() int main() { while(1) { int t。 memory_table[a].page_n=num。k++) { if(page_table[num].page_num==memory_table[k].memory_page_num) { page_table[memory_table[k].page_n].P=0。 }//if(page_table[num].page_num==memory_table[v].memory_page_num) }//for(int v=0。kmemory_size。v++) 17 memory_table[i].memory_page_num=page_table[num].page_num。 }//if(memory_table[g].memory_page_num==page_table[mem].page_num) }//for(int g=0。 }//if((h==page_size1)amp。) { for(int h=num。 //cout此時(shí)在內(nèi)存中的頁(yè)面序號(hào)是 :endl。 }//for(int i=0。 page_table[i].P=0。//頁(yè)號(hào) int memory_num。 假如有以下頁(yè)面號(hào)引用序列: 4 7 0 7 1 0 1 2 1 2 6 經(jīng) LRU 算法運(yùn)算之后得出以下結(jié)果: 頁(yè)面號(hào)引用串 4 7 0 7 1 0 1 2 1 2 6 物理塊使用情況 4 4 4 4 4 4 4 4 4 4 6 7 7 7 7 7 7 7 7 7 7 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 2 2 2 2 11 由于前五個(gè)序列中有重復(fù)的頁(yè)面號(hào),則不能直接全部調(diào)用,先調(diào)入前三個(gè) 4 7 0 ,則后一個(gè) 7 已在內(nèi)存中,無(wú)需置換,然后 1 進(jìn)來(lái), 0 也在內(nèi)存中,則無(wú)需置換,下個(gè) 1 也在內(nèi)存中則無(wú)需置換,然后 2 進(jìn)如 內(nèi)存,后面的 1 2 也都在內(nèi)存中,所以無(wú)需置換, 6 不在內(nèi)存中而且物理塊全部被暫用,就要考慮置換了,由于 4是最近最久未使用使用,則把 4 換成 6 得到 6 7 0 1 2。由于 0 在內(nèi)存中,則無(wú)需置換。//頁(yè)面執(zhí)行順序號(hào) int A。 分別使用下面的頁(yè)面置換算法: ( 1) FIFO頁(yè)面置換算法: ( 2) LRU 頁(yè)面置換算法: ( 3)最佳頁(yè)面置換算法: 錢(qián)萬(wàn)里負(fù)責(zé)構(gòu)思 葉陽(yáng)偉 負(fù)責(zé)編寫(xiě) 二、詳細(xì)設(shè)計(jì) 1)原理概述 用一個(gè)數(shù)組 page_table 存儲(chǔ)就緒頁(yè)面隊(duì)列的序號(hào)和所在物理塊號(hào),用另一個(gè)數(shù)組 memory_table存儲(chǔ)物理塊中頁(yè)面序號(hào)和該物理塊被使用情況輸出 1表示該物理塊未被暫用。又由于 3 在以后不被使用,所以把 3 替換成 1.,得到 2 0 1 序列。由于 3 最近最久未使 用,則把 3 換成 2,得到 4 0 0 最近最久未使用,則把 0 換成 3 得到 4 3 2 。如果下一個(gè)要執(zhí)行的頁(yè)面已在內(nèi)存中,則無(wú)需置換,如果不在內(nèi) 存中,則要考慮置換了。//存儲(chǔ)頁(yè)面 memory memory_table[100]。 memory_table[j].A=0。 if(num=page_size) goto begin。m++) { if(page_table[num].page_num==memory_table[m].memory_page_num) { num+=1。 num+=1。 mem=0。imemory_size。 }//for(int i=0。 }//while(numpage_size) }//void FIFO() //////////////////////// // LRU 頁(yè)面置換算法 // //////////////////////// void LRU() { 18 int num=0。j++) coutmemory_table[j].memory_page_num 。lpage_size。 }//if((page_table[l].page_num==memory_table[a].memory_page_num)amp。 switch (t) { case 0: cout ┏━━━━━━━━━━━━ ━━━━━━━━━━━┓ endl。 FIFO()。 case 3: cout歡迎使用 LRU 頁(yè)面置換算法 endl。 cout ┠───────────────────────┨ endl。(page_table[l].P==1)) continue。amemory_size。 }//for(int i=0。imemory_size。i++
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1