操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt

操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt

ID:50045030

大小:2.86 MB

页数:37页

时间:2020-03-08

操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt_第1页
操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt_第2页
操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt_第3页
操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt_第4页
操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt_第5页
资源描述:

《操作系统 教学课件 作者 宗大华 宗涛 陈吉人 4存储管理课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第4章基本存储管理本章目录4.1存储管理预备知识4.1.1用户程序的四个处理阶段4.1.2地址重定位4.1.3程序的链接4.1.4存储管理的功能4.2分区存储管理4.2.1固定分区存储管理4.2.2可变分区存储管理4.2.3其他管理技术:覆盖、交换、伙伴系统4.3分页式存储管理4.3.1分页式存储管理的基本思想4.3.2分页式存储管理的地址转换4.3.3页帧的分配与回收4.4分段式和段页式存储管理4.4.1分段式存储管理4.4.2段页式存储管理4.1存储管理预备知识4.1.1用户程序的四个处理阶段编辑阶段1.编辑阶段用

2、户源程序翻译阶段目标程序代码其他代码库代码链接编辑阶段可执行程序代码装入阶段程序地址空间磁盘用汇编语言或某高级语言编写程序,是产生用户程序的编辑阶段,该阶段的结果是得到“源程序”文件。翻译阶段2.为了程序的运行,先应使用汇编程序或编译程序对源程序进行翻译处理,产生出称为“目标程序”的二进制程序代码,这属于翻译阶段。链接编辑阶段3.把目标程序代码链接装配到一起,成为一个统一的程序整体。经过链接编辑阶段,得到用户程序相对于“0”编址的一个完整的二进制目标程序代码。装入阶段4.装入阶段的任务,是根据内存的使用情况,为进入内存

3、的程序分配存储区,对程序中的地址进行调整。返回目录4.1.2地址重定位1.用户程序的两种地址和空间.内存单元的地址称为“绝对地址”或“物理地址”。从任何一个绝对地址开始的一段连续的内存空间,被称为“物理地址空间”,或“绝对地址空间”。.用户程序的逻辑地址空间0k内存装入用户程序的物理地址空间aa+k逻辑地址物理地址在多道程序设计环境下,用户无法事先指定要占用内存的哪个区域,也不知道自己的程序将会被放在内存的什么地方。.程序通过链接编辑,产生出相对于“0”计算的地址空间,这个地址空间称为是用户程序的“相对地址空间”,或“

4、逻辑地址空间”,其地址称为“相对地址”或“逻辑地址”。系统所接受的,就是这种相对于“0”编址的用户程序。.这样的程序是不可能直接投入运行的,因为程序中的地址没有能够反映出它所在存储区的真正存储位置。2.地址的重定位程序被装入到分配给它的内存储区时,必须对每条指令里所涉及到的逻辑地址进行修改,使它们能够正确地反映出所在的存储位置。这种把逻辑地址转换成物理地址的过程,称为地址的“重定位”。..用户程序A的相对地址空间xxxxxx01001KB2KB3KB3000call100内存xxxxxx20KB20KB+10021KB

5、22KB23KB20KB+3000call100操作系统0X内存xxxxxx20KB20KB+10021KB22KB23KB20KB+3000call20580操作系统0内存xxxxxx22KB22KB+10023KB24KB25KB22KB+3000call226280操作系统20KB(a)(b)(c)(d)例如,假定用户程序A的相对地址空间为0~3KB(0~3071),在程序中地址为3000的地方,有一条调用子程序(其入口地址为100)的指令:“call100”,如图(a)所示。.对用户程序原封不动的装入,不能使它

6、正确运行,因为在执行到位于绝对地址20KB+3000处的“call100”指令时,它就会转到绝对地址100处去调用所需的子程序,而这个地址却是在操作系统里面,如图(b)所示。.把指令“call100”中的100变换成20580,就是地址重定位,如图(c)所示。.若把程序A装入到(22KB~25KB)的绝对地址空间里,那么call指令中地址100所对应的绝对地址就是22KB+100= 22628了。如图(d)所示。即在程序装入内存之前,程序指令中的地址就已经是绝对地址,已经正确地反映了它将要进入的存储区位置。3.地址定位

7、的三种方式.绝对定位方式(1).优点是程序中的逻辑地址与实际内存的物理地址相同,不再需要对指令中的地址进行任何重定位,装入到指定的内存位置就可以运行了。缺点是编程人员要熟悉内存使用情况,要小心对待指令中的地址,不能出差错;程序在内存不能移动,只能固定在该存储区内;对程序所作的微小修改,都可能牵扯到程序整体的变动;不适用多道程序设计环境。静态重定位方式(2)要有重定位装入程序,功能是:根据当前内存使用情况,为欲装入的二进制目标程序分配所需存储区;根据所分配的存储区,对程序中的指令地址进行重定位;将重定位后的二进制目标程序

8、装入到指定的存储区中。.用户提供相对于“0”编址的二进制目标程序。通过重定位装入程序的加工,目标程序进到分配给它的物理地址空间,程序指令中的地址都被修改为正确反映该空间的情形。..由于地址重定位在程序执行前完成,因此称为“静态重定位”,或“静态地址绑定”。特点是:重定位由软件实现,无须硬件支持;在程序运行前完成地址重定位工作;地址

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

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

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