操作系统存储管理实验报告.docx

上传人:牧羊曲112 文档编号:3549640 上传时间:2023-03-13 格式:DOCX 页数:6 大小:38.08KB
返回 下载 相关 举报
操作系统存储管理实验报告.docx_第1页
第1页 / 共6页
操作系统存储管理实验报告.docx_第2页
第2页 / 共6页
操作系统存储管理实验报告.docx_第3页
第3页 / 共6页
操作系统存储管理实验报告.docx_第4页
第4页 / 共6页
操作系统存储管理实验报告.docx_第5页
第5页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《操作系统存储管理实验报告.docx》由会员分享,可在线阅读,更多相关《操作系统存储管理实验报告.docx(6页珍藏版)》请在三一办公上搜索。

1、操作系统存储管理实验报告1 设计题目: 存储管理 2 设计目的: 巩固和加深对操作系统这门课程的理解,提高综合运用本课程所学知识的能力。培养我们使用参考书,查阅手册及文献资料的能力。培养独立思考,深入研究,分析问题、解决问题的能力。过实际编译系统的分析设计、编程调试,掌握应用软件的分析方法和工程设计方法。运用首次适应算法实现。 3 源程序代码: #includestdio.h #define N 200 static int shengyu; /剩余空间 struct nei int id; /内存首地址 int zyid; /作业名 int free; /是否空闲 int size; / 大

2、小 aN; struct zuoye int name; /作业名 int changdu; /作业长度 int shoudizhi;/存入后首地址 int free; / 数组是否被占用 zyN; void cun int i,j,x,n,m; for(i=0;iN;i+) if(zyi.free=0) break; if(i=N) printf(找不到所需的大小!n); return; printf(n输入你的作业名:); scanf(%d,&zyi.name); if(zyi.name=0) printf(错误:id=0!n退出!n); return; for(m=0;mN;m+) if

3、(zyi.name=zym.name) if(i=m); else printf(错误:同名!n退出!n); return; printf(n输入你的作业长度:); scanf(%d,&zyi.changdu); printf(nn); for(j=0;j=zyi.changdu) break; if(j=N) printf(找不到所需的大小!n); return; aj.zyid=zyi.name; zyi.free=1; zyi.shoudizhi=aj.id; aj.free=1; aj.size=zyi.changdu; shengyu-=zyi.changdu; x=aj.id+zy

4、i.changdu; for(n=x;nN;n+) if(an.free=1) break; ax.size=n-x; void qu int name,i,j,x,y,z; printf(输入你要取的作业名:); scanf(%d,&name); printf(n); if(name=0) return; for(i=0;iN;i+) if(zyi.name=name) break; if(i=N) printf(无此作业! 退出! nn); return; for(j=0;j=0;z-) if(az.free=1) break; if(zz;y-) if(ay.size0&ay.free=

5、0) break; if(y=z) return; ay.size+=aj.size; aj.size=0; void xianshi int i=0,m; printf(1:查看剩余空间!n); printf(2:查看所有作业!n); printf(t请选择:); scanf(%d,&m); switch(m) case 1: if(shengyu=0) printf(剩余空间不足n); return; for(i=0;i0) printf(存储长度=%d,剩余空间=%dn,ai.id,ai.size); break; case 2: if(shengyu=N) printf(n); ret

6、urn; for(i=0;iN;i+) if(ai.free=1) printf(作业名=%d,长度=%d,首地址=%dn,ai.zyid,ai.size,ai.id); void main shengyu=N; int m; int i; for(i=0;iN;i+) ai.id=i; ai.free=0; ai.size=0; zyi.free=0; ai.zyid=0; zyi.name=0; a0.size=N; while(true) char c1,c; printf(nn); printf(ntt1、存入 ); printf(ttt2、取出 ); printf(ntt3、查看 )

7、; printf(ttt4、退出 ); while(true) printf(n请选择菜单项:); scanf(%d,&m); if(m=1|m=2|m=3|m=4) break; printf(n); if(m=4)break; switch(m) case 1: while(true) char c; cun; printf(是否继续存入(Y/N): ); scanf(%c,&c); scanf(%c,&c); printf(n); if(c=y|c=Y); else if(c=n|c=N) break; else printf(t输入错误!nn); break; break; case

8、2: while(true) char c; qu; printf(是否继续取出(Y/N): ); scanf(%c,&c); scanf(%c,&c); printf(n); if(c=y|c=Y); else if(c=n|c=N) break; else printf(t输入错误!nn); break; printf(n); break; case 3: xianshi; printf(n); break; scanf(%c,&c1); loop: printf(是否继续其他操作(Y/N): ); scanf(%c,&c1); scanf(%c,&c); printf(n); if(c1=y|c1=Y); else if(c1=n|c1=N) break; else printf(t输入错误!nn); goto loop; 4. 实现的操作界面: 进入主界面 存入界面 查看剩余空间和作业名 取出作业后再次查看 5.测试结果总结: 经过测试结果完全正常。经过编写和学习让我对操作系统方面的知识更深一步的得到了理解和巩固。让我在今后的学习中可以更好的去理解和体会。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号