收藏到会员中心

文档题目:

可变分区存储管理实验

可变分区存储管理实验
上传会员: pengcheng
提交日期: 2014-06-05 14:02:10
文档分类: 文档下载
浏览次数: 45
下载次数: 0
下载地址: 点击标题下载 可变分区存储管理实验  如何获取积分?
下载提示: 不支持迅雷等下载工具,请右键另存为下载,或用浏览器下载。不退出登录1小时内重复下载不扣积分。
文档介绍: 以下为文档部分内容,全文可通过注册成本站会员下载获取。也可加管理员微信/QQ:17304545代下载。
文档字数:
可变分区存储管理实验
可变分区存储管理一.实验题目:
编写一个C程序,用char *malloc(unsigned size)函数向系统申请一次内存空间(如size=1000,单位为字节),用循环首次适应法addr = (char *)lmalloc(unsigned size) 和lfree(unsigned size,char * addr)模拟UNIX可变分区内存管理,实现对该内存区的分配和释放管理。
 
可变分区存储管理 二.算法思想:
 本实验采用循环首次适应法分配和回收内存空间,并用双向链表的形式来存储空闲分区表,目的是为了便于对空闲分区表中单元节点的添加和删除操作,提升系统效率。
 算法说明
 可变分区存储管理分配算法
 采用双向链表保存空闲分区表时,将该链表设置成环形链表,并为该表设立head和tail两个指针,且无操作时,head和tail指向同一节点空间。当用循环首次适应法为作业分配大小为size的空闲区时,总是将tail指针从tail原指向节点开始查找。
 当第一次找到大于或等于申请大小的空闲区时,就按所需大小分配给作业。如果非配后院空闲区还有剩余空间,则修改tail当前所指向节点的m_size和m_addr的值,使它记录余下的“零头”。如果作业所需空间正好等于该空闲区大小,那么就删除tail所指向的节点,并将tail指针指向下一个节点。分配并处理好空闲分区表结束后,将head指针指向tail所指的节点空间。并返回分配成功信息。
 可变分区存储管理当tail指针和head指针再次重合时,仍没有找到大于或等于申请大小的空闲区,则返回分配失败信息。
(本文由word文档网(www.wordocx.com)会员上传,如需要全文请注册成本站会员下载)

热门文档下载

相关文档下载

上一篇浅谈合成绝缘子的运行及维护 下一篇我国应对国际贸易中的技术壁垒的..

相关栏目

最新文档下载

推荐文档下载