8-2-伙伴系统-动态存储管理-第8章-《数据结构》…
2018-06-18 04:20:19来源:未知 阅读 ()
课本源码部分
第8章 伙伴系统 - 边界标识法
——《数据结构》-严蔚敏.吴伟民版
源码使用说明 链接??? 《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明
课本源码合辑 链接??? 《数据结构》课本源码合辑
习题集全解析 链接??? 《数据结构题集》习题解析合辑
本源码引入的文件 链接? Status.h
文档中源码及测试数据存放目录:数据结构\▲课本算法实现\▲08 动态存储管理\02 BuddySystem
概述
Linux内核内存管理的一项重要工作就是如何在频繁申请释放内存的情况下,避免碎片的产生。Linux采用伙伴系统解决外部碎片的问题,采用slab解决内部碎片的问题,在这里我们讨论外部碎片问题。
解析
避免外部碎片的方法有两种:一种是利用非连续内存的分配;另外一种则是用一种有效的方法来监视内存,保证在内核只要申请一小块内存的情况下,不会从大块的连续空闲内存中截取一段过来,从而保证了大块内存的连续性和完整性。显然,前者不能成为解决问题的普遍方法,一来用来映射非连续内存线性地址空间有限,二来每次映射都要改写内核的页表,进而就要刷新TLB,这使得分配的速度大打折扣,这对于要频繁申请内存的内核显然是无法忍受的。因此Linux采用后者来解决外部碎片的问题,也就是著名的伙伴系统。
伙伴系统的宗旨就是用最小的内存块来满足内核的对于内存的请求。
源码
文件一 ? BuddySystem.h
文件二 ? BuddySystem.c
文件三 ? BuddySystem-main.c (测试文档)
测试结果展示
更多章节持续更新中...
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 学生信息管理系统.cpp(大二上) 2020-04-23
- C++常见编程--获取当前系统时间 2020-02-25
- Java固定资产管理系统 源码 jsp ssh 2020-01-09
- 数据结构-课程设计-职工管理系统 2020-01-02
- Linux低延迟服务器系统调优 2019-11-25
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash