OS04 存储管理课件.ppt

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

第4章 存储器管理;4.1存储器管理的任务;存储器层次结构;4.1 存储器管理的功能以及涉及的几个概念 4.2 单用户单道程序的存储器分配 4.3 多用户多道程序的存储器分配——分区分配 4.4 覆盖与交换技术 4.5 页式存储器管理 4.6 段式存储器管理 4.7 虚拟存储器;存储器分配:主要解决多道程序共享主存和如何进行主存分配的问题。 地址转换或重定位:研究各种地址变换方法及相应的地址变换机构。 存储器保护:保证进入主存的各道作业都在自己的存储空间内运行,互不干扰。 存储器扩充:采用多级存储技术实现虚拟存储器及所用的各种管理算法。 存储器共享:并发执行的进程如何共享同一主存中的程序和数据。;4.1.2 存储器管理中涉及的几个概念;程序名字空间:源程序中的各种符号名的集合所限定的空间。如源程序中的数据和子程序通常是用符号名进行访问的。 程序地址空间:经编译连接后的目标代码所限定的地址域。用地址码替换符号地址。 编译时,程序地址空间中各个地址是以“0”作为参考地址的,其他所有地址都是以0为起始地址顺序编码的。 相对地址,逻辑地址,虚地址。;物理存储器中全部物理存储单元的集合所限定的空间。 存储空间是由字或字节组成的一个大的阵列,每一个字或字节都有它自己的编号地址。 绝对地址,物理地址,实地址。 一个程序只有从地址空间装入到存储空间后才能运行。;3. 地址重定位(Relocation) 把程序地址空间的逻辑地址转换为存储空间的物理地址的工作叫地址重定位。地址映射,或地址变换。 地址重定位的原因: 地址空间的逻辑地址往往与分配到的存储空间的物理地址不一致, 处理机执行用户程序时,所要访问的指令和数据地址必须是实际的物理地址。;装入程序:把用户程序由地址空间装入到存储空间。 静态重定位:地址转换工作是在程序执行前由装入程序集中一次完成的。 特点:1)无硬件变换机构;2)为每个程序分配一个连续的存储区;3)在程序执行期间不能移动,主存利用率低;4)不能实现程序和数据的共享。;静态地址重定位过程;动态重定位: 装入程序把程序和数据原样装入到已分配的存储区中,然后把这个存储区的起始地址送入重定位寄存器。程序执行时,再将相对地址转换成绝对地址。 靠硬件地址转换机构来实现 优点:①主存利用率高。通过移动用户程序实现。 ②程序不必占有连续的存储空间。 ③便于多用户共享同一程序。;把程序装入起始地址为1000的内存区;4. 存储器保护(Memory Protection) 地址越界保护:进程运行时产生的所有访问存储器的地址都要被检查,确保只访问为该进程分配的存储空间。 访问保护:对所访问的存储空间的操作方式进行检查,以确保数据的完整性,防止由于误操作而破坏被存储的内容。;5. 存储器共享(Memory Sharing) 为了提高存储器的利用率,允许多个进程共享同一个主存区的数据或程序。 被共享的程序叫可重入程序,其代码无论执行多少遍,都保持不变。具有这种性质的程序又叫纯代码。; 通常存储器划分为两部分:一部分是操作系统占用区,另一部分是用户进程占用区(或用户区)。 存储器管理是指对用户区的管理。;是一种最简单的存储管理方式。 用于单道批处理及现在的单用户单任务OS。 单一连续区分配,主存只有一个用户作业。 作业一旦进入内存,就要等到它执行结束后才能释放内存。 存储保护容易实现,易判断地址是否越界。;用户 进程区;把主存划分成若干个连续的区域,每个进程占用一个。多道程序设计可以提高CPU的利用率 固定式分区;可变式分区 系统中必须配置相应的数据结构,用来记录内存的使用情况,为分配提供信息。;适合多道程序的最简单的存储器管理 把主存预先划分成几个大小不等的分区 进程到达时,选择一个适合进程要求的最小空闲区分给进程;无空闲分区,等待。 曾经在IBM OS/360大型机中运行了许多年;(a) 多作业队列 ;[例] 分区起始地址 分区大小 占用标志 50KB 30KB J1 80KB 100KB 0 180KB 200KB J2 380KB 300KB 0 ;内存管理过程: 用户程序要装入内存,内存分配程序检索分区说明表,从表中找出一个空闲分区分给该程序,并置占用标志。 若找不到空闲分区,就不分配内存。 当进程执行完毕释放内存时,内存管理程序将对应分区的状态置为未分配。;缺点:主存利用不充分。因为作业的大小不可能刚好等于某个分区的大小,绝大多数已分配的分区中,都有一部分存储空间被浪费掉了。 优点:简单。;[例] 进程A在主存;进程B和C从盘上装入;进程A运行完;

文档评论(0)

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

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

1亿VIP精品文档

相关文档