操作系统课件第四章1.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《操作系统课件第四章1.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 课件 第四
- 资源描述:
-
1、Operating SystemOperating SystemPage 12022-5-24Operating SystemOperating Systemq重点重点v理解理解重定位的基本概念重定位的基本概念 v掌握掌握动态分区分配方式动态分区分配方式 v掌握理解掌握理解分页和分段存储管理方式分页和分段存储管理方式 v理解理解虚拟存储器的基本概念虚拟存储器的基本概念 v掌握掌握请求分页系统的基本原理请求分页系统的基本原理 q难点难点v动态分区分配动态分区分配算法算法 v分页和分段地址转换分页和分段地址转换v请求分页系统的地址转换及页面置换算法请求分页系统的地址转换及页面置换算法Page 22
2、022-5-24Operating SystemOperating Systemq知识点知识点v重定位的基本概念重定位的基本概念 v动态分区分配方式及分配算法、分区保护动态分区分配方式及分配算法、分区保护v分页存储管理及地址变换、分段存储管理及地分页存储管理及地址变换、分段存储管理及地址变换,信息共享和保护址变换,信息共享和保护v虚拟存储器的基本概念、特征,页面置换技术虚拟存储器的基本概念、特征,页面置换技术 v请求分页系统,页表机制、地址变换及页面置请求分页系统,页表机制、地址变换及页面置换算法换算法 Page 32022-5-24Operating SystemOperating Syst
3、emq存储器是计算机系统重要的组成部分存储器是计算机系统重要的组成部分q虽然存储器的容量不断扩大,但仍不能满虽然存储器的容量不断扩大,但仍不能满足要求,因此存储器管理是操作系统的重足要求,因此存储器管理是操作系统的重要工作要工作Page 42022-5-24Operating SystemOperating Systemq存储器包括内存(主存)和外存(磁盘)存储器包括内存(主存)和外存(磁盘)v存储器的功能是保存数据,存储器的发展方向存储器的功能是保存数据,存储器的发展方向是高速、大容量和小体积。是高速、大容量和小体积。内存在访问速度方面的发展:内存在访问速度方面的发展:DRAM、SDRAM、
4、SRAM等;等;硬盘技术在大容量方面的发展:接口标准、硬盘技术在大容量方面的发展:接口标准、存储密度等;存储密度等;q主存储器管理技术分为两大类主存储器管理技术分为两大类v实存储器管理实存储器管理v虚拟存储器管理虚拟存储器管理Page 52022-5-24Operating SystemOperating Systemq存储器的物理组织、多级存储器存储器的物理组织、多级存储器v存储组织是指在存储技术和存储组织是指在存储技术和CPU寻址技术许可的寻址技术许可的范围内组织合理的存储结构。范围内组织合理的存储结构。其依据是访问速度匹配关系、容量要求和价其依据是访问速度匹配关系、容量要求和价格。格。“
5、寄存器寄存器-内存内存-外存外存”结构结构“寄存器寄存器-缓存缓存-内存内存-外存外存”结构;结构;v微机中的存储层次组织:微机中的存储层次组织:访问速度越慢,容量越大,价格越便宜;访问速度越慢,容量越大,价格越便宜;最佳状态应是各层次的存储器都处于均衡的最佳状态应是各层次的存储器都处于均衡的繁忙状态(如:缓存命中率正好使主存读写繁忙状态(如:缓存命中率正好使主存读写保持繁忙);保持繁忙);Page 62022-5-24Operating SystemOperating Systemq快速缓存:快速缓存:vData CachevTLB(Translation Lookaside Buffer)
6、q内存:内存:DRAM, SDRAM等;等;q外存:软盘、硬盘、光盘、磁带等;外存:软盘、硬盘、光盘、磁带等;外存(secondary storage)DOS核心命令处理程序内存(primary storage)快速缓存(cache)寄存器(register)Page 72022-5-24Operating SystemOperating Systemq主存储器管理功能主存储器管理功能v存储分配和回收存储分配和回收分配和回收算法及相应的数据结构分配和回收算法及相应的数据结构v地址变换和重定位地址变换和重定位可执行文件生成中的链接技术可执行文件生成中的链接技术程序加载程序加载(装入装入)时的重定
7、位技术时的重定位技术进程运行时硬件和软件的地址变换技术和机构进程运行时硬件和软件的地址变换技术和机构v存储共享和保护存储共享和保护代码和数据共享代码和数据共享地址空间访问权限(读、写、执行)地址空间访问权限(读、写、执行)v存储器扩充:存储器的逻辑组织和物理组织;存储器扩充:存储器的逻辑组织和物理组织;由应用程序控制:覆盖;由应用程序控制:覆盖;由由OS控制:交换(整个进程空间),虚拟存储的请求调入和控制:交换(整个进程空间),虚拟存储的请求调入和预调入(部分进程空间)预调入(部分进程空间)Page 82022-5-24Operating SystemOperating Systemq程序的装
8、入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式Page 92022-5-24Operating SystemOperating Systemq程序的装入程序的装入q程序的链接程序的链接Page 102022-5-24Operating SystemOperating Systemq多道程序环境下,程序要运行必须为之创建进程,多道程序环境下,程序要运行必须为之创建进程,
9、而创建进程的第一件事就是分配内存而创建进程的第一件事就是分配内存q源程序要运行通常经过源程序要运行通常经过编译(编译(compile)链接链接(link)装入装入(load)等几个步骤等几个步骤库库链接链接程序程序装入模块装入模块装入装入程序程序编译程序产生编译程序产生的目标模块的目标模块第一步第一步第二步第二步第三步第三步内存内存Page 112022-5-24Operating SystemOperating System4.1 程序的装入和链接程序的装入和链接 图 4-1 对用户程序的处理步骤 库链接程序装入模块装入程序编译程序产生的目标模块第一步第二步第三步内存Page 122022-
10、5-24Operating SystemOperating System4.1.1 程序的装入程序的装入1. 绝对装入方式绝对装入方式(Absolute Loading Mode) 2. 可重定位装入方式可重定位装入方式(Relocation Loading Mode) 3. 动态运行时装入方式动态运行时装入方式(Dynamic Run-time Loading) Page 132022-5-24Operating SystemOperating Systemq绝对装入方式绝对装入方式(Absolute Loading Mode) v事先事先确定确定了程序将了程序将驻留在内存驻留在内存的什么的
11、什么位置位置,即,即在内存中的在内存中的绝对地址绝对地址v装入模块被装入内存后,由于程序中的逻辑地装入模块被装入内存后,由于程序中的逻辑地址与实际内存地址完全相同,故不需对程序和址与实际内存地址完全相同,故不需对程序和数据的地址进行修改数据的地址进行修改v绝对地址的产生绝对地址的产生程序员直接赋予。不仅要求程序员熟悉内存程序员直接赋予。不仅要求程序员熟悉内存使用情况,而且一旦程序或数据被修改后,使用情况,而且一旦程序或数据被修改后,可能要改变程序中的所有地址。通常在程序可能要改变程序中的所有地址。通常在程序中采用符号地址,在编译或汇编时,再将符中采用符号地址,在编译或汇编时,再将符号地址转换为
12、绝对地址。号地址转换为绝对地址。编译或汇编时产生编译或汇编时产生Page 142022-5-24Operating SystemOperating Systemq可重定位装入方式可重定位装入方式(Relocation Loading Mode) v绝对装入方式只能将目标模块装入到内存中事绝对装入方式只能将目标模块装入到内存中事先指定的位置先指定的位置v在多道程序环境下,不可能预知目标模块放在在多道程序环境下,不可能预知目标模块放在内存中的地址,因此绝对装入方式不适合在多内存中的地址,因此绝对装入方式不适合在多道环境下使用道环境下使用v程序中程序中目标模块的地址通常从目标模块的地址通常从0开始开
13、始,其他地,其他地址都是相对于址都是相对于0计算计算相对地址相对地址v把在装入时对目标程序中指令和数据的地址修把在装入时对目标程序中指令和数据的地址修改过程称为改过程称为重定位重定位,又因为,又因为地址变换通常是在地址变换通常是在装入时一次完成装入时一次完成的,以后不再改变,故称为的,以后不再改变,故称为静静态重定位态重定位Page 152022-5-24Operating SystemOperating SystemLOAD 1,2500365365100001100012500150005000250010000作业 地 址空间内 存空 间LOAD 1,12500作业装入内存时的情况作业装
14、入内存时的情况 缺点:不断的分配和回收,造成内存中小空闲块很多,总缺点:不断的分配和回收,造成内存中小空闲块很多,总空闲空间量够,但分配不了空闲空间量够,但分配不了办法:紧凑(移动),但该装入方法不支持办法:紧凑(移动),但该装入方法不支持Page 162022-5-24Operating SystemOperating SystemLOAD 1,25003655000250010000作业地址空间作业地址空间36510000110001250015000内存空间内存空间LOAD 1,1250036520000210002250025000内存空间内存空间LOAD 1,22500将程序加载到将
15、程序加载到10000?将程序移动到将程序移动到20000?Page 172022-5-24Operating SystemOperating Systemq动态运行时装入方式动态运行时装入方式(Denamic Run-time Loading) v可重定位方式不允许程序运行时可重定位方式不允许程序运行时在内存中移在内存中移动位置动位置v动态运行时的装入程序,是在把装入模块装动态运行时的装入程序,是在把装入模块装入内存后,并不立即把装入模块中的相对地入内存后,并不立即把装入模块中的相对地址转换为绝对地址,而是把这种址转换为绝对地址,而是把这种地址转换推地址转换推迟到程序真正要迟到程序真正要执行执
16、行时才进行时才进行。因此,。因此,装入装入内存后的所有地址都内存后的所有地址都仍是相对地址仍是相对地址Page 182022-5-24Operating SystemOperating Systemq程序的装入程序的装入q程序的链接程序的链接Page 192022-5-24Operating SystemOperating System4.1 程序的装入和链接程序的装入和链接 图 4-1 对用户程序的处理步骤 库链接程序装入模块装入程序编译程序产生的目标模块第一步第二步第三步内存Page 202022-5-24Operating SystemOperating System4.1.2 程序的链
17、接程序的链接 1. 静态链接方式静态链接方式(Static Linking) 2. 装入时动态链接装入时动态链接(Load-time Dynamic Linking) 3. 运行时动态链接运行时动态链接(Run-time Dynamic Linking) Page 212022-5-24Operating SystemOperating Systemq静态链接方式静态链接方式(Static Linking) v在程序在程序运行前运行前,先将各目标模块及所需的库函,先将各目标模块及所需的库函数链接成一个完整的装配模块,以后不再拆开数链接成一个完整的装配模块,以后不再拆开v在将这几个目标模块装配成
18、一个装入模块时,在将这几个目标模块装配成一个装入模块时,须解决以下两个问题须解决以下两个问题 对相对地址进行修改对相对地址进行修改 变换外部调用符号变换外部调用符号Page 222022-5-24Operating SystemOperating System模块模块 ACALL B;Return;0L1模块模块 BCALL C;Return;0M1模块模块 CReturn;0N1(a) 目标模块目标模块( (外存外存) )装入前装入前链接修链接修改地址改地址0模块模块 AJSR“L”Return;L1模块模块 BJSR“LM”Return;LLM1LMLMN1模块模块 CReturn;(b)
19、 装入模块装入模块(外存)(外存)Page 232022-5-24Operating SystemOperating Systemq 装入时动态链接装入时动态链接(Loadtime Dynamic Linking) v将用户的源程序编译后所得的一组目标模将用户的源程序编译后所得的一组目标模块在装入内存时采用块在装入内存时采用边装入边链接边装入边链接的方式的方式便于修改和更新便于修改和更新 便于实现对目标模块的共享便于实现对目标模块的共享 Page 242022-5-24Operating SystemOperating System模块模块 ACALL B;Return;0L1模块模块 BCA
20、LL C;Return;0M1模块模块 CReturn;0N1外存外存0模块模块 AJSR“L”Return;L1模块模块 BJSR“LM”Return;LLM1LMLMN1模块模块 CReturn;内存内存装入时装入时链接修链接修改地址改地址Page 252022-5-24Operating SystemOperating Systemq 运行时动态链接运行时动态链接(Run-time Dynamic Linking) v应用程序在每次运行的模块可能不相同应用程序在每次运行的模块可能不相同v运行时动态链接方式将对某些模块的运行时动态链接方式将对某些模块的链接链接推迟到推迟到执行执行时才进行时
21、才进行,即在执行过程中,即在执行过程中,当发现一个被调用模块当发现一个被调用模块尚未装入内存尚未装入内存时,时,立即由立即由OS去找到该模块并将之装入内存,去找到该模块并将之装入内存, 把它链接到调用者模块上把它链接到调用者模块上v凡在执行过程中未被用到的目标模块,都凡在执行过程中未被用到的目标模块,都不会被调入内存和被链接到装入模块上,不会被调入内存和被链接到装入模块上,这样不仅可这样不仅可加快程序的装入过程加快程序的装入过程,而且可,而且可节省大量的内存空间节省大量的内存空间Page 262022-5-24Operating SystemOperating System模块模块 ACALL
22、 B;Return;0L1模块模块 BCALL C;Return;0M1模块模块 CReturn;0N1外存外存0模块模块 AJSR“L”Return;L1内存内存执行时执行时链接修链接修改地址改地址Page 272022-5-24Operating SystemOperating Systemq程序的装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式Page 2820
23、22-5-24Operating SystemOperating Systemq单一连续分配单一连续分配q固定分区分配固定分区分配q动态分区分配动态分区分配q可重定位分区分配可重定位分区分配q对换(对换(SwappingSwapping)Page 292022-5-24Operating SystemOperating Systemq 连续分配方式为连续分配方式为一个用户一个用户程序分配一个连续的程序分配一个连续的内存空间内存空间q 单一连续分配单一连续分配是最简单的一种存储管理方式,是最简单的一种存储管理方式,但只能用于但只能用于单用户、单任务单用户、单任务的操作系统中的操作系统中q 把内存
24、分为把内存分为v系统区:系统区:OS使用,通常放在内存低址部分使用,通常放在内存低址部分v用户区:用户区:用户可使用的全部内存空间用户可使用的全部内存空间q 存储器保护机构不健全,易造成系统破坏存储器保护机构不健全,易造成系统破坏q 优点:易于管理优点:易于管理q 缺点:对要求内存空间少的程序,造成内存浪缺点:对要求内存空间少的程序,造成内存浪费;程序全部装入,很少使用的程序部分也占费;程序全部装入,很少使用的程序部分也占用内存用内存Page 302022-5-24Operating SystemOperating System用户程序用户程序位于位于RAM中的中的操作系统操作系统0 xFFF
25、.0位于位于RAM中的中的操作系统操作系统用户程序用户程序0ROM中的中的设备驱动程序设备驱动程序用户程序用户程序位于位于RAM中的中的操作系统操作系统0单一连续区存储管理单一连续区存储管理Page 312022-5-24Operating SystemOperating Systemq单一连续分配单一连续分配q固定分区分配固定分区分配q动态分区分配动态分区分配q可重定位分区分配可重定位分区分配q对换(对换(SwappingSwapping)Page 322022-5-24Operating SystemOperating Systemq最简单的可运行最简单的可运行多道程序多道程序的存储管理方
展开阅读全文