os_第4章存储器管理探析.ppt

  1. 1、本文档共284页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
南昌大学信息管理系 NanChang University;4.1 程序的装入和链接; 4.1.1程序的装入:;一、绝对装入方式;绝对装入方式只能将装入模块装入到内存中事先指定的位置。 一般在程序中采用符号地址,在编译或汇编时,将符号地址转换为绝对地址。 绝对装入程序按照装入模块中的地址,装入时不用对程序和数据的地址进行修改。 只能用于单道程序环境。 ;二、可重定位装入方式;;原因: 当程序装入内存时, 操作系统要为该程序分配一个合适的内存空间,由于程序的逻辑地址与分配到内存物理地址不一致, 而CPU执行指令时,是按物理地址进行的,所以要进行地址转换 ; 重定位:在装入时对目标程序中的指令和数据地址的修改过程。;静态重定位的主要缺点:;三、动态运行时装入方式(动态重定位) ;动态重定位;4.1.2 程序的链接 ;; 编译后得到三个目标模块,要将这几个目标模块链接装配成一个装入模块,要解决两个问题。;二、装入时动态链接;三、运行时动态链接 ;4.2 连续分配存储管理;4.2.1 单一连续分配;;用户程序;; 为了防止OS受到用户的破坏,存储保护可以通过硬件设置一个基址寄存器和界限寄存器来实现。 ;主要优点: 管理简单,只需要较少的软件和硬件支持,便于用户了解和使用。;;4.2.2 固定分区分配;一、划分分区的方法;二、内存分配 ;分区使用表; 采用固定分区时,把一个分区分配给某作业后,该作业就在此区域里运行、工作,直至完成。 ;固定分区存储管理的地址转换和存储保护 ; 由于用户作业的尺寸一般都不能与所分配分区相同,就会出现存储碎片,即存储空闲区。 ; OS的设计者们观察到固定分区多道程序设计带来用户C的问题,看出一个显著的改进是允许作业正好占据它们需要的空间(但作业的长度必须小于整个存储器),没有必须遵守的固定边界。 作业能得到它所需要的存储区。于是又引入了动态分区的存储器分配方式。 ;4.2.3 动态分区分配(可变分区); 动态分区的存储管理改进了存储使用效率,却使存储的分配和释放工作复杂化了,它必须记录各进程使用存储的有关信息。 ;在实现分区分配存储管理方式时,必须解决三个问题:;一、分区分配中的数据结构 ;0K;110K;二、分区分配算法 ;2、循环首次适应算法 ;3、最佳适应算法;4、最坏适应算法 ;A;三、分区分配操作; 1、分配内存 ; 2、回收内存 ; 2、回收内存 ;(2)回收区与插入点的后一分区相邻接;(3)回收区同时与插入点的前、后两个分区邻接;(4)回收区既不与F1邻接,也不与F2邻接。;分区回收算法:(补充);碎片问题:;地址转换与存储保护 ;作业2;作业2;存储器“打饱嗝” ; 由于程序在存储空间中移动所进行的与位置有关的地址调整过程,也称为重定位或者叫“浮动”。;2、动态重定位 ; 动态重定位中,地址变换过程只在程序执行期间,随着对每条指令和数据的访问而自动进行的。 当系统对内存进行了“紧凑”,而使若干程序从内存的某处移至另一处时,不需对程序做任何修改,只要用该程序在内存的新起始地址,去置换原来的起始地址就可以了。 ; 三、动态重定位分区分配算法 实现动态重定位分区分配算法和动态分区基本上相同。; ; 固定分区: 动态分区: 动态重定位分区:; 分区分配的优缺点; 缺点: (1)内存利用率仍然不高,除了动态重定位分区方式以外,都存在着严重的零头问题。在单一连续区分配一样,要求作业执行前全部装入内存,在内储器中可能包含有从未使用过的信息。 (2)采用拼接技术,虽然解决了零头问题,但有时需要移动大量的信息,从而损失了处理机时间。 (3)不能实现对主存的“扩充”,不能为用户提供一个比存储空间大的地址空间,作业的大小受到主存可用空间的限制。 ;4.2.5 对换 ;1 对换的引入; 以整个进程为单位。 用于解决内紧张问题进一步提高内存的利用率。 ; 为了实现进程对换,系统必须能实现以下三方面的功能: ⑴对换空间的管理; ⑵进程的换出; ⑶进程的换入。 ;2 对换空间的管理 ; 对换区空间的分配与回收,与动态分区雷同。;3 进程的换出与换入 ;一、进程的换出;(1)优先级低的阻塞进程 (2)优先级低的就绪进程 ; 2、换出过程 换出程序(进程),只能换出那些非共享的程序和数据段。;是否把整个进程都换出?;二、进程的换入 ;

文档评论(0)

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

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

1亿VIP精品文档

相关文档