云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 分页式管理实验报告

分页式管理实验报告

  • 62 次阅读
  • 3 次下载
  • 2025/5/4 4:17:28

ad=Free_table[k].address+Free_table[k].length; }

//修改已分配区表 i=0;

while(Used_Table[i].flag!=0&&i

if(i>=n) //无表目填写已分分区 {

printf(\无表目填写已分分区,错误\\n\//修正空闲区表

if(Free_table[k].flag==0) //前面找到的是整个空闲分区 Free_table[k].flag=1; else

{//前面找到的是某个空闲分区的一部分

Free_table[k].length=Free_table[k].length+X_K; return; } } else

{//修改已分配表

Used_Table[i].address=ad;

Used_Table[i].length=X_K; Used_Table[i].flag=PRS_NAME; } return;

}//内存分配函数结束

void reclaim(char PRS_NAME) //回收进程名为PRS_NAME的进程所占内存空间 {

int i,k,j,s,t; float S,L;

//寻找已分配表中对应登记项 s=0;

while((Used_Table[s].flag!=PRS_NAME||Used_Table[s].flag==0)&&s

if(s>=n)//在已分配表中找不到名字为PRS_NAME的进程 {

cout<<\找不到该进程\return; }

//修改已分配表

Used_Table[s].flag=0; //取得归还分区的起始地址S和长度L S=Used_Table[s].address; L=Used_Table[s].length; j=-1;k=-1;i=0;

//寻找回收分区的空闲上下邻,上邻表目k,下邻表目j while(i

if(Free_table[i].flag==1) {

if(Free_table[i].address+Free_table[i].length==S)k=i;//找到上邻

if(Free_table[i].address==S+L)j=i;//找到下邻 } i++; } if(k!=-1) if(j!=-1)

// 上邻空闲区,下邻空闲区,三项合并 {

Free_table[k].length=Free_table[j].length+Free_table[k].length+L;

Free_table[j].flag=1;

} else

//上邻空闲区,下邻非空闲区,与上邻合并 Free_table[k].length=Free_table[k].length+L; else if(j!=-1)

//上邻非空闲区,下邻为空闲区,与下邻合并 {

Free_table[j].address=S;

Free_table[j].length=Free_table[j].length+L; }

else //上下邻均为非空闲区,回收区域直接填入 {

//在空闲区表中寻找空栏目 t=0;

while(Free_table[t].flag==1&&t

if(t>=m)//空闲区表满,回收空间失败,将已分配表复原 {

cout<<\内存空闲表没有空间,回收空间失败\Used_Table[s].flag=j; return;

搜索更多关于: 分页式管理实验报告 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

ad=Free_table[k].address+Free_table[k].length; } //修改已分配区表 i=0; while(Used_Table[i].flag!=0&&i=n) //无表目填写已分分区 { printf(\无表目填写已分分区,错误\\n\//修正空闲区表 if(Free_table[k].flag==0) //前面找到的是整个空闲分区 Free_table[k].flag=1; else {//前面找到的是某个空闲分区的一部分 Free_table[k].length=Free_table[k].length+X_K; return; } } else {//修

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com