第6-7章-存储管理课件.ppt





《第6-7章-存储管理课件.ppt》由会员分享,可在线阅读,更多相关《第6-7章-存储管理课件.ppt(73页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统原理操作系统原理 Principles of Operating System胡志刚胡志刚中南大学信息科学与工程学院中南大学信息科学与工程学院Central South UniversityCollege of Information Science and Engineering 2023/1/24计算机操作系统目目 录录REFERANCEREFERANCE第第1 1章章 操作系统引论操作系统引论第第2 2章章 进程的描述与控制进程的描述与控制第第3 3章章 进程的通信与同步进程的通信与同步第第4 4章章 调度与死锁调度与死锁第第5 5章章 存储器管理存储器管理2023/1/24计算
2、机操作系统目目 录录第第6 6章章 虚拟存储器虚拟存储器第第7 7章章 设备管理设备管理第第8 8章章 文件系统文件系统第第9 9章章 磁盘存储器管理磁盘存储器管理第第1010章章 操作系统接口操作系统接口2023/1/24计算机操作系统第第6 6章章 存储器管理存储器管理6.1 存储管理功能存储管理功能 6.2 分区存储管理方式分区存储管理方式6.3 覆盖与交换技术覆盖与交换技术6.4 分页存储管理方式分页存储管理方式6.5 分段存储管理方式分段存储管理方式6.6 段页式存储管理方式段页式存储管理方式 实验二实验二 主存空间的分配和回收主存空间的分配和回收2023/1/24计算机操作系统6.
3、1 存储管理功能存储管理功能1 1 1 1、存储管理的主要任务、存储管理的主要任务、存储管理的主要任务、存储管理的主要任务l为多道程序的运行提供良好的环境和存储基础;为多道程序的运行提供良好的环境和存储基础;l方便用户使用存储器,提高存储器和方便用户使用存储器,提高存储器和CPU的利用率;的利用率;l从逻辑上来扩充主存储器从逻辑上来扩充主存储器2 2、存储管理功能、存储管理功能、存储管理功能、存储管理功能l主存空间分配和管理主存空间分配和管理l地址转换和重定位地址转换和重定位l存储保护和共享存储保护和共享l存储扩充存储扩充 2023/1/24计算机操作系统一一、程序的装入和链接、程序的装入和链
4、接 用户编制的源程序成为可以在内存运行的程序用户编制的源程序成为可以在内存运行的程序通常要经历三个步骤:通常要经历三个步骤:编译、链接和装入编译、链接和装入编译、链接和装入编译、链接和装入。源源程程序序系统源系统源语句库语句库私有源私有源语句库语句库目标目标模块模块系统目标系统目标语句库语句库私有源私有源语句库语句库装入装入模块模块重定位重定位2023/1/24计算机操作系统重定位的重定位的2种方式种方式1、程序的装入程序的装入补充:补充:补充:补充:重定位的概念:重定位的概念:重定位的概念:重定位的概念:相对地址:相对地址:相对地址:相对地址:用户程序中使用的地址;用户程序中使用的地址;绝对
5、地址:绝对地址:绝对地址:绝对地址:系统为主存单元分配的地址;系统为主存单元分配的地址;相对地址空间:相对地址空间:相对地址空间:相对地址空间:绝对地址空间:绝对地址空间:绝对地址空间:绝对地址空间:例:例:0 LOAD AX,6 ;将将6号单元内容入号单元内容入AX 2 ADD AX,8 ;AX与与8号单元内容相加号单元内容相加 4 SRORE AX,10 ;AX内容入内容入10号单元号单元 6 A 8 B 10 A+B重定位:重定位:重定位:重定位:修改程序中与地址相关的内容修改程序中与地址相关的内容-将相对地址变将相对地址变为绝对地址的过程称为程序重定位。为绝对地址的过程称为程序重定位。
6、2023/1/24计算机操作系统1 1、静态重定位、静态重定位、静态重定位、静态重定位思想:思想:思想:思想:程序入主存之前由编译程序入主存之前由编译/链接程序完成重链接程序完成重定位,入主存可立即执行。定位,入主存可立即执行。例例优缺点:优缺点:优缺点:优缺点:根据重定位的时机不同有根据重定位的时机不同有2种方式种方式2 2、动态重定位、动态重定位、动态重定位、动态重定位思想:思想:思想:思想:程序入主存之前不进行重定位,入主存执程序入主存之前不进行重定位,入主存执行到与地址相关项时,再进行重定位。行到与地址相关项时,再进行重定位。例例优缺点:优缺点:优缺点:优缺点:装入的装入的3种方式种方
7、式2023/1/24计算机操作系统静静/动态重定位示例动态重定位示例 0 LOAD AX,6 2 ADD AX,8 4 SRORE AX,10 6 A 8 B 10 A+B1000 LOAD AX,10061002 ADD AX,10081004 SRORE AX,10101006 A1008 B1010 A+B静态静态入入10001000 LOAD AX,61002 ADD AX,81004 SRORE AX,101006 A1008 B1010 A+B动动 态态重定位重定位重定位重定位R R 1000 1000执行:绝对地址执行:绝对地址=R+相对地址相对地址2023/1/24计算机操作系
8、统装入模块装入内存的三种方式:装入模块装入内存的三种方式:1 1、绝对装入方式、绝对装入方式、绝对装入方式、绝对装入方式(Absolute Loading Mode)Absolute Loading Mode)思想:思想:思想:思想:事先已经知道用户程序入主存后的位置,故编事先已经知道用户程序入主存后的位置,故编译程序在编译时即可将相对地址改为绝对地址。装入译程序在编译时即可将相对地址改为绝对地址。装入程序按照装入模块中的地址,将程序和数据装入内存。程序按照装入模块中的地址,将程序和数据装入内存。2 2、可重定位装入方式、可重定位装入方式、可重定位装入方式、可重定位装入方式(Relocatab
9、leRelocatable Loading Mode)Loading Mode)思想:思想:思想:思想:多道环境下,编译程序不能预知用户程序入主多道环境下,编译程序不能预知用户程序入主存后的位置,故编译后的目标模块的起始地址一般设存后的位置,故编译后的目标模块的起始地址一般设为从为从0开始。可重定位装入程序根据内存使用情况,将开始。可重定位装入程序根据内存使用情况,将装入模块重定位后装入内存。装入模块重定位后装入内存。3 3、动态运行时装入方式、动态运行时装入方式、动态运行时装入方式、动态运行时装入方式(Dynamic Run_time Dynamic Run_time Loading)Loa
10、ding)思想:思想:思想:思想:装入程序按照装入模块中的地址,将程序和数装入程序按照装入模块中的地址,将程序和数据装入内存,执行时重定位。据装入内存,执行时重定位。程序的链接程序的链接2023/1/24计算机操作系统链接程序的功能:链接程序的功能:链接程序的功能:链接程序的功能:将编译后得到的一组目标模块将编译后得到的一组目标模块以及它们所需要的库函数,装配成一个完整的装以及它们所需要的库函数,装配成一个完整的装入模块。有三种链接方法:入模块。有三种链接方法:2、程序的链接、程序的链接一、静态链接一、静态链接一、静态链接一、静态链接(Static Linking)Static Linking
11、)工作:工作:工作:工作:1、修改相对地址;、修改相对地址;2、将外部调用符号,变换为相对地址;、将外部调用符号,变换为相对地址;例例二、装入时动态链接二、装入时动态链接二、装入时动态链接二、装入时动态链接(Load-Time Dynamic Load-Time Dynamic Linking)Linking)工作:工作:工作:工作:边装入,边链接;边装入,边链接;三、运行时动态链接三、运行时动态链接三、运行时动态链接三、运行时动态链接(RunRun-Time Dynamic-Time Dynamic Linking)Linking)工作:工作:工作:工作:程序执行时再链接;程序执行时再链接;
12、2023/1/24计算机操作系统程序的链接示例程序的链接示例(P136 图图5-4)模块模块ACALL B;Return;模块模块BCALL C;Return;模块模块CReturn;000L-1M-1N-1目标模块目标模块链接链接 模块模块AJSR“L”Return;模块模块BJSR“L+M”Return;模块模块CReturn;装入模块装入模块0LL+ML+M+N-12023/1/24计算机操作系统6.2 分区存储管理方式分区存储管理方式 区分:区分:区分:区分:实存管理实存管理/虚存管理虚存管理6.2.16.2.1单一连续分配单一连续分配单一连续分配单一连续分配(单用户、单任务的单用户、
13、单任务的单用户、单任务的单用户、单任务的OS)OS)内存分为内存分为:系统区,用户区;:系统区,用户区;存储保护存储保护:一般采用界限地址寄存器。:一般采用界限地址寄存器。系统区系统区1用户区用户区上限地址寄存器上限地址寄存器系统区系统区2下限地址寄存器下限地址寄存器固定分区分配固定分区分配2023/1/24计算机操作系统思想:思想:思想:思想:将内存地址空间划分为若干个固定大小的区将内存地址空间划分为若干个固定大小的区域,每个分区装入一道作业运行。域,每个分区装入一道作业运行。6.2.2固定分区分配固定分区分配动态分区分配动态分区分配一、分区划分一、分区划分 1、大小相等;、大小相等;2、大
14、小不等;、大小不等;二、数据结构二、数据结构 例例 分区说明表:分区说明表:分区号,大小,起始地址,状态;分区号,大小,起始地址,状态;三、分配三、分配/回收回收 例例四、优缺点四、优缺点:“内零头内零头”(Internal Fragmentation)OVER2023/1/24计算机操作系统固定分区示例固定分区示例分区号分区号 大小(大小(KB)始址(始址(K)状态状态 1 15 30 已已/未未 2 30 45 已已/未未 3 50 75 已已/未未 4 100 125 已已/未未作业序列:作业序列:A(10),B(50),C(25),B,D(30).OS1/A2/C3/B4/30K45K
15、75K125K225K0K2023/1/24计算机操作系统6.2.3 动态分区分配动态分区分配思想:思想:思想:思想:主存预先不划分分区,作业入主存执行时主存预先不划分分区,作业入主存执行时再根据作业大小划分等额分区分配。再根据作业大小划分等额分区分配。一、数据结构(一、数据结构(例例)1 1、空闲分区、空闲分区、空闲分区、空闲分区:空闲分区表:空闲分区表/空闲分区控制块;空闲分区控制块;空闲分区表:空闲分区表:序号,大小,起始地址,状态;序号,大小,起始地址,状态;2 2、已分分区已分分区已分分区已分分区:已分已分分区表分区表/已分分区控制块;已分分区控制块;二、分区分配二、分区分配4算法算
16、法 1 1、首次适应、首次适应、首次适应、首次适应(First Fit)First Fit);2 2、循环首次适应、循环首次适应、循环首次适应、循环首次适应(Next Fit)Next Fit);3 3、最佳适应、最佳适应、最佳适应、最佳适应(Best Fit):Best Fit):4 4、最坏适应最坏适应最坏适应最坏适应(Worst Fit);Worst Fit);分配分配/回收回收2023/1/24计算机操作系统1 1、分区分配、分区分配、分区分配、分区分配按照分区分配算法,选择一个合适的未分分区分按照分区分配算法,选择一个合适的未分分区分配,并修改空闲配,并修改空闲/已分分区表。(已分分
17、区表。(例例)“外零头外零头”:系统中存在但无法使用的分区。:系统中存在但无法使用的分区。克服外零头:设置不再分割的剩余区最小值克服外零头:设置不再分割的剩余区最小值Size三、分区的分配三、分区的分配/回收回收2 2、分区回收、分区回收、分区回收、分区回收说明:说明:说明:说明:回收分区应与空闲分区合并。回收分区应与空闲分区合并。共有四种情况(共有四种情况(P143图图5-10)()(例例)动态重定位分区分配动态重定位分区分配2023/1/24计算机操作系统动态分区分配示例(首次)动态分区分配示例(首次)进程序列:进程序列:A(10)B(50)C(25)B D(48)序号序号 大小(大小(K
18、B)始址(始址(K)状态状态 1 610 30 未未 2 空表目空表目 3 空表目空表目 4 空表目空表目 .OS030640A(10)600 40 B(50)4090 550 90 C(25)115 525 115 50 40 525 115 未未D(48)2 88 525 115 ALLOCATION OVERC 552 88 空表目空表目OVER2023/1/24计算机操作系统6.2.4动态重定位分区分配动态重定位分区分配一、紧凑一、紧凑一、紧凑一、紧凑 移动内存中作业,将分散的多个可用分区合移动内存中作业,将分散的多个可用分区合并成一个大的分区,这种方法称为紧凑。并成一个大的分区,这种
19、方法称为紧凑。要求:采用动态重定位技术。要求:采用动态重定位技术。二、动态重定位分区分配二、动态重定位分区分配二、动态重定位分区分配二、动态重定位分区分配思想:思想:思想:思想:当作业需进入主存时,若主存每一个可用当作业需进入主存时,若主存每一个可用分区都不能满足要求,而可用分区总和又可满足分区都不能满足要求,而可用分区总和又可满足要求时,首先完成内存的要求时,首先完成内存的“紧凑紧凑”,然后调入。,然后调入。书中算法流程书中算法流程书中算法流程书中算法流程IBM-PC微机中的存储管理方式微机中的存储管理方式2023/1/24计算机操作系统6.3 覆盖与交换技术覆盖与交换技术6.3.1 6.3
20、.1 覆盖技术覆盖技术覆盖技术覆盖技术基本思想:基本思想:基本思想:基本思想:将进程当前不运行的指令和数据只在需要时装将进程当前不运行的指令和数据只在需要时装入到该进程不需再使用的指令和数据所占用的内存入到该进程不需再使用的指令和数据所占用的内存空间中。空间中。引入目的:引入目的:引入目的:引入目的:使在较小的可用内存空间上运行较大的程序成使在较小的可用内存空间上运行较大的程序成为可能,该技术常与分区存储管理技术配合使用。为可能,该技术常与分区存储管理技术配合使用。优点:优点:优点:优点:缺点:缺点:缺点:缺点:2023/1/24计算机操作系统6.3.2 交换交换(Swapping)技术技术引
21、入目的:引入目的:引入目的:引入目的:解决由于内存不足而无法同时调入解决由于内存不足而无法同时调入多个作业的问题。多个作业的问题。1 1、多道程序环境下的对换、多道程序环境下的对换、多道程序环境下的对换、多道程序环境下的对换实现:实现:实现:实现:通过中级调度。通过中级调度。分类:分类:分类:分类:进程对换:进程对换:以整个进程为单位;以整个进程为单位;页页/段对换:虚存管理技术;段对换:虚存管理技术;2 2、对换空间管理、对换空间管理、对换空间管理、对换空间管理实现:实现:实现:实现:将外存分为文件区和对换区,并设置数据将外存分为文件区和对换区,并设置数据结构记录外存空间的使用情况,用于分配
22、结构记录外存空间的使用情况,用于分配/回收。回收。2023/1/24计算机操作系统6.4 分页存储管理方式分页存储管理方式基本思想:(基本思想:(基本思想:(基本思想:(例例)1 1、内存物理地址空间按内存物理地址空间按2n等分成页框等分成页框/架,并从架,并从0连连续编号:续编号:0,1,2,.。2 2、作业的逻辑地址空间按页框大小等分成页,并从作业的逻辑地址空间按页框大小等分成页,并从0连续编号:连续编号:0,1,2,.。3 3、作业逻辑地址表示:作业逻辑地址表示:v=(P,d)4 4、作业连续的页,可以分配不连续的页框;作业连续的页,可以分配不连续的页框;5 5、系统设置页表系统设置页表
23、PMT(Page Mapping Table)保存作业保存作业各页入内存后的情况;各页入内存后的情况;主要有:页号、页框号主要有:页号、页框号6 6、设置设置一个一个页表地址寄存器,保存页表地址寄存器,保存当前执行进程当前执行进程页页表的起始地址和页表的长度。表的起始地址和页表的长度。地址变换地址变换2023/1/24计算机操作系统分页存储管理方式示例分页存储管理方式示例.页框号页框号012345678910111201230 21 32 63 8 页号页号 页框号页框号作业作业AA0A1A2A3012作业作业B0 41 7 2 12 页号页号 页框号页框号B0B1B2OVEROVER2023
24、/1/24计算机操作系统6.4.2地址变换地址变换一、基本地址变换(直接地址映像)一、基本地址变换(直接地址映像)一、基本地址变换(直接地址映像)一、基本地址变换(直接地址映像)思想:思想:思想:思想:借助借助PMT表、页表寄存器完成作业表、页表寄存器完成作业的逻辑地址(虚地址)到内存物理地址的变的逻辑地址(虚地址)到内存物理地址的变换。换。例例问题:问题:问题:问题:从虚地址转换为物理地址,然后再完从虚地址转换为物理地址,然后再完成地址访问,共访问几次主存?效率为多少成地址访问,共访问几次主存?效率为多少?具有快表的地址变换具有快表的地址变换2023/1/24计算机操作系统分页基本地址变换示
25、例分页基本地址变换示例页框号页框号013456789101112A0A1A2A320 21 32 63 8 页号页号 页框号页框号作业作业A:V=(2,d)页表寄存器页表寄存器B L L(6,d)偏移偏移dOVER2023/1/24计算机操作系统二、具有快表的地址变换(相关地址映像)二、具有快表的地址变换(相关地址映像)思想:思想:思想:思想:增设若干具有并行查询能力的特殊高速缓冲寄增设若干具有并行查询能力的特殊高速缓冲寄存器(联想寄存器存器(联想寄存器/快表),保存当前执行进程的部分快表),保存当前执行进程的部分/全部页表表目。全部页表表目。例如:例如:例如:例如:IBM:变换后备存储器变换
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 存储 管理 课件

限制150内