欢迎来到天天文库
浏览记录
ID:60836478
大小:110.50 KB
页数:8页
时间:2020-12-21
《操作系统实验二-内存管理.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、洛阳理工学院实验报告系别计算机系班级学号姓名课程名称计算机操作系统实验日期实验名称实验二分区内存管理成绩实验目的:通过这次实验,加深对内存管理的认识,进一步掌握内存的分配、回收算法的思想。实验条件:微机一台,操作系统:windows7,编程环境:MicrosoftVisualStudio2010。实验原理:设计程序模拟内存的动态分区内存管理方法。内存分区使用分区(说明)表进行管理,采用最先适应算法从分区表中寻找空闲区进行分配,内存回收时不考虑与相邻空闲区的合并。假定系统的内存共640K,初始状态为操作系统本身占用40K。t1时刻,为作业A、B、C分配80K、60K、100
2、K、的内存空间;t2时刻作业B完成;t3时刻为作业D分配50K的内存空间;t4时刻作业C、A完成;t5时刻作业D完成。要求编程序分别输出t1、t2、t3、t4、t5时刻内存的空闲分区。实验内容:#include#include#includeintj=0;typedefstructPCB_type{charname;intaddress,len,valid;}PCB;typedefstructseqlist{PCBPCBelem[4];inttotal;}PCBseql;typedefstructPartiton{
3、intaddress,len,valid;}Part;typedefstructPartlist{PartPartelem[5];intsum;}Partseql;PCBseql*pcbl;Partseql*partl;voidinitpcb(){pcbl=(PCBseql*)malloc(sizeof(PCBseql));pcbl->total=0;}voidintipart(){partl=(Partseql*)malloc(sizeof(Partseql));partl->Partelem[0].address=40;partl->Partelem[0].len=6
4、00;partl->Partelem[0].valid=1;partl->sum=1;}voidrequest(charname,intlen){inti;for(i=0;isum;i++){if(partl->Partelem[i].len>len){pcbl->PCBelem[pcbl->total].address=partl->Partelem[i].address;partl->Partelem[i].address+=len;pcbl->PCBelem[pcbl->total].len=len;partl->Partelem[i].len-=l
5、en;pcbl->PCBelem[pcbl->total].name=name;pcbl->PCBelem[pcbl->total].valid=1;pcbl->total++;break;}elseif(partl->Partelem[i].len==len){while(isum){partl->Partelem[i]=partl->Partelem[i+1];i++;}partl->sum--;}else{printf("内存分配不足!");printf("");}}}voidrelease(charname){inti;intk;intm;in
6、to;intp;intq;Part*s;s=(Part*)malloc(sizeof(Part));for(i=0;itotal;i++){if(pcbl->PCBelem[i].name==name){partl->sum++;pcbl->PCBelem[i].valid=0;partl->Partelem[partl->sum-1].address=pcbl->PCBelem[i].address;partl->Partelem[partl->sum-1].len=pcbl->PCBelem[i].len;partl->Partelem[partl->s
7、um-1].valid=1;for(k=partl->sum-1;k>0;k--){for(m=0;mPartelem[k].addressPartelem[m].address){o=partl->Partelem[k].address;p=partl->Partelem[k].len;q=partl->Partelem[k].valid;partl->Partelem[k].address=partl->Partelem[m].address;partl->Partele
此文档下载收益归作者所有