《OS实验-2013-内存管理》由会员分享,可在线阅读,更多相关《OS实验-2013-内存管理(6页珍藏版)》请在金锄头文库上搜索。
1、主讲教师:何永忠(副教授)联系电话:010-5168637(办) 电子邮件:yzhhe_制作单位:北京交通大学计算机学院操作系统实验指导Date1北京交通大学计算机学院 内存管理器Date2北京交通大学计算机学院 内存管理器实验目的q 设计和实现关于内存管理的内存布局初始 化及内存申请分配、内存回收等基本功能 操作函数,尝试对用256MB的内存空间进 行动态分区方式模拟管理。内存分配的基 本单位为1KB,同时要求支持至少两种分 配策略,并进行测试和对不同分配策略的 性能展开比较评估。Date3北京交通大学计算机学院 内存管理器课题基本要求1q 设计一定的数据结构以描述256MB内存空间的使 用
2、状况,并设计和构建函数void initNC ()实现内存 布局的初始化。假定内存空间的低址部分56MB( 即056M-1)作为系统区和不参与分配过程。q 设计和实现内存申请分配函数ADDR allocateNC(size),内存分配的基本单位为 1KB,同时要求支持至少两种分配策略(如首次 适应、循环首次适应、最佳适应、最坏适应等) ,若分配失败则返回NULL。typedef unsigned long ADDR; 表项内容:分区始址、分区大小、占用情况(空闲/已占用)Date4北京交通大学计算机学院 内存管理器课题基本要求2q 设计和实现内存回收函数void freeNC (ADDR) ,
3、若回收分区与其它空闲分区相邻 接,则采取合并措施。q 基于不同的内存分配策略形成不同版本的 内存管理器,并根据内存平均利用率和分配 查找分区比较次数等指标展开测试和对不同 分配策略的内存管理器性能进行评估。指已分配内存占总可分配内存的平均比率Date5北京交通大学计算机学院 内存管理器课题基本要求3q 测试例程框架: 循环 n 产生随机数,并根据该值确定是申请内存还是回收内存;n 若是申请内存,还需进一步产生申请内存大小(服从正态 /均匀分布);若是回收内存还需产生随机数和选择回收区 ;n 收集测试数据用于性能评价; 性能指标计算 q 分析性能测试数据,并借用图形如曲线方式来描述平均内 存申请大小与平均内存利用率及平均查找步骤之间的关系Date6北京交通大学计算机学院