91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 378KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-16
  • 語言: 其他
  • 標簽: 操作系統??

資源簡介

操作系統實驗五 虛擬內存頁面置換算法(內含源代碼和詳細實驗報告),詳細介紹:http://blog.csdn.net/xunciy/article/details/79239096

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
using?namespace?std;

#define?MaxNumber?100
int?MinBlockNumPageNumLackNumLackPageNum;??//物理塊數,頁面個數,缺頁次數,缺頁數
double??LackPageRate;???//缺頁率
int?PageOrder[MaxNumber];??//頁面序列
int?PageDisCount[MaxNumber];?//當前內存距離下一次出現的距離
int?LRUtime[MaxNumber];???//存儲隊列中各個頁面最近使用情況
int?VirtualQueue[MaxNumber];???//虛擬隊列

void?Enter();??//輸入物理塊數、頁面號順序
void?initial();??//模擬物理塊順序被填滿,初始化物理塊
void?FIFO();????//先進先出FIFO
void?OPI();?????//最佳置換OPI
void?LRU();????//最近最久未使用LRU
void?display();?//顯示執行結果

int?main(){
????Enter();
//????initial();
????FIFO();
????OPI();
????LRU();
????return?0;
}

void?Enter(){
????int?i;
????cout<<“Enter?MinBlockNum:?“;
????cin>>MinBlockNum;//輸入最小物理塊數
????cout<<“Enter?PageNum:?“;
????cin>>PageNum;//輸入頁面個數
????//輸入頁面序列
????cout<<“Enter?PageOrder:?“;
????for?(i=0;i????????cin>>PageOrder[i];
????}
}

void?initial(){
????int?ijk;
????bool?isInQueue;
????LackPageNum?=?MinBlockNum;//缺頁數=物理塊數+缺頁次數
????LackPageRate?=?0.0;

????for(i?=?0;i????????PageDisCount[i]?=?0;??//初始化距離
????????VirtualQueue[i]?=?-1;??//初始化隊列
????}

????for?(i?=?0;i????????isInQueue?=?false;
????????LRUtime[i]?=?0;
????????for?(j?=?0;j????????????if?(VirtualQueue[j]?==?PageOrder[i])//如果頁面在隊列中
????????????????isInQueue?=?true;
????????}
????????if?(!isInQueue){??//當有新的進程進入到隊列時,便計算其對應的距離
????????????VirtualQueue[i]?=?PageOrder[i];//小于物理塊數時,頁面順序進入隊列
????????????for?(k?=?0;k????????????????LRUtime[k]++;???//之前的頁面對應的時間+1
????????????}
????????????display();
????????}
????????else
????????????LRUtime[i]?=?0;??//重新更新為0,表示最近剛剛使用
????}
}

void?display(){
????int?i;
????for?(i?=?0;i=0;i++)
????????cout<????cout<}

void?FIFO(){
????cout<????int?ik;
????cout<<“FIFO“<????initial();
????bool?isInQueue;
????int?point?=?0;??//指向隊列中最老的
????//從物理塊數+1的地方開始繼續分配內存
????for?(i?=?MinBlockNum;i????????isInQueue?=?false;
????????for?(k?=?0;k????????????if?(VirtualQueue[k]?==?PageOrder[i]){???//頁面在隊列中
????????????????isInQueue?=?true;
????????????}
????????}

????????if?(!isInQueue){???//如果頁面不在隊列中,則進行相應的處理
????????????LackPageNum++;??//缺頁數加1
????????????VirtualQueue[point]?=?PageOrder[i];//頁面替換隊列中最老的
????????????display();//輸出物理塊狀態
????????????point++;//后移
????????????if?(point?==?MinBlockNum)//當指向隊尾時后,重新指向隊首
????????????????point?=?0;
????????}
????????else
????????????cout<????}

????LackPageRate?=?(LackPageNum?*?1.0)/PageNum;
????cout<<“LackPageNum:?“<????cout<<“LackPageRate:?“<
}

void?OPI(){
????cout<????int?ikmst;
????cout<<“OPI“<????initial();

????bool?isInQueue;
????int?distance;???//表示隊列每個值距離下一次訪問的距離
????int?point;??//指向最長時間未被訪問的下標

????for(i?=?MinBlockNum;i

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-02-02?14:31??實驗五??虛擬內存頁面置換算法\
?????目錄???????????0??2018-02-02?14:27??實驗五??虛擬內存頁面置換算法\5.FIFO_OPI_LRU\
?????文件????????6019??2017-12-28?22:11??實驗五??虛擬內存頁面置換算法\5.FIFO_OPI_LRU\FIFO_OPI_LRU.cpp
?????文件?????1050111??2017-12-20?19:54??實驗五??虛擬內存頁面置換算法\5.FIFO_OPI_LRU\FIFO_OPI_LRU.exe
?????文件????????5823??2017-12-20?19:54??實驗五??虛擬內存頁面置換算法\5.FIFO_OPI_LRU\FIFO_OPI_LRU.o
?????文件??????100931??2017-12-28?22:41??實驗五??虛擬內存頁面置換算法\實驗五??虛擬內存頁面置換算法.docx

評論

共有 條評論