下载此文档

段式存储管理分配及回收.doc


文档分类:论文 | 页数:约10页 举报非法文档有奖
1/10
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/10 下载此文档
文档列表 文档介绍
该【段式存储管理分配及回收 】是由【泰山小桥流水】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【段式存储管理分配及回收 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。学号:课程设计题目操作系统原理课程设计学院计算机科学和技术专业班级姓名指导教师20XX年0X月0X日课程设计任务书学生姓名:指导教师:雅蠛蝶工作单位:计算机科学和技术学院题目:模拟设计段式储存管理的分派和回收初始条件::阅读操作系统的内存管理章节内容,理解有关虚构储存器、段式存储管理等观点,并掌握段式管理内存的分派和回收过程。:掌握一种计算机高级语言的使用。要求达成的主要任务:(包含课程设计工作量及其技术要求,以及说明书撰写等详细要求)。能够办理以下的情况⑴能够输入给定的内存大小,进度的个数,每个进度的段数及段大小;⑵当某进度提出申请空间的大小后,显示可否知足申请,以及为该进度分派资源后有关内存空间使用的状况;⑶显示回收后内存空间的使用状况(注意回收后的归并)。:⑴需求剖析;⑵功能设计(数据构造及模块说明);⑶开发平台及源程序的主要部分;⑷测试用例,运转结果和运转状况剖析;⑸自我评论和总结:i)你以为你达成的设计哪些地方做得比较好或比较优秀;ii)什么地方做得不太好,此后怎样更正;iii)从本设计获得的收获(在编写,调试,履行过程中的经验和教训);iv)达成此题能否有其余方法(假如有,简要说明该方法);时间安排:设计安排一周:周1、周2:达成程序剖析及设计。2、周3:达成程序调试及测试。4、周5:查收、撰写课程设计报告。(注意事项:禁止剽窃,一旦发现,一律按0分记)指导教师署名:年月日系主任(或责任教师)署名:年月日模拟设计段式储存管理的分派和回收需求剖析段式储存管理是鉴于为用户供给一个方便灵巧的程序设计环境而提出来的。段式管理的基本思想是:把程序按内容或过程(函数)关系分红段,每段有自己的名字。一个用户作业或进度所包含的段对应于一个二维线性虚构空间,也就是一个二维虚构储存器。段式管理程序以段为单位分派内存,而后经过地点映照机构把段式虚构地点变换成实质的内存物理地点。和页式管理时同样,段式管理也采纳只把那些常常接见的段驻留内存,而把那些在未来一段时间内不被接见的段放入外存,待需要时自动调入的方法现实二维虚构储存器。模拟设计段式储存管理的分派和回收要求能够输入给定的内存大小,进度的个数,每个进度的段数及段大小;当某进度提出申请空间的大小后,显示可否满足申请,以及为该进度分派资源后有关内存空间使用的状况;显示回收后内存空间的使用状况。,安闲区链表和段链表structprocess{//进度构造intcode;//进度编码intnum;//段的个数structparagraph*head;};structparagraph{//段构造intsize;//段的大小intstart;//段的开端地点intstop;//段的停止地点structparagraph*next;//下一个段定义的地点};structmemory{intsize;//内存的大小intstart;//内存的开端地点intstop;//内存的停止地点structmemory*next;};processp[10];intcount=0;//进度的个数memory*head;、创立进度后的信息显示以及进度的调动及调度后的有关信息显示。因此程序中最要包含了三个函数,创立进度函数voidCreate_process();,撤除进度函数voidDestroy_process();,和显示进度函voidDisp_process();,显示安闲区函数voidDisp_memory();。最后在主函main()中调用这些函数来实现整个程序的功能。while(go==1){cout<<"*MENU*"<<endl<<";;"<<endl<<";;"<<endl<<""<<endl<<"请做出选择:";cin>>choice;switch(choice){case1:Create_process();break;case2:Destroy_process();break;case3:Disp_process();break;case4:Disp_memory();break;case5:go=0;break;default:cout<<"您输入的数字有误!"<<endl;break;}cout<<endl;}开发平台MicrosoftWindowsXP操作系统;MicrosoftVisualC++。,第一要求输入内存的大小。输入内存的大小为30,而后选择1创立进度,创立2个进度,第一个进度的段数设为2段,段大小分别为3、5,第二个进度的段数为3段,段大小分别为4、6、7。输入3显示进度输入4显示内存而后撤除第一个进度再输入3显示进度再输入4显示内存再创立一个进度,有两段,大小分别3和6最后达成整个操作,选择5退出程序。,输入的内存大小是进度调动中使用的最大储存空间,当调动一个进度的大小小于还没有使用的内存大小时则能够把该进度调入内存,不然不可以调入。输入了内存的大小30后,第一要创立进度,只有创立了进度后才能履行显示进度的信息。创立的第一个进度共有段,当显示进度信息时可知该进度总的储存空间大小8。创立第二个共3段,该进度总的储存空间大小为17,只剩下5块内存了。撤除第一个进度以后,多出了一块内存为8的安闲区。当再次创立一个有两段的进度以后,每段大小分别为3,6,第一个段正确,第二个段错误,由于第一个安闲区只剩下5了,最后一个安闲区也只剩下5,故第二段不可以调用。,只用了四个函数来分别实现整个程序中的各个功能,构造体的使用使得整个程序显得更为雅致有序,这个程序能够输入给定的内存大小,进度的个数,每个进度的段数及段大小,当某进度提出申请空间的大小后,能够显示可否知足申请,以及为该进度分派资源后有关内存空间使用的状况。能够说这个程序能够达成要求的功能。,从前学c++的时候,构造体对我来说是很头痛的,关于它的认识也不过基本课本上的知识,并且仍是朦模糊胧的状态,这个程序是对构造体使用的最好例子,因此我也掌握了在什么时候使用构造体是最好的。其次是对操作系统中段式储存管理的知识有了更深入的学****也对操作系统中很重要的虚构储存器有了更全面的认识。最后是对课程设计的理解。课程设计是联系实质的一个课题,它让我们把课本上的知识和实质联系起来,关于我们缺少实战经验的大学生来说是必不行少的。由于课程设计是联系实质的课题,因此相对我们学****到的知识来说是更难,考虑的要素更多更复杂,凡是到学期末,我对课程设计是比较烦忧的,但经过几次的锻炼以后,我开始慢慢的找到了对课程设计的感觉,从前只感觉课程设计很难,但此刻我获得的此外一个理解是课程设计对我们很有帮助,能够很好的提升我们对实质问题的剖析能力,能够很好的激发我们的思想。其次是对我们c++的学****有很大的提升,经过几次的课程设计,我显然的感觉到自己的编程能力有了很大的改观,我开始对c++有了更激烈的兴趣。由于c++的非常强盛,因此达成这个程序应当有其余的方法,不过自己的c++知识有限,临时还不认识用其余方法的实现过程。参照文件[1]张尧学,史美林,(第3版).,++:计算机姓名:学号:序号评分项目满分实得分1学****态度仔细、恪守纪律102设计剖析合理性103设计方案正确性、可行性、创立性204设计结果正确性405设计报告的规范性106设计查收10总得分/等级考语:注:最后成绩以五级分制记。优(90-100分)、良(80-89分)、中(70-79分)、及格(60-69分)、60分以下为不及格指导教师署名:20年月日

段式存储管理分配及回收 来自淘豆网www.taodocs.com转载请标明出处.