欢迎来到天天文库
浏览记录
ID:51498109
大小:678.50 KB
页数:156页
时间:2020-03-25
《计算机操作系统原理 ch6 存储管理.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第六章存储管理主存管理的功能分区存贮管理分页存储管理分段存储管理段页式存储管理覆盖技术与交换技术虚拟存储1一、主存管理的功能地址映射主存分配存储保护主存扩充(虚拟内存)2地址映射(地址重定位)内存的每个存储单元都有一个编号,这种编号称为内存地址(或称为物理地址,绝对地址)。内存地址的集合称为内存空间(或物理地址空间)。3要求用户用内存地址编程是非常困难的,尤其是在多道程序设计的环境中。用户编程所用的地址称为逻辑地址(或程序地址,或虚地址),由逻辑地址组成的空间称为逻辑地址空间(或程序地址空间)。4地址映射LoadA200345
2、6。。1200物理地址空间LoadAdata1data13456源程序LoadA20034560100200编译连接逻辑地址空间BA=10005地址映射的方式我们把用户程序装入内存时对有关指令的地址部分的修改定义为从程序地址到内存地址的地址映射,或称为地址重定位。地址映射的方式:1、静态地址映射2、动态地址映射61、静态地址映射程序被装入内存时由操作系统的连接装入程序完成程序的逻辑地址到内存地址的转换。7映射方法假定程序装入内存的首地址为BR,程序地址为VR,内存地址为MR,则地址映射按下式进行:MR=BR+VR。例如,程序装
3、入内存的首地址为1000,则装配程序就按MR=1000+VR对程序中所有地址部分进行修改,修改后指令LoadA,200就变为LoadA,12008优缺点优点:不需要硬件的支持。缺点:程序必须占用连续的内存空间;一旦程序装入后不能移动。92、动态地址映射动态地址重定位是在程序执行的过程中,每次访问内存之前,将要访问的程序地址转换为内存地址。一般来说这种转换是由专门的硬件机构来完成的。10映射方法最简单的硬件机构是重定位寄存器。在地址重定位机构中,有一个基地址寄存器BR和一个程序地址寄存器VR,一个内存地址寄存器MR。110345
4、6......LOADA200......0100200300.........LOADA2003456110012001300200VR+1000BR12地址映射的具体过程程序装入内存后,它所占用的内存区的首地址由系统送入基地址寄存器BR中。在程序执行的过程中,若要访问内存,将访问的逻辑地址送入VR中。地址转换机构把VR和BR中的内容相加,并将结果送入MR中,作为实际访问的地址。13动态地址映射的优缺点优点:程序占用的内存空间是动态可变的,当程序从某个存储区移到另一个区域时,只需要修改相应的寄存器BR的内容即可。一个程序不一
5、定要求占用一个连续的内存空间。可以部分地装入程序运行。便于多个进程共享同一个程序的代码。动态地址重定位的代价:需要硬件的支持。实现存储管理的软件算法较为复杂。14主存分配与回收要完成内存的分配和回收工作,要求设计者选择和确定以下几种策略和结构:调入策略放置策略置换策略分配结构15调入策略用户程序在何时调入内存的策略。目前有请调和预调两种16放置策略用户程序调入内存时,确定将其放置在何处的策略。17置换策略当需要将某个用户程序调入内存而内存空间又不够时,就要确定哪个或哪些程序可以从内存中移走。18分配结构分配结构是用来登记内存使
6、用情况的数据结构。如空闲区表、空闲区队列等。19引起内存分配和回收的原因进程的开始的结束。进程运行的过程中,它所占用的内存也可能发生变化。如栈的变化。进程映像在内存和外存之间传递。由于内存有限,系统中不可能容纳所有进程,有些进程的映像可以存放在外存,当要运行这些进程时,必须把它们调入内存。系统为了充分利用内存空间,有时可能对内存空间进行调整。20存储保护保证在内存中的多道程序只能在给定的存储区域内活动并互不产生干扰。包括:防止地址越界防止越权(对共享区有访问权)21存储保护的硬件支持界地址寄存器(界限寄存器)存储键22界地址寄
7、存器(界限寄存器)界地址寄存器被广泛使用的一种存储保护技术机制比较简单,易于实现23实现方法在CPU中设置一对下限寄存器和上限寄存器存放用户作业在主存中的下限和上限地址也可将一个寄存器作为基址寄存器,另一寄存器作为限长寄存器(指示存储区长度)每当CPU要访问主存,硬件自动将被访问的主存地址与界限寄存器的内容进行比较,以判断是否越界如果未越界,则按此地址访问主存,否则将产生程序中断——越界中断(存储保护中断)24图示25主存扩充(虚拟内存)为了使程序员在编程时不受内存的结构和容量的限制,系统为用户构造一种存储器,其结构可能与内存
8、结构不同,容量可能远远超过内存的实际容量。这种面向编程的存储器称为虚拟存储器。由虚存构成的存储空间称为虚存空间。或称虚地址空间。26实现虚拟内存的基本原理将程序正在使用的部分内容放在内存,而暂时不用的部分放在外存,在需要时由系统调入内存,并将不需要(或暂不需要)的部分调出内存
此文档下载收益归作者所有