1 / 18
文档名称:

操作系统内存分配算法模拟实现.doc

格式:doc   大小:277KB   页数:18页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

操作系统内存分配算法模拟实现.doc

上传人:小辰GG 2022/5/29 文件大小:277 KB

下载得到文件列表

操作系统内存分配算法模拟实现.doc

相关文档

文档介绍

文档介绍:实验报告册
院系名称:计算机科学学院
课程名称:
实验学期
操作系统
2009年至2010年
第二学期
专业班级:
计算机科学与技术2008级1班
姓名:
HORACE学号:
("作业"+new_job_name+"内存分配成功!");
p=;
〃q=;
while(p!=null){
if(==0){
(p);
}
p=;
}
}
}
privatevoidmemRecovery(FreeBlocktarget){〃内存回收
FreeBlockp=;
while(p!=null){
〃回收区与插入点的前一个空闲分区相邻接
if(==target&&==false){
+=;
=;
〃回收区同时与插入点的前后两个空闲分区相邻接if(!){
+=;
=;
}
break;
}
if(p==target){
〃回收区与插入点的后一空闲分区相邻接
if(!){
+=;=;
}
break;〃若两不邻接,则直接跳出
}
p=;
}
}
privatevoidrelocation®空闲资源重定向,回收空闲空间
FreeBlockfront_r=;//
FreeBlockr=;〃当前重定向空闲块
FreeBlockbehind_r=;
while(r!=null){〃将r定位到第一块空闲分区块
if(==false){
break;
r=;
behind_r=;
front」=;〃记录第一块空闲分区的上一块
}
while(behind_r!=null){
if(){
=behind」;
=;
=r;
front」=behind」;
}
else{
+=;
=;
}
behind_r=;
}
(重定向成功,继续为作业分配内存...");
}
publicvoidaddJob(){//忝加作业
intnewSize;〃新作业所需内存大小
StringnJobName=newString("");
Scannerscanner=newScanner();
(”请输入新任务的名称:”);
nJobName=();
(”请输入新任务所需内存大小:");
newSize=();memAllocation(newSize,nJobName);
}
publicvoiddelJob(){〃销毁作业
Stringcur_job_name=newString("");
booleanflag=false;〃指示作业是否删除成功
FreeBlockq=;
Scannerscanner=newScanner();
(”请输入需要回收的作业名称:”);cur_job_name=();
while(q!=null){
if(==cur_job_name){
=false;
="";
memRecovery(q);〃回收内存
flag=true;
break;
}
else{
q=;〃找到要删除的作业的下一个结点
}
}
if(flag){
("删除作业成功!");
}
else{
(”删除作业未成功!”);
}
}