免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.实验五 动态分区管理模拟实验报告 关键问题:写一动态分区管理程序,使其内存分配采用最优适应分配算法。设计思路:在空闲分区链中找最适合的空闲块,使内存碎片尽量的减少!根据最佳适应算法原理,在内存分配函数ffallocation()中,增加记录适合空白块的标记sp,然后拿当前空白块fp减去后jl的后的大小和它后面的另一空白块sp减去jl的大小相比较。如果前者大于后者,且后者的空白区大于jl的大小,则当前空白块为sp,否则继续往后比较,直到空闲分区链末尾!则当前空白块为最适合的空白块!然后就把当前空白块分配给作业。其他部分的代码与实例相同!实现的关键代码:/-/有两个链:空白块链及作业链.空白块链描述空白块,链首指针freep,初始为一大块空白块./作业链按从高址到低址的顺序链接,链首指针jobp/为作业jn分配jl大小内存,起始地址为javoid ffallocation(int jl,char jn10,int* ja) mat* jp=NULL;/作业链当前节点 mat* jp2=NULL;/新的作业节点 mat* jp1=NULL;/ freearea* fp=NULL;/当前空白块 /!修改部分 freearea* sp;/记录适合的空白块 int i; *ja=-1; if (totalfreefreesizenext;/当前空白块大小不满足要求sp=sp-next;else /将当前空白块分配给作业/*当当前空白块fp与它的下一块空白块sp相比较,如果它减去jl后大于下一空白块sp减去jl,且下一空白块sp大于等于jl,则当前空白块为sp;否则sp继续往后查找,直到空闲块查找完毕, 然后当前空闲块为所要查找的适合空闲块!*/ while(sp!=NULL) if(fp-freesize-jlsp-freesize-jl)&(sp-freesize=jl) fp=sp; else sp=sp-next; /! jobnumber+; totalfree=totalfree-jl; jp2=new mat;/申请一块作业节点空间 /在节点上登记为该作业分配的内存空间 / for (i=0;ijobname)i= ; i=-1; while(jn+i) (jp2-jobname)i=jni; (jp2-jobname)i=0; jp2-joblength=jl; jp2-jobaddress=fp-freeaddress;/登记该作业的起始地址 *ja=jp2-jobaddress; /将节点jp2插入作业链jobp,按高址到低址的顺序。 if (jobp=NULL) /插入链首 jp2-next=NULL;jp2-back=NULL; jobp=jp2; else jp=jobp;/取链首指针 while(jp!=NULL) & (jp2-jobaddressjobaddress) jp1=jp;/jp1为jp的前一个节点 jp=jp-next;/继续搜索 /将jp2插入到jp1之后、jp之前 jp2-next=jp; if (jp=NULL) /插到链尾 jp2-back=jp1; jp1-next=jp2; else /插在链中间 jp2-back=jp-back; if (jp-back!=NULL)/jp不是首节点 jp1-next=jp2; else jobp=jp2;/jp是首节点 jp-back=jp2; /if (jobp=NULL) /剩余空白块处理 if (fp-freesize-jlnext!=NULL) (fp-next)-back=fp-back;/fp非尾节点 if (fp-back!=NULL) (fp-back)-next=fp-next;/fp非首节点 else freep=fp-next;/fp为首节点 else /登记余下空白块fp:节点链指针不变,调整块的大小及地址 fp-freesize=fp-freesize-jl; fp-freeaddress=fp-freeaddress+jl;/分配空白块前半部分 return; /else /将当前空白块分配给作业 / while (fp!=NULL)/-程序运行结果:总结及进一步改善建议:从这次实验中,我更
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026秋季国家管网集团储运技术发展有限公司高校毕业生校园招聘笔试参考题库(浓缩500题)附答案详解(基础题)
- 2026秋季国家管网集团油气调控中心高校毕业生招聘14人笔试参考题库(浓缩500题)附答案详解(b卷)
- 2026国网贵州省电力公司高校毕业生提前批招聘(约450人)笔试备考题库浓缩500题附答案详解(黄金题型)
- 2026国网辽宁省电力公司高校毕业生提前批招聘笔试模拟试题浓缩500题含答案详解(a卷)
- 2026国网上海市电力公司高校毕业生提前批招聘笔试参考题库浓缩500题及答案详解1套
- 2026秋季国家管网集团湖南公司高校毕业生招聘4人考试备考试题(浓缩500题)带答案详解(b卷)
- 2026国网青海省电力公司高校毕业生提前批招聘(约450人)笔试备考题库浓缩500题及答案详解(考点梳理)
- 2026秋季国家管网集团共享运营分公司高校毕业生招聘笔试参考题库(浓缩500题)含答案详解(培优)
- 2026秋季国家管网集团山东分公司高校毕业生招聘考试备考题库(浓缩500题)及参考答案详解(轻巧夺冠)
- 2026秋季国家管网集团山东分公司高校毕业生招聘考试参考试题(浓缩500题)及答案详解【名校卷】
- 血透患者内瘘护理查房
- 玻璃体积血治疗标准讲课件
- 二氧化锰体系介导双酚A与喹诺酮类抗生素非生物转化机制探究
- LS-T8014-2023高标准粮仓建设标准
- 苏教版二年级数学上册全册教案
- 2025年农业技术推广考试题及答案
- 市政工程现场管理课件
- 极端天气下的安全管理-洞察阐释
- 四川甘孜州公开招聘社区工作者考试全真模拟测试带答案2024年
- 数智化背景下的高校教师教学评价体系构建与创新实践
- 村委会换届知识讲课件
评论
0/150
提交评论