北交大操作系统作业-内存管理器实验.doc

北交大操作系统作业-内存管理器实验.doc

ID:50893308

大小:118.50 KB

页数:14页

时间:2020-03-15

北交大操作系统作业-内存管理器实验.doc_第1页
北交大操作系统作业-内存管理器实验.doc_第2页
北交大操作系统作业-内存管理器实验.doc_第3页
北交大操作系统作业-内存管理器实验.doc_第4页
北交大操作系统作业-内存管理器实验.doc_第5页
资源描述:

《北交大操作系统作业-内存管理器实验.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验三内存管理1一.实验目的1二.实验内容1三.实验设计1四.模拟实验2First.cpp3First.h5Next.cpp7Next.h9五.实验结果12六.实验总结15实验三内存管理一.实验目的构造一个没有虚存功能的内存管理系统,并进行测试和对不同分配策略的性能展开比较评估。本次实验,选择的分配策略:First-fit和next-fit二.实验内容1、设计一个内存管理器,支持至少两种分配策略(本实验使用firstfit策略和nextfit策略);2、分别对不同的策略进行性能评估三.实验设计1.内存unsignedcharmm[65536];2

2、.用户接口用户接口函数:intmm_init()//初始化intmm_request(intn)//申请空间voidmm_release(intp)//释放空间3.计算请求尺寸srand((unsignedchar)time(NULL));tmp=(rand()%1024)+1;//最大申请10244.选择待释放的块tmp=(rand()%j);while(p[tmp]==-1){tmp=rand()%j;}requestsize=requestsize-BinToInt(&mm[p[tmp]+4]);mm_release(p[tmp]);cou

3、t<<"释放指针"<#include#include#include#include"first.h"usingnamespacestd;intmain(){inti;intj=0;//分配指针数intp[1000];//用于存放分配出的指针inttmp;intrequestsize=0;//统计申请空

4、间intk=0;//统计搜索步数srand((unsignedchar)time(NULL));step=0;mm_init();for(i=0;i<30;i++)//模拟30步{cout<<"第"<

5、out<

6、ouble)j<<"字节"<

7、r(i=0;i<4;i++){tmp[3-i]=s[i];}memcpy(&t,tmp,4);returnt;}voidIntToBin(ints,unsignedchar*t)//把int类型变成char{inti;chartmp[4];memcpy(tmp,&s,4);for(i=0;i<4;i++){t[i]=tmp[3-i];}}intmm_init(){memset(mm,0,65536);IntToBin(-1,mm);//前向指针置-1放在数组的第一个位置IntToBin(65536,&mm[4]);//整个块大小,放在第四个位置I

8、ntToBin(-1,&mm[65536-4]);//后向指针置-1放在数组的倒数第四个位置return0;}intmm_request

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。