




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、页面置换算法执行分析FIFO算法LRU算法程序代码段注意红框内的代码有修改运行结果如右图main()函数设每页存放一条指令FIFO算法初始化后pn pfntime页表pl0-1-11-1-12-1-13-1-14-1-15-1-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为0busypf_head, busypf_tail为空指针freepf_head内存页框pfcpn
2、pfnnext013-12访问1st条指令后pn pfntime页表pl0-1-11-1-12-1-13-1-140-15-1-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为1busypf_head busypf_tailif(plpagei.pfn = INVALID) /*页面失效*/ diseffect +=1; p=freepf_head-next; /*按FI
3、FO方式调页面入内存页面*/ freepf_head-next=NULL; freepf_head-pn=pagei; plpagei.pfn=freepf_head-next-pfn;busypf_head=busypf_tail=freepf_head; freepf_head=p;/*end if*/内存页框pfcpnpfnnextfreepf_head40-113-1执行代码段2访问2nd条指令后pn pfntime页表pl0-1-11-1-12-1-13-1-140-151-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1
4、-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为2busypf_head busypf_tailif(plpagei.pfn = INVALID) /*页面失效*/ diseffect +=1; p=freepf_head-next; /*按FIFO方式调页面入内存页面*/ freepf_head-next=NULL; freepf_head-pn=pagei; plpagei.pfn=freepf_head-next-pfn;busypf_tail-next=freepf_he
5、ad;busypf_tail=freepf_head; freepf_head=p;/*end if*/内存页框pfcpnpfnnextfreepf_head4051-13-1执行代码段2访问3rd条指令后pn pfntime页表pl0-1-11-1-12-1-132-140-151-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为3busypf_head busypf_
6、tailif(plpagei.pfn = INVALID) /*页面失效*/ diseffect +=1; p=freepf_head-next; /*按FIFO方式调页面入内存页面*/ freepf_head-next=NULL; freepf_head-pn=pagei; plpagei.pfn=freepf_head-next-pfn;busypf_tail-next=freepf_head;busypf_tail=freepf_head; freepf_head=p;/*end if*/内存页框pfcpnpfnnextfreepf_head40513-1执行代码段32-14rd条指令直
7、接访问,访问5th条指令后pn pfntime页表pl0-1-11-1-12-1-132-140-151-16-1-17-1-18-1-19-1-110-1-1113-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为4busypf_head busypf_tailif(plpagei.pfn = INVALID) /*页面失效*/ diseffect +=1; p=freepf_head-next; /*按FIFO方式调页面入内存页面
8、*/ freepf_head-next=NULL; freepf_head-pn=pagei; plpagei.pfn=freepf_head-next-pfn;busypf_tail-next=freepf_head;busypf_tail=freepf_head; freepf_head=p;/*end if*/内存页框pfcpnpfnnextfreepf_head为空4051113-1执行代码段32if(plpagei.pfn = INVALID)/*页面失效*/ diseffect +=1; if(freepf_head) = NULL) /*无空闲页面,需页面淘汰*/p =busyp
9、f_head -next;plbusypf-head-pn.pfn= INVALID; freepf_head= busypf_head;freepf_head-next = NULL; /*释放忙页面队列的第一个页面*/busypf_head= p; /*end if*/ p=freepf_head-next;/*按FIFO方式调页面入内存页面*/ freepf_head-next=NULL; freepf_head-pn=pagei; plpagei.pfn=freepf_head-next-pfn;busypf_tail-next=freepf_head;busypf_tail=free
10、pf_head; freepf_head=p; 访问6th条指令后pn pfntime页表pl0-1-11-1-12-1-132-14-1-151-16-1-17-1-18-1-19-1-110-1-1113-1120-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为5busypf_head busypf_tail内存页框pfcpnpfnnextfreepf_head为空120-151113执行代码段32以次类推,访问后续720条指令,请补充分析
11、演示过程diseffect值为(即缺页数),算法效率为(即程序输出)LRU算法初始化后pn pfntime页表pl0-1-11-1-12-1-13-1-14-1-15-1-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为0p_time值为0freepf_head内存页框pfcpnpfnnext013-12/*页面失效*/diseffect +=1;plpagei.pfn=
12、freepf_head-next-pfn;plpagei.time=present_time;freepf_headpn=pagei; freepf_head=freepf_head-nex;present_time+;访问1st页4后pn pfntime页表pl0-1-11-1-12-1-13-1-14005-1-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为1p_t
13、ime值为1freepf_head内存页框pfcpnpfnnext4013-12执行代码/*直接访问页面*/plpagei.time=present_time;present_time+;访问4th页4后pn pfntime页表pl0-1-11-1-12-11-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为3p_time值为4freepf_head内存页
14、框pfcpnpfnnext40513-132执行代码/*页面失效*/ diseffect +=1; /*无空闲页面,需页面淘汰*/ min=32767; for(j=0;jplj.time & plj.pfn!=INVALID)min=plj.time;minj=j; freepf_head = &pfcplminj.pfn; plminj.pfn=INVALID; plminj.time=-1; freepf_headpn=pagei; freepf_head-next=NULL; plpagei.pfn=freepf_head-next-pfn; plpagei.time=
15、present_time; freepf_head=freepf_head-nex;present_time+;访问6th页12后4 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向执行代码min为1, minj为5淘汰页5pn pfntime页表pl0-1-11-1-12-1-13224035-1-16-1-17-1-18-1-19-1-110-1-11134121513-1-116-1-114-1-115-1-117-1-118-1-119-1-1diseffect值为5p_time值为6freepf_head为空内存页框pfcpnpfnnext401
16、21113-132/*页面失效*/ diseffect +=1; /*无空闲页面,需页面淘汰*/ min=32767; for(j=0;jplj.time & plj.pfn!=INVALID)min=plj.time;minj=j; freepf_head = &pfcplminj.pfn; plminj.pfn=INVALID; plminj.time=-1; freepf_head-next=NULL; plpagei.pfn=freepf_head-next-pfn; plpagei.time=present_time; freepf_headpn=pagei; fre
17、epf_head=freepf_head-nex;present_time+;访问7th页1后4 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向执行代码min为2, minj为3淘汰页3pn pfntime页表pl0-1-11262-1-13-1-14035-1-16-1-17-1-18-1-19-1-110-1-11134121513-1-116-1-114-1-115-1-117-1-118-1-119-1-1diseffect值为6p_time值为7freepf_head为空内存页框pfcpnpfnnext40121113-112以次类推,访问后续
18、820条指令,请补充分析演示过程diseffect值为(即缺页数),算法效率为(即程序输出)OPT算法初始化后pn pfntime页表pl0-1-11-1-12-1-13-1-14-1-15-1-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为0freepf_head内存页框pfcpnpfnnext013-12访问1st条指令后pn pfntime页表pl0-1-11-1
19、-12-1-13-1-140-15-1-16-1-17-1-18-1-19-1-110-1-111-1-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为1内存页框pfcpnpfnnextfreepf_head4013-1执行代码段2/*页面失效*/diseffect +=1; plpagei.pfn=freepf_head-pfn;freepf_head-pn=pagei;freepf_head=freepf_head-next;依次
20、访问2st、3rd 、 4th 、 5th条指令后pn pfntime页表pl0-1-11-1-12-1-132-140-151-16-1-17-1-18-1-19-1-110-1-1113-112-1-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为4内存页框pfcpnpfnnextfreepf_head为-14051113-1执行代码段32/*页面失效*/diseffect +=1; plpagei.pfn=freepf_head-pfn;f
21、reepf_head-pn=pagei;freepf_head=freepf_head-next;访问第6th条指令后pn pfntime页表pl0-1-11-1-12-1-13-1-140-151-16-1-17-1-18-1-19-1-110-1-1113-1122-113-1-116-1-114-1-115-1-117-1-118-1-119-1-14 5 3 4 11 12 1 2 6 7 4 5 6 7 0 1 4 5 0 1页面走向diseffect值为5内存页框pfcpnpfnnextfreepf_head为-14051113-1122/*页面失效*/diseffect +=1;
22、if(freepf_head) = NULL) for(j=0;jtotal_vp; j+)if(plj.pfn!=INVALID) distj=32767;else distj=0; d=1; for( j =i+1; j total_instruction; j +)if(plpagej.pfn !=INVALID &distpagej=32767 ) distpagej=d;d+; max=-1; for(j=0;jtotal_vp;j+)if(maxnext=NULL; plmaxpage.pfn=INVALID; /end if 无空白页面 plpagei.pfn=freepf_head-pfn;freepf_head-pn=pagei;freepf_head=freepf_head-next;dist3327671132767564500102060708090100120130140150160170180190max为32767,maxpage为3,选择淘汰页表项3,页面号2访问第7th条指令后pn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物理中考一轮复习教案 第三十二讲 家庭电路 安全用电
- 介绍购车活动方案
- 仓储公司质量月活动方案
- 广西南宁市横州市2023-2024学年四年级下学期期末数学试卷(含答案)
- 仓鼠笼子活动方案
- 代账公司周年庆活动方案
- 仪态礼仪活动方案
- 任务签到活动方案
- 北京市朝阳区2023-2024学年五年级下学期数学期末试卷(含答案)
- 企业五四生产活动方案
- 标线首件施工总结
- 钢箱梁梁格模型(弯桥)解决方案
- 环刀法压实度自动计算程序
- 项目-杆塔1b模块司令图
- 危大工程验收记录表(模板工程)
- 天津市新版就业、劳动合同登记名册
- 甲酸钙生产工艺
- 法律诊所完整版教学ppt课件全套教程
- 《作物栽培学》课件-第八章甘蔗栽培
- 走进校园课堂体验学校生活——2018幼儿园参观小学简报
- 四年级奥数举一反三用假设法解题PPT学习教案
评论
0/150
提交评论