- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
模拟操作系统的页面置换 2011年05.12【荐】.doc
//模拟操作系统的页式置换
///s/blog_5e518b010100kbts.html 优先队列 STL
///605768/
#include iostream
#include queue
#include vector
using namespace std;
#define NOT -1
int opt[40000][257];
struct PAGE
{
int number;
int offset;
};
class CPage
{
private:
int MAXN ;
int size_of_v ;
int size_of_vp ;
int size_of_m ;
int size_of_mp ;
int max_vp;
int max_mp;
int lacks;
PAGE * vp_adr;
int * mp_flag;
int * v_mem_adr;
int * vp_map_mp;
int * mp_map_vp;
protected:
bool random();
bool if_in_mem( int number );
public:
CPage( );
~CPage();
static int * vp_flag;
bool Init_v( int size_of_v , int size_of_vp );
bool Init_m( int size_of_m , int size_of_mp );
bool VP_TO_MP();
void Show_vm();
void Show_mp();
bool FIFO();
bool OPT();
bool LRU();
struct cmp
{
bool operator()(const int p1, const int p2)
{
return vp_flag[p1] vp_flag[p2];
};
};
};
int * CPage::vp_flag = NULL;
CPage::CPage( )
{
MAXN = 256;
srand(0);
Init_v(32767,1024);
Init_m(1024,1024);
}
CPage::~CPage()
{
delete v_mem_adr;
delete vp_adr;
delete vp_map_mp;
delete mp_map_vp;
delete mp_flag;
delete vp_flag;
}
bool CPage::Init_v( int a , int b )
{
this-size_of_v = a ;
this-size_of_vp = b ;
cinsize_of_vp;
max_vp = size_of_v / size_of_vp + 1;
v_mem_adr = new int [MAXN];
vp_adr = new PAGE [MAXN];
vp_flag = new int[max_vp];
vp_map_mp = new int[max_vp];
random();
return true;
}
bool CPage::Init_m( int a , int b )
{
this-size_of_m = a ;
this-size_of_mp = b ;
cinmax_mp;
mp_flag = new int [max_mp];
mp_map_vp = new int [max_mp];
return true;
}
bool CPage::random()
{
int i;
int a;
v_mem_adr[0] = 10000;
vp_adr[0].number = 10000 / size_of_vp;
vp_adr[0].offset = 10000 % size_of_vp;
for(i=1 ; i MAXN ; i++)
{
a = rand() % 1024 + 1;
if( a= 512 )
{
v_mem_adr[i] = v_mem_adr[i-1] +1;
}
else if( a= 769 )
{
v_mem_adr[i] = rand() % v_mem_adr[i-1] + 1;
}
else
{
v_mem_adr[i] = rand() % (size_of_v - v_mem_adr[i-1]) + v_mem_adr[i-1];
}
vp_adr[i].number = v_me
您可能关注的文档
- 检验科9月份总结报告【荐】.ppt
- 植物耐盐性的蛋白质组学【荐】.ppt
- 楼宇智能化IBMS系统集成中的应用【荐】.pdf
- 概率与数理统计答案详解6【荐】.pdf
- 概率统计第4章【荐】.ppt
- 概率统计第三章题解【荐】.ppt
- 概率论与数理统计 复习题【荐】.pdf
- 概率论与数理统计 宗旭平版【荐】.doc
- 概率论与数理统计 许承德 习题五答案【荐】.doc
- 概率论与数理统计 许承德 习题四答案【荐】.doc
- 2025年中山市沙溪镇人民政府所属事业单位招聘11人笔试备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库含答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库及完整答案详解1套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库参考答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及答案详解一套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及完整答案详解1套.docx
文档评论(0)