您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
01 訂閱轉換服務地址可用以下哪個實驗屬于(eNSP模擬實驗-路由器配置NAT網絡地址轉換)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-18 06:31:54【】2人已围观
简介求用c++程序設計的實驗:模擬分頁式存儲管理中硬件的地址轉換和用先進先出調度算法(FIFO)處理缺頁中斷。#include<iostream.h>#include<stdlib.h&
求用c++程序設計的實驗:模擬分頁式存儲管理中硬件的地址轉換和用先進先出調度算法(FIFO)處理缺頁中斷。
#include<iostream.h>
#include<stdlib.h>
#include<iomanip.h>
#include"windows.h"
#include"os.h"
#define n 64//實驗中假定主存的長度
#define m 4//實驗中假定每個作業分得主存塊塊數
int p[m];//定義頁
struct
{
short int lnumber;//頁號
short int flag;//表示該頁是否在主存,“1”表示在主存,“0”表示不在主存
short int pnumber;//該頁所在主存塊的塊號
short int write;//該頁是否被修改過,“1”表示修改過,“0”表示沒有修改過
short int dnumber;//該頁存放在磁盤上的位置,即磁盤塊號
short int times;//被訪問的次數,用于LRU算法
}page[n];//定義頁表
//各個函數的實現如下:
買粉絲puter::買粉絲puter()
{
int i;
for(i=0;i<n;i++)
{
page[i].lnumber = i;
page[i].flag = 0;
page[i].pnumber = 10000;//用10000表示為空
page[i].write = 0;
page[i].dnumber = i;
page[i].times = 0;
}//初始化頁表
for(i=0;i<m;i++)
{
page[i].pnumber = i;
}
for(i=0;i<m;i++)
{
p[i] = i;
page[i].flag = 1;
}//初始化頁
}
void 買粉絲puter::showpagelist()
{
int i;
買粉絲ut<<"頁號"<<"\t"<<"是否在主存中"<<"\t"<<"塊 號"<<"\t"<<"是否被修改過"<<"\t"<<"磁盤塊號"<<"\t"<<"訪問次數"<<endl;
for(i=0;i<n;i++)
{
買粉絲ut<<page[i].lnumber<<"\t"<<page[i].flag<<" "<<page[i].pnumber<<"\t"<<page[i].write<<" "<<page[i].dnumber<<" \t"<<page[i].times<<endl;
}
}
void 買粉絲puter::showpage()
{
int i;
for(i=0;i<m;i++)
{
買粉絲ut<<"\t"<<p[i];
}
買粉絲ut<<endl;
}
void 買粉絲puter::transformation()
{
unsigned logicAddress,logicNumber,innerAddress,physicsAddress,physicsNumber;
int i,head=0,fail = 0;
int method,temppage=0;
short int times = 10000;
買粉絲ut<<"請輸入一個邏輯地址(四位十六進制數):";
cin>>hex>>logicAddress;//讀入邏輯地址
logicNumber = logicAddress >> 10;//得到頁號
買粉絲ut<<"頁號為:"<<logicNumber<<endl;
innerAddress = logicAddress & 0x03ff;//得到頁內地址
買粉絲ut<<"頁內地址為:"<<innerAddress<<endl;
for(i=0;i<n;i++)
{
if(logicNumber==(unsigned)page[i].lnumber)
{
if(page[i].flag == 1)
{
買粉絲ut<<"請求的頁面在主存中!"<<endl;
page[i].times++;
physicsNumber = page[i].pnumber;//由頁號得到塊號
買粉絲ut<<"請求的主存塊號為:"<<physicsNumber<<endl;
physicsAddress = physicsNumber << 10 |innerAddress;//得到物理地址
買粉絲ut<<"請求的物理地址為:"<<physicsAddress<<endl;//輸出物理地址
break;
}
else
{
買粉絲ut<<"請求的頁面不在主存中! 將進行缺頁中斷處理!"<<endl<<"請選擇算法!"<<endl;
買粉絲ut<<"1.先進先出"<<endl<<"2.最近最少用"<<endl<<"請選擇置換算法:";
cin>>method;
if(method == 1) //采用先進先出算法
{
買粉絲ut<<"采用先進先出算法!"<<endl;
fail = p[head];
買粉絲ut<<"第"<<fail<<"頁將被替換!"<<endl;
p[head] = logicNumber;
head = (head+1) % m;
if(page[fail].write == 1)
買粉絲ut<<"第"<<fail<<"頁曾被修改過!"<<endl;
page[fail].flag = 0;
page[logicNumber].flag = 1;
page[logicNumber].write = 0;
page[logicNumber].pnumber = page[fail].pnumber;
page[fail].pnumber = 10000;
page[logicNumber].times++;
break;
}
else if(method == 2) //采用最近最少用算法
{
買粉絲ut<<"采用最近最少用算法!"<<endl;
for(i=0;i<n;i++)
{
if(page[i].flag == 1)
{
if(page[i].times<times)
{
times = page[i].times;
temppage = page[i].lnumber;
}
}
}
買粉絲ut<<"第"<<temppage<<"頁將被替換!"<<endl;
for(i=0;i<m;i++)
{
if(p[i] == temppage)
{
p[i] = logicNumber;
}
}
if(page[temppage].write == 1)
買粉絲ut<<"第"<<temppage<<"頁曾被修改過!"<<endl;
page[temp
很赞哦!(64256)
相关文章
- 02 2022年日本最大貿易伙伴(什么是2012年有東盟發起亞太地區規模最大的自由貿易協定談判2020年中國正式簽)
- 01 買粉絲怎樣制作買粉絲(手機怎么做買粉絲買粉絲 怎么制作買粉絲)
- 02 2023中國對美貿易(2023年經濟形勢會怎樣)
- 02 2022年美國最大貿易伙伴(2022年美國加息利好哪些板塊)
- 01 買粉絲怎樣創建自己的買粉絲(怎樣創建買粉絲買粉絲?)
- 01 買粉絲怎樣關閉訂閱號廣告推送(怎么把買粉絲訂閱號推送的廣告給關閉了?)
- 01 買粉絲掛北京醫院號的買粉絲叫啥(北京中醫醫院的買粉絲買粉絲上怎么預約不到王國瑋醫生的號?線上特需門診上也沒有他的名字、怎么掛他的號?)
- 02 2022年我國貨物貿易進出口總額是多少億(2022年內蒙古對外貿易數據占全國的比重)
- 02 2022年貿易順差國有幾個(2022年前三季度重慶外貿進出口同比增長8.5%,增長的原因有哪些?)
- 02 2022買粉絲買粉絲排行榜總榜(買粉絲買粉絲的文章只能看到2022年的嗎)
热门文章
站长推荐
02 2023年6月外貿數據公布時間(廣東外語外貿大學公開學院關于2023年上半年自考轉考手續辦理的通知?)
02 2023年一季度服務貿易(上海十大知名企業有哪些?)
02 2022年重慶外貿進出口總值(2022 年前 5 個月中國外貿進出口總值同比增長 8.3%,增長的原因是什么?)
02 2023買粉絲推送機制(買粉絲買粉絲怎么一天推送3次)
01 買粉絲投訴買粉絲文章結果反饋(買粉絲投訴之后會怎樣?)
01 買粉絲怎么禁用買粉絲功能(怎么取消或暫停買粉絲買粉絲的功能?)
01 買粉絲怎么搜索買粉絲歷史消息(怎樣查看買粉絲買粉絲已發布的歷史消息)
02 2023京東年貨節廣告(伊洛納滅世之劍怎么得)