- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于伙伴堆算法的内存分配/释放的模拟实现 功能要求 (1)空闲页面分为10个块组,块组编号为0,1,2,……,8,9; (2)内存空间及其划分(界面): 内存物理空间大小可选择:256M bytes,512M bytes; 每个页框的大小可选择:1K bytes,2K bytes,4K bytes; (3)设计对选择的内存空间进行划分管理模块,当所有内存为空闲时,显示其各块组空闲区链表的内容; (4)随机指定多个不连续占用的内存空间(每块占用空间包括2i个连续的页框),显示各块组空闲区链表的内容; (5)基于内存当前情况,随机产生申请的页框数m,显示满足m个页框的申请后,块组空闲区链表的内容; (6)基于内存当前情况,随机产生被占用的(页框号,块组号)释放,显示释放后块组空闲区链表的内容。 实现 (1)定义空闲区块组链表数据结构; (2)依据块组伙伴的定义,产生空闲区块组链表的内容; (3)满足申请后,重新调整块组链表; (4)释放后,相邻空闲块组依据伙伴关系要合并成大的块组 * Managing Physical Memory Allocate ranges of physically-contiguous pages on request.(为进程分配连续存储区) The allocator uses a buddy-heap algorithm to keep track of available physical pages. (Buddy heap算法记载可用存储区) Each allocatable memory region is paired with an adjacent partner.(每个可用存储区有一个伙伴) Managing Physical Memory Whenever two allocated partner regions are both freed up they are combined to form a larger region.(两个相邻的伙伴被释放时,合并为一个大空闲区) If a memory request cannot be satisfied by allocating an existing small free region, then a larger free region will be subdivided into two partners to satisfy the request.(小区域不能满足时,分割大区域) Buddy heap存储分配 64 32 32 32 16 16 32 16 8 8 8 32 16 8 8 req(8) 8 req(8) req(4) rel(8) 32 8 4 4 16 4 rel(8) 8 32 8 8 8 32 4 4 8 8 8 8 8 4 4 32 8 1(20) 2(21) 3(22) 4(23) … 8(27) 9(28) 10(29) 数据结构: 组号(空闲块数 ):链头指针 Buddy Heap Implementation 24 96 8 16 32 256 相同长度的空闲块构成一组 512 1(20) 2(21) 3(22) 4(23) … 8(27) 9(28) 10(29) 申请长度为128,在第8组中取一块。若第8组已空,在第9组取一块,分配其中的128页,并将剩余的128页记入第8组。若第9组也空,在第10组取一块,进行两次分割,分配128页,剩余的128页和256页分别记入第8组和第9组。 释放是上述操作的逆过程,考虑伙伴的合并。两个块为伙伴的条件是:(1)两个块的大小相同,如b个页面;(2)两个块的物理地址连续;(3)位于后面块的最后页面编号必须是2b的整数倍。 Buddy Heap Implementation Buddy Heap Implementation I unit block head 2 unit block head 4 unit block head 8 unit block head I6 unit block head 32 unit block head ... Problem: internal fragmentation eg: req(17) second memory allocation carves slabs (small units) and manage them separately thi
您可能关注的文档
- 吉林大学《线性代数》线性代数24课xm54.ppt
- (张俊民)中级财务会计第12章财务报表.ppt
- 计算机组成原理(李小勇)22.ppt
- 计算机组成原理(李小勇)21.ppt
- 吉林大学《线性代数》线性代数17.ppt
- 分析师职业发展前景.pptx
- 华中农业大学《微积分》方红第三章1.ppt
- 电波传播理论(徐立勤)db12.ppt
- 集成传感器与应用—课后题目.ppt
- 德育情况思想道德答辩11.pptx
- 实施指南(2025)《JB_T 12842-2016空调系统用辐射换热器》.pptx
- 实施指南(2025)《JB_T 12843 - 2016 离心式制冷剂压缩机解读》.pptx
- 实施指南(2025)《JB_T 12851-2016柴油机喷油泵 等压出油阀偶件》.pptx
- 实施指南(2025)《HJ 804-2016土壤 8种有效态元素的测定 二乙烯三胺五乙酸浸提-电感耦合等离子体发射光谱法》.pptx
- 实施指南(2025)《HJ600-2011水质梯恩梯、黑索今、地恩梯的测定气相色谱法》.pptx
- 实施指南(2025)《JB_T 6118 - 2016 沉降过滤离心机解析》.pptx
- 实施指南(2025)《HJ 811-2016水质 总硒的测定 3,3'-二氨基联苯胺分光光度法》.pptx
- 实施指南(2025)《HJ 814-2016水和土壤样品中钚的放射化学分析方法》.pptx
- 实施指南(2025)《HJ19-2011环境影响评价技术导则生态影响》.pptx
- 实施指南(2025)《HJ605-2011 土壤挥发性有机物检测标准解读》.pptx
最近下载
- 高中语文人教版一轮复习古代诗歌鉴赏形象(共59张)讲课.ppt VIP
- APx-525,APx-515,APx-555音频分析仪音频测试仪操作说明书8.ppt VIP
- 南中大《金匮要略》教案.pdf VIP
- 抗生素耐药性的原因与管理.pptx VIP
- 外研版高中英语新教材必修第一册:UNIT 5 Into the wild 精品教学课件.pptx VIP
- 2025-2026学年小学信息技术(信息科技)三年级上册湘科版(2024)教学设计合集.docx
- 发生脑疝的应急预案演练脚本.docx
- 抗生素耐药性及其管理.pptx VIP
- 煤矿井巷工程建设施工组织设计.pdf VIP
- 地面架空模块.pdf VIP
文档评论(0)