存储器管理分析总结精要.docx

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

存储器管理分析总结一、理解主存管理需要实现的功能1、地址映射1)定义:为了保证CPU执行指令时可正确访问存储单元,需将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址,此过程即为地址映射。2)地址映射分类:a. 静态重定位当用户程序被装入内存时,一次性实现逻辑地址到物理地址的转换,以后不再转换(一般在装入内存时由软件完成)。b. 动态重定位在程序运行过程中要访问数据时再进行地址变换(即在逐条指令执行时完成地址映射。一般为了提高效率,此工作由硬件地址映射机制来完成。由硬件支持,软件硬件结合完成。硬件上一般需要一对寄存器的支持)。3)个人理解:a.地址映射的目的:增加逻辑地址的概念,可以理解为系统为每个任务提供了一个虚拟内存,任务执行时同时存在两个内存,虚拟内存和物理内存,操作系统对虚拟内存进行操作,对内存管理起来更方便;而物理内存主要就是对应硬件的真实地址;b.地址映射的步骤:对于静态地址映射,在程序烧写到处理器时,已经完成了地址的映射,并且映射关系已固定,一般内核中大部分代码就是实现的静态地址映射;对于动态地址映射,首先操作系统先申请一块虚拟内存,之后调用映射函数之后,才实现了物理内存的分配,这个主要用于用户进程中。2、主存储空间的分配和释放1)定义:合理地分配和使用存储空间也是内存管理的重要内容,通过实时合理的分配和释放内存,能达到内存使用率的最大化。2)个人理解:这个所谓的主存储的分配和释放,是指操作系统是否对虚拟内存进行管理分配,不是完全有用户程序决定。3、主存储空间的保护1)定义:对于主存储器而言,其同时存在多个用户程序和系统软件。为使系统正常工作,必须防止由于一个用户程序出错而破坏同时存在主存内的系统软件或其他用户的程序,还须防止一个用户程序不合法地访问并非分配给它的主存区域。因此,存储保护是多道程序和多处理机系统必不可少的部分,也是存储管理中非常重要的一部分。2)存储保护方法分类:a.对于连续存储区域,采用防止地址越界方法:采用界限寄存器,限定存储区域的上下界限。b.对于非连续存储区域,采用防止操作越权方法:(这其中又可以细化为二种方法)--键式保护:每个页面区域都包含一个存储键,表明了存储区域控制和保护的信息。--环状保护:把系统程序和用户程序按重要性分层,称为环,对每个环都规定访问它的级别,违反规定的存取操作是非法的,以此实现对正在执行的程序的保护。3)个人理解:a.后面的所有存储保护机制都是采用防止地址越界和防止操作越权两种方法来实现的。4、主存储空间的共享1)定义:允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址。2)优点:使用共享内存进行进程间的通信实现方便,数据的共享还使进程间的数据不用传送,而是直接访问内存,也加快了程序的效率。3)缺点:多个进程使用共享内存块时,必须达成一种协议,不然会造成混乱,这个必须通过其他的比如信号量等方式来实现。5、主存储空间的扩充1)定义:有限的内存容量远远不能满足大程序以及共存于内存的多个程序的存储要求,这就得借助于一些存储技术来实现内存的扩充。2)实现方法:一般采用虚拟存储技术(涉及到交换技术),其使每个用户作业都对应有一个虚存,用户编程时不必考虑实存的大小,也就是说,一个虚拟存储器就是一个作业的逻辑地址空间。虚存的容量与内存的容量没有直接联系,而是由处理机的地址线的位数来决定的。其具体实现采用了交换技术,实现缓存和内存之间的交换。二、主存管理方式的发展及其对比1、连续存储空间管理方式具体有多种形式大类别连续存储空间管理方式小类别无管理单一分区固定分区(亦为静态分区)动态分区定义无操作系统用于对于内存的管理的方式有操作系统,内存分为系统区和用户区。系统区用于存放操作系统程序,用户区用于存放用户程序系统开机初启时,系统操作员根据当天作业情况把主存的用户区划分成大小可以不等但位置固定的分区系统根据进程需要分配内存,不划分固定分区特点1)由于没有操作系统内存管理的支持,用户通过自己编程负责所有的内存管理工作,直接对物理地址进行操作;2)仅有物理内存,没有虚拟内存;3)不存在内存的分配和释放问题,用户面对的是一个内存全为空的内存,用户可以以任意方式使用内存,具有最大的灵活性;4)仅适用于单道程序设计。1)用户区最多存放一道用户程序。2)可以使用静态地址映射。若有硬件(重定位寄存器)的支持,也可以使用动态地址映射;3)基本不存在存储扩充的问题。在上面的右图中,若用户程序较大,覆盖了操作系统程序中可被覆盖的部分,则当此用户程序结束后,操作系统需重新加载被覆盖的部分。这种方式在一定程

文档评论(0)

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

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

1亿VIP精品文档

相关文档