操作系统第4章 存储管理ppt课件.ppt

操作系统第4章 存储管理ppt课件.ppt

ID:58783321

大小:581.50 KB

页数:126页

时间:2020-10-03

操作系统第4章 存储管理ppt课件.ppt_第1页
操作系统第4章 存储管理ppt课件.ppt_第2页
操作系统第4章 存储管理ppt课件.ppt_第3页
操作系统第4章 存储管理ppt课件.ppt_第4页
操作系统第4章 存储管理ppt课件.ppt_第5页
资源描述:

《操作系统第4章 存储管理ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章存储管理计算机系统存储器可分为两类:一类是主存储器(PrimaryStorage,简称主存或内存),另外一类是辅助存储器(SecondaryStorage,简称辅存或外存),外存是内存的扩充。CPU直接存取内存中的指令和数据,内存的访问速度快,但容量小;外存不与CPU直接交互,它只是用来存放暂时不执行的程序和数据,但可以启动相应的I/O设备进行内、外存的信息交换,其访问速度慢,但容量大。显然,存储器是计算机系统的重要资源之一,对存储器的有效管理是现代操作系统一个非常重要的问题。本章要点:存储管理的任务和功能;连续存储管理方式;分页存储管理方式;分段存储管理方式;虚拟存储管理;

2、4.1存储管理概述如何使得计算机系统有足够的存储空间、更快的存取速度,如何提高存储器的利用率,这是存储管理的任务和功能。在早期的单用户操作系统中,一次只允许调入一个用户进程到内存中运行,存储管理的任务很简单,就是负责存储区的分配与回收。随着操作系统的不断发展,现代操作系统的任务和功能发生了很大的变化,已经扩充到以下几个方面:对主存空间的分配与回收、地址重定位、存储器的扩充、存储共享与保护。4.1.1虚拟存储为了更好地理解存储管理的功能,在此首先引入在存储管理中使用到的虚拟存储器的概念及存储管理相关技术。1.虚拟存储器虚拟存储器是现代计算机系统存储管理中的核心概念。由于内存的访问速度

3、快,但容量小,且内存价格昂贵,所以不可能用大容量的内存存储所有被访问的或不被访问的程序与数据段。而外存尽管访问速度较慢,但价格便宜,适合存放大量程序和数据。实践证明,在一个作业或进程的执行过程中,其大部分程序和数据并不经常被访问。这样,存储管理系统把作业或进程中那些不经常被访问的程序段和数据放入外存中,待需要访问它们时再将它们调入内存。那么,对于那些一部分数据和程序段在内存而另外一部分则在外存的进程,怎样安排它们的地址呢?通常由用户编写的源程序,首先要由编译程序编译成CPU可执行的目标代码。然后,链接程序把一个进程的不同程序段链接起来以完成所要求的功能。显然,对于不同的程序段,应具

4、有不同的地址。有两种方法安排这些编译后的目标代码的地址。一种方法是按照物理存储器中的位置赋予实际物理地址(本章即将介绍的连续存储管理就属于这种方法)。这种方法的好处是CPU执行目标代码时的执行速度高。但是,由于物理存储器的容量限制,能装入内存并发执行的进程数将会大大减少,对于某些较大的进程来说,当其所需求的总内存容量超过内存所能分配的最大容量时将会无法执行。另外,由于编译程序必须知道内存的当前空闲部分及其地址,并且把一个进程的不同程序段连续地存放起来,因此编译程序将非常复杂。另一种方法是编译链接程序把用户源程序编译后链接到一个以0地址为始地址的线性或多维虚拟地址空间(本章即将介绍的

5、动态分页管理和分段管理应用到这种方法)。这里,链接既可以是在程序执行以前由链接程序完成的静态链接,也可以是在程序执行过程中由于需要而进行的动态链接。而且,每一个进程都拥有这样一个空间(当然,这个空间可能是一维的,也可能是多维的,这由存储管理方式决定)。每个指令或数据单元都在这个虚拟空间中拥有确定的地址,通常,把这个地址称为虚拟地址(VirtualAddress,VA)。显然,进程在该空间的地址排列可以是非连续的,其中从虚拟地址到实际内存地址的地址由硬件提供的变换机构自动完成。由源程序到实际存放该程序指令或数据的实际内存地址的变换如图4-1所示。图4-1地址变换简单示意图用户源程序存

6、储的虚地址实际内存地址编译链接地址变换通常将进程中的目标代码和数据等的虚拟地址组成的虚拟空间称为虚拟存储器(VirtualStoreorVirtualMemory)。虚拟存储器不考虑物理存储器的大小和信息存放的实际位置,只规定每个进程中互相关连的信息的相对位置。与实际物理存储器只有一个(单机系统中),且被所有进程共享不一样,每个进程都拥有自己的虚拟存储器,且虚拟存储器的容量是由计算机的地址结构和寻址方式确定的。2.覆盖技术所谓“覆盖”(Overlay)就是一个进程的若干个程序段,或几个进程的某些部分共享同一内存空间。覆盖技术的基本思想是把内存的同一区域分配给一道程序的若干个子程序或

7、数据段。开始时只有程序的一部分装入内存,在其执行过程中根据请求,动态地把其他部分装入到该程序原来占用的存储区域中,覆盖先前装入的程序部分。覆盖技术通过覆盖结构来实现,覆盖结构如图4-2所示,在图中,程序A大小为120KB,程序B大小为32KB,程序C大小为16KB,在内存中,首先为程序A开辟120KB的内存空间,然后为程序B和程序C再开辟32KB的空间即可,这是由于在运行时,程序B不调用程序C,而程序C也不调用程序B。在DOS操作系统中,命令解释程序的暂驻部分就是与用

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。