ch4-4.1存储器工作原理4.2连续存储管理_第1页
ch4-4.1存储器工作原理4.2连续存储管理_第2页
ch4-4.1存储器工作原理4.2连续存储管理_第3页
ch4-4.1存储器工作原理4.2连续存储管理_第4页
ch4-4.1存储器工作原理4.2连续存储管理_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、操作系统教程(第5版)第4章 存储管理高等教育出版社 2014年1月笫四章 存储管理4.1 存储器工作原理 4.2 连续存储管理 4.3 分页存储管理 4.4 分段存储管理 4.5 虚拟存储管理 4.6存储管理方案和虚存页面替换算法小结4.7 Linux虚拟存储管理 存储管理的功能分配和去配:抽象和映射:隔离和共享:存储扩充:4.1 存储器工作原理 4.1.1存储器层次 4.1.2地址转换与存储保护 4.1.1 存储器层次寄存器高速缓存内存储器磁盘缓存固定磁盘可移动存储介质各级存储器性能4.1.2 地址转换与存储保护(1)程序的编译、链接、装载和执行 链接动态重定位静态重定位源程序模块1源程序

2、模块2源程序模块n目标代码1目标代码2目标代码n可重定位目标代码(装载代码)(外存)编译装载执行程序名字空间逻辑地址空间物理地址空间可执行二进代码(内存)静态链接系统库可执行二进代码(内存) 动态链接系统库编译、链接、装载(1)编译程序负责记录引用发生的位置,编译或汇编的结果产生相应的多个目标代码模块,每个都附有供引用使用的内部符号表和外部符号表。符号表中依次给出每个符号名及在本目标代码模块中的名字地址,在模块被链接时进行转换。 链接需要解析内部和外部符号表,把对符号名字引用转换为数值引用,要转换每个涉及名字地址的程序入口点和数据引用点成为数值地址。装入时根据指定的内存块首地址,再次修改和调整

3、被装载模块中的每个逻辑地址,将逻辑地址绑定到物理地址。 编译、链接、装载(2)链接程序(linker)的作用是根据目标模块之间的调用和依赖关系,将主调模块、被调模块、以及所用到的库函数装配和链接成一个完整的可装载执行模块。根据程序链接发生的时刻和链接方式,可分成三种: (1)静态链接 (2)动态链接 (3)运行时链接编译、链接、装载(3)装载程序(loader)把可执行程序装入内存方式有三种:(1)绝对装载。装载模块中的指令地址始终与其内存中的地址相同,即在模块中出现的所有地址都是内存绝对地址。(2)可重定位装载。根据内存当时使用情况,决定将装载代码模块放入内存的物理位置。模块内使用的地址都是

4、相对地址。(3)动态运行时装载。为提高内存利用率,装入内存的程序可换出到磁盘上,适当时候再换入到内存中,对换前后程序在内存中的位置可能不同,即允许进程的内存映像在不同时候处于不同位置,此时模块内使用的地址必为相对地址。编译、链接、装载(4)可执行程序逻辑地址转换 (绑定)为物理地址的过程称地址重定位 、地址映射或地址转换,基于上述程序装载方式,可区分三种地址重定位。() 静态地址重定位() 动态地址重定位( 3 ) 运行时链接地址重定位存储保护涉及:防止地址越界和控制正确存取。各道程序只能访问自己的内存区而不能互相干扰,必须对内存中的程序和数据进行保护,以免受到其他程序有意或无意的破坏。可对进

5、程执行时所产生的所有内存访问地址进行检查,确保进程仅访问它自己的内存区,这就是地址越界保护,越界保护依赖于硬件设施,常用的有:界地址和存储键。进程访问分配给自己的内存区时,要对访问权限进行检查,如允许读、写、执行等,从而确保数据的安全性和完整性,防止有意或无意的误操作而破坏内存信息,这就是信息存取保护。4.2 连续存储空间管理4.2.1 固定分区存储管理 4.2.2 可变分区存储管理 4.2.3 内存不足的存储管理技术4.2.1 固定分区存储管理固定分区存储管理的基本思想:固定分区存储管理的数据结构:作业进入固定分区排队策略: 固定分区存储管理地址转换和存储保护 B下限寄存器逻辑地址CPU绝对

6、地址操作系统区用户分区1用户分区2用户分区3B+L2上限寄存器B+L2越界中断用户分区4用户分区5用户分区64.2.2 可变分区存储管理 可变分区 存储管理是按作业的实际大小来划分分区,且分区个数也是随机的,实现多个作业对内存的共享,进一步提高内存资源利用率。 可变分区方式内存分配示例操作系统作业1空闲区作业2空闲区4KB10KB46KB52KB128KB操作系统作业1空闲区作业2空闲区4KB10KB40KB46KB52KB128KB作业3操作系统作业1空闲区4KB10KB40KB128KB作业3可变分区存储管理数据结构 可变分区内存分配表可由两张表格组成,“已分配区表”“未分配区表”可变分区

7、回收算法 A X B A B A X A X B B x 变为变为变为变为X终止前X终止后链表空闲区管理方法空闲区开头单元存放本空闲区长度及下个空闲区起始地址,把所有空闲区都链接起来,设置第一块空闲区地址指针,让它指向第一块空闲区地址。申请空闲区;归还空闲区。可变分区管理分配算法1) 最先适应分配算法 2) 下次适应分配算法3) 最优适应分配算法 4) 最坏适应分配算法5) 快速适应分配算法 可变分区地址转换与存储保护 基址基址寄存器逻辑地址CPU绝对地址操作系统区空闲分区1用户作业1空闲分区2限长限长寄存器限长越界中断多对基址/限长寄存器 进程B虚CPU进程A虚CPU物理内存进程A私有空间进

8、程B私有空间共享区重定位寄存器1限长寄存器1重定位寄存器2限长寄存器2重定位寄存器1限长寄存器1重定位寄存器2限长寄存器2 多对重定位寄存器支持内存共享4.2.3内存不足的存储管理技术 操作系统作业1空闲区作业2空闲区作业3空闲区操作系统作业1作业2作业3空闲区操作系统作业1作业2作业3空闲区作业41.移动技术有关移动问题讨论移动条件移动时机移动算法2. 对换技术(1)对换的作用对换进程选择UNIX对换器对换技术(2)为平衡系统负载,通过选择一个进程,把其暂时移出到磁盘,腾出空间给其他进程使用,同时把磁盘中的某个进程再换进内存,让其投入运行,这种互换称对换。把时间片耗尽或优先级较低的进程换出,因为短时间内它们不会被投入运行; 数据区和堆栈是进程运行时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论