基本分页存储管理系统地模拟实现

基本分页存储管理系统地模拟实现

ID:31370488

大小:310.50 KB

页数:13页

时间:2019-01-09

基本分页存储管理系统地模拟实现_第1页
基本分页存储管理系统地模拟实现_第2页
基本分页存储管理系统地模拟实现_第3页
基本分页存储管理系统地模拟实现_第4页
基本分页存储管理系统地模拟实现_第5页
资源描述:

《基本分页存储管理系统地模拟实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实用标准文案基本分页存储管理的模拟实现学院:专业:学生姓名:学号:指导教师:2014年3月18日精彩文档实用标准文案目录一、设计内容2二、相关操作系统的知识介绍………………………………2三、课程设计的目的及要求2四、程序功能说明……………………………………………3五、算法整体思想3六、主要功能模块进程图3七、实验结果4八、实验总结7九、程序代码………………………………………………7精彩文档实用标准文案一、设计内容根据设计要求实现对基本分页存储管理的模拟二、相关操作系统的知识介绍连续分配方式会形成许多“碎片”,虽然可通过“紧凑”方法将许多碎片拼接成可用的

2、大块空间,但须为之付出很大的开销。如果允许将一个进程直接分散的装入到许多不相邻接的分区中,则无需在进行“紧凑”。基于这一思想而产生了离散分配方式。如果离散分配的基本单位是页,则称为分页存储管理方式;如果离散分配的基本单位是段,则称为分段存储管理方式。在分页存储管理方式中,如果不具备页面对换功能,则称为基本的分页存储管理方式,或称为纯分页存储管理方式,它不具有支持实现虚拟存储的功能,它要求把每个作业全部装入内存后方能运行。二、课程设计的目的及要求1、课程设计的目的操作系统课程设计是计算机专业重要的教学环节,它为我们提供了一个既动手又动脑,将课本上的理论知

3、识和实际有机的结合起来,独立分析和解决实际问题的机会。l进一步巩固和复习操作系统的基础知识。l培养我们结构化程序、模块化程序设计的方法和能力。l提高我们调试程序的技巧和软件设计的能力。l提高我们分析问题、解决问题以及综合利用C语言进行程序设计的能力。2、设计要求1.选择恰当的数据结构表示页表精彩文档实用标准文案1.进程名,进程所需页数,进程进行的操作(装入/退出)等操作可有键盘输入,也可从文件读出。2.每进行一次进程的装入或者退出操作,就显示出操作执行后内存中各页的分配情况。四、程序功能说明函数各模块部分功能voidCreatA()//创建内存新函数v

4、oidNewNode(LinkList&L)//建立新进程voidFreeNode(LinkList&L)//回收进程,释放内存voidPrintf(LinkListL)//显示所有进程所占物理块信息voidlook(LinkListL)//查看进程信息voidshowit()//显示内存块使用信息函数的整体功能这个程序是为了实现离散分配方式,以消减内存的外零头,提高内存的利用率,由系统把逻辑地址划分为页号和页内地址两部分。通过这个程序实现了将进程分页处理,划分物理块。五、算法整体思想先定义A[100]来记录内存物理块;max=99来记录内存物理块数;

5、count=100来记录未使用的物理块数。首先通过CreatA()函数初始化内存而后通过NewNode(LinkList&L)建立新的进程,输入进程号,进程名,进程大小,计算出所需要的进程页数以及分配物理块。通过FreeNode(LinkList&L)来删除所选择的进程信息,释放内存。通过Printf(LinkListL)显示以上两个函数所产生的进程信息。而后通过look(LinkListL)查看进程信息。通过showit()显示内存物理块的分布情况。当输入进程号new_node->f,然后通过j=0至j>3时终止,如若p->f=newnode->f当

6、是时进程存在,重新输入,当不是时p=p->next;如若非此情况则输入进程名称和进程大小,然后通过进程页数n=size/1024,若页内地址k!=0,n=n+1显示所需页数,比较页数与物理块的大小,如果页数大于物理块数则内存物理块不足,新建进程失败;如果小于则分配内存物理块。六、主要功能模块进程图精彩文档实用标准文案开始输入进程号new_node->f输入进程号次数j=0(j>3,终止)Y输入进程名称、大小p->f=newnode->f进程页数n=size/1024,若页内地址k!=0,n=n+1显示所需页数p=p->nextN页数n>物理块数Y内存物

7、理块分配不足,新建进程失败N分配内存物理块七、实验结果添加进程精彩文档实用标准文案删除进程内存使用情况精彩文档实用标准文案查看进程精彩文档实用标准文案八、实验总结通过本次操作系统课设,本次课设为我们提供了一个既动手又动脑,将课本上的理论知识和实际有机的结合起来,独立分析和解决实际问题的机会。进一步巩固和复习操作系统的基础知识。培养我们结构化程序、模块化程序设计的方法和能力。提高我们调试程序的技巧和软件设计的能力。提高我们分析问题、解决问题以及综合利用C语言进行程序设计的能力。本次课设掌握了如何创建一个进程,添加进程和删除进程。通过本次课设,我也发现我的

8、好多不足之处,首先在源程序的录入上就遇到了很大的麻烦,由于英文录入的速度比较慢,在源程序代码的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。