《操作系统第五章》PPT课件

《操作系统第五章》PPT课件

ID:36900326

大小:738.60 KB

页数:98页

时间:2019-05-10

《操作系统第五章》PPT课件_第1页
《操作系统第五章》PPT课件_第2页
《操作系统第五章》PPT课件_第3页
《操作系统第五章》PPT课件_第4页
《操作系统第五章》PPT课件_第5页
资源描述:

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

1、第5章存储管理相关概念:内存和外存计算机系统中的存储器可分为两种:内存储器(内存)和辅助存储器(外存)。内存可被CPU直接访问,而后者不能,外存与CPU之间只能在输入输出的控制系统的管理下,进行信息交换。5.1虚拟存储器虚拟存储器的产生原因在早期的计算机存储管理方案中要求把作业“一次全部装入”到内存,这就带来了一个很大的问题;如果一个作业太大,以至于内存都容纳不下,那么,这个作业就无法投入运行。因此小内存和大作业之间存在着的这个矛盾,在多道程序设计时,当要求内存中存在多个作业程序时,就更显得突出了。虚拟存储器的概念就在这样的背景下产生了。虚拟存储器的

2、概念虚拟存储器是一种扩大内存容量的设计技术,她把辅助存储器作为计算机内存存储器的后援。当作业提交给系统时,首先进入辅存,运行时,只将其中有关部分装入内存,其他部分仍在辅存中,当运行过程中需要用到不存在内存的信息时,再把它们调入,以保证程序的正常运行。这样一个看上去容量很大、但实际上不存在的大存储器,就被称为“虚拟存储器”。地址变换的问题1、什么是内存物理地址?内存是由一个个存储单元组成,这些内存单元按照一定顺序编号,称为该单元的地址。我们把这些“单元地址”称为“绝对地址”或“物理地址”。2、什么是逻辑地址?用户的源程序经过编译程序的加工,产生出相对于

3、“0”编址的目标程序,再经过连接装配,产生出一个”0”编址的更大的地址空间。这个地址空间被称为是用户程序的“相对地址空间”或“逻辑地址空间”。3、地址是怎样变换的?当程序执行时,需要装入内存中,但是此时程序中的指令地址是“相对地址”,要使程序正常运行,需要将“相对地址”变换成“绝对地址”,如:XXXXXCall10001001KB2KB3KB3000用户程序的虚地址空间(a)(b)20KB+10020KB+3000100020KB23KB22KB操作系统XXXXXXCall100……21KB内存100020KB23KB22KB操作系统XXXXXXC

4、all20580……20KB+10020KB+300021KB内存(c)25KB22KB24KB操作系统XXXXXXCall22628……020KB22KB+10022KB+300023KB内存(d)图5-1地址变换示意图其中程序A中的一条入口地址为3000的一条指令为“call100”,在装入内存之后,由于程序的启始地址不再为“0”,故程序中的指令需要做相应的转换。在上图中所示的情况中,“call100”变成了“call‘2KB+100’”。因此在操作系统中,把用户程序指令中的相对地址变换成所在绝对地址空间中的绝对地址的过程,称为“地址重定位”。“

5、地址的重定位”可分为“静态地址重定位”和“动态地址重定位”。静态地址重定位在程序运行之前,就为用户程序实行了地址重定位的工作,称这种地址重定位为“静态重定位”。该重定位方法有如下的特点:1)静态重定位是在程序运行之前完成地址重定位工作的。2)静态重定位由软件实现,无须硬件提供支持。3)实行静态重定位时,地址重定位工作是在装入时被一次集中完成的。4)只完成了一个首地址不同的连续地址转换,要求连续的内存空间5)一次性装入不再移动,无法实现虚拟存储动态地址重定位:(1)方法:在程序执行过程中,在CPU访问内存之前,将要访问的程序或数据地址变成内存地址,动态

6、重定位依靠硬件地址变换机构完成。(2)动态地址重定位机构基地址寄存器BR(始址)、虚地址寄存器VR偏移)则:内存地址MAMA=(BR)+(VR)其中括号表示取寄存器值(3)址映射过程:①设置基地址寄存器BR,虚地址寄存器VR②将程序段装入内存,将其占用的区域的首地址送BR;③在程序执行过程中,将要访问的虚地址送入VR中;④地址变换机构把VR和BR的内容相加,得访问的物理地址(4)动态重定位优点:①可以对内存进行非连续分配(各个程序分段的首地址)②动态重定位提供了实现虚拟存贮器的基础(不要求一次性装入,不要求连续空间,可运行时部分和动态的分配空间)③有

7、利于程序段共享(将可共享程序段,分配共享的存储空间)关于动态地址重定位可以如下图所示的过程说明:03456......LOADA200......0100200300.........LOADA2003456110012001300200VR+1000BR现在将地址的静态重定位和动态重定位做一个综合比较:(1)地址转换时刻:静态地址重定位在程序运行之前完成地址转换的;动态地址重定位却是将地址转换的时刻推迟到指令执行时进行的。(2)谁来完成任务:静态地址重定位是由软件完成地址转换工作的;动态地址重定位则由一套硬件提供的地址转换机构来完成。(3)完成的形

8、式:静态地址重定位是在装入时一次集中地把程序指令中所有要转换的地址全部加以转换;而动态地址重定位则是每执行一

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

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

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