2012年操作系统课程设计作业.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2012年操作系统课程设计作业

《操作系统》课程设计 论文题目: 连续动态分区内存管理模拟实现 所在班级: XXXXXX班 学生学号: 0310XXXXX 学生姓名: X X X 任课教师: ****老师 完成日期: 2012年**月**日 目录 《操作系统》课程设计 1 目录 2 课程设计目的和内容: 3 系统分析设计: 3 第一章 :对内存管理的相关理论的了解 3 内存管理概念: 3 虚拟内存的引出: 3 内存管理的必要性: 4 实现动态分区需要的数据结构: 4 第二章 :实现连续动态分区内存管理方式 4 1、『单一连续分配』 4 2、『固定分区分配』 5 3、『动态分区分配』 5 4、『动态重定位分区分配』 5 可变分区存储管理分析: 5 第三章 :分析并实现四种内存分配算法 6 如何分配空闲内存: 6 第四章 :回收算法的实现 14 可变分区的回收: 14 可变分区方式的内存回收流程图 15 实现分区存储管理的内存回收算法 16 当碎片产生时,进行碎片的拼接 18 学习心得和小结: 19 参考文献: 20 连续动态分区内存管理模拟实现 课程设计目的和内容: 理解内存管理的相关理论,掌握连续动态分区内存管理的理论;通过对实际问题的编程实现,获得实际应用和编程能力。 编写程序实现连续动态分区内存管理方式,该程序管理一块虚拟内存,实现内存分配和回收功能。 分析并实现四种内存分配算法,即首次适应算法,循环首次适应算法,最佳适应算法,最坏适应算法。内存分配算法和回收算法的实现。 系统分析设计: :对内存管理的相关理论的了解 内存管理概念: 内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源。内存不是预先划分好的,而是在系统运行的过程中建立分区.当作业装入主存时,根据作业所需要的主存容量查看是否有足够的主存空间,若有则按需要分割一个分区给该作业;否则令该作业等待.分区长度不固定,分区个数不固定。这种存储管理的方法克服了固定分区严重浪费主存的问题,提高了主存资源的利用率。 虚拟内存的引出: 虚拟内存是内存管理技术的一个极其实用的创新。它是一段程序(由操作系统调度),持续监控着所有物理内存中的代码段、数据段,并保证他们在运行中的效率以及可靠性,对于每个用户层(user-level)的进程分配一段虚拟内存空间。当进程建立时,不需要在物理内存件之间搬移数据,数据储存于磁盘内的虚拟内存空间,也不需要为该进程去配置主内存空间,只有当该进程被被调用的时候才会被加载到主内存。 内存管理的必要性: 内存管理对于编写出高效率的Windows程序是非常重要的,这是因为Windows是多任务系统,它的内存管理和单任务的DOS相比有很大的差异。DOS是单任务操作系统,应用程序分配到内存后,如果它不主动释放,系统是不会对它作任何改变的;但Windows却不然,它在同一时刻可能有多个应用程序共享内存,有时为了使某个任务更好地执行,Windows系统可能会对其它任务分配的内存进行移动,甚至删除。因此,我们在Windows应用程序中使用内存时,要遵循Windows内存管理的一些约定,以尽量提高Windows内存的利用率。 实现动态分区需要的数据结构: 在动态分区存储管理中,要有相应的数据结构来登记空闲区信息,它包括空闲区的大小和位置。 不同系统根据设计要求采用不同的结构。常用的有表结构和链结构。 系统还要设置了等待分区队列,当系统中无空闲区或无满足要求的空闲区时,则把申请者送入等待队列中,等待别的进程释放内存之后再唤醒队列中的进程。 :实现连续动态分区内存管理方式 连续分配方式,是指为一个用户程序分配一个连续的内存空间,该连续内存空间指的的是物理内存。下面介绍连续分配的四种方式。 1、『单一连续分配』 我们把内存(此时指的是内存条)分为系统内存区和用户区两部分,系统区供OS使用,用户区供用户使用,单一连续分配,就是把用户区当成了一个整体用,所以,该内存管理方式只适用于单用户单任务的操作系统。 2、『固定分区分配』 固定分区的思想:把用户区提前分成固定大小的几个整体,每个整体都可以用来装入一个作业。我们在划分用户区时,可以采用分区大小相等和分区大小不相等的方式划分,为了方便操作系统把相应的内存分给某个程序,因此,我们通常将分区按大小进行排队,并为之建立一张分区使用表,表中内容为:每个分区的起始位置、大小及状态(是否分配)。此分区方式可以实现多道程序的同时运行,但是,由于每个分区的大小是固定,必然会造成

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档