![c++存储空间管理_第1页](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/aba1402e-660c-4ca2-b6d4-2052f502bb7a/aba1402e-660c-4ca2-b6d4-2052f502bb7a1.gif)
![c++存储空间管理_第2页](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/aba1402e-660c-4ca2-b6d4-2052f502bb7a/aba1402e-660c-4ca2-b6d4-2052f502bb7a2.gif)
![c++存储空间管理_第3页](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/aba1402e-660c-4ca2-b6d4-2052f502bb7a/aba1402e-660c-4ca2-b6d4-2052f502bb7a3.gif)
![c++存储空间管理_第4页](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/aba1402e-660c-4ca2-b6d4-2052f502bb7a/aba1402e-660c-4ca2-b6d4-2052f502bb7a4.gif)
![c++存储空间管理_第5页](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/aba1402e-660c-4ca2-b6d4-2052f502bb7a/aba1402e-660c-4ca2-b6d4-2052f502bb7a5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、存储空间管理存储空间管理东南大学电气工程学院东南大学电气工程学院School of Electrical Engineering, Southeast University定义存储器的分级结构:存储器的分级结构: 寄存器寄存器 高速缓冲存储器高速缓冲存储器(缓存缓存) 内存储器内存储器(简称内存、主存、物理存储器)(简称内存、主存、物理存储器) 处理机能直接访问的存储器。用来存放系统和用户处理机能直接访问的存储器。用来存放系统和用户的程序和数据,其特点是存取速度快,存储方式是以新的程序和数据,其特点是存取速度快,存储方式是以新换旧,断电信息丢失。换旧,断电信息丢失。 外存储器外存储器(简称外存
2、、辅助存储器)(简称外存、辅助存储器) 处理机不能直接访问的存储器。用来存放用户的各处理机不能直接访问的存储器。用来存放用户的各种信息,存取速度相对内存而言要慢得多,但它可用来种信息,存取速度相对内存而言要慢得多,但它可用来长期保存用户信息。长期保存用户信息。内存内存存储器管理存储器管理 外存外存文件管理文件管理School of Electrical Engineering, Southeast University 存储器管理的功能(系统区和用户区,针对用户区)存储器管理的功能(系统区和用户区,针对用户区) 存储空间的分配与管理;存储空间的分配与管理; 地址重定位地址重定位(逻辑地址与物理
3、地址的对应关系)(逻辑地址与物理地址的对应关系) 存储保护存储保护 存储空间扩充:存储空间扩充:虚拟存储器技术以及各种调度算法。虚拟存储器技术以及各种调度算法。存储器管理School of Electrical Engineering, Southeast University地址重定位 逻辑地址逻辑地址(相对地址,虚地址):用户的程序经过汇编或编译(相对地址,虚地址):用户的程序经过汇编或编译后形成目标代码,目标代码通常采用相对地址的形式。后形成目标代码,目标代码通常采用相对地址的形式。其首地址为其首地址为0 0,其余指令中的地址都相对于首地址来编址。,其余指令中的地址都相对于首地址来编址。
4、不能用逻辑地址在内存中读取信息。不能用逻辑地址在内存中读取信息。 物理地址物理地址(绝对地址,实地址):内存中存储单元的地址。物(绝对地址,实地址):内存中存储单元的地址。物理地址可直接寻址。理地址可直接寻址。 地址映射地址映射:将用户程序中的逻辑地址转换为运行时由机器直接:将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址。寻址的物理地址。School of Electrical Engineering, Southeast University逻辑地址、物理地址和地址映射逻辑地址、物理地址和地址映射地址映射地址映射 1100 Load A,1200 3456 。 。 。1200物理
5、地址空间物理地址空间Load A,data1data1 3456源程序源程序Load A,200 34560100200编译连接编译连接逻辑地址空间逻辑地址空间BA=1000地址重定位School of Electrical Engineering, Southeast University 程序在成为进程前的准备工作程序在成为进程前的准备工作形成源文件形成源文件( (符号地址符号地址) )形成目标模块形成目标模块( (模块内符号地址解析模块内符号地址解析) )由多个目标模块或程序库生成可执行文件由多个目标模块或程序库生成可执行文件( (模块间模块间符号地址解析符号地址解析) )构造构造PCB
6、PCB,形成进程,形成进程( (使用物理地址使用物理地址) )是指在程序装入主存时已经完成了逻辑地址是指在程序装入主存时已经完成了逻辑地址到物理地址的变换到物理地址的变换,在程序执行期间不会再发生变化在程序执行期间不会再发生变化.在程序运行期间完成逻辑地址到物理地址的在程序运行期间完成逻辑地址到物理地址的变换变换.地址重定位School of Electrical Engineering, Southeast University分区存储管理基本思想:基本思想:将主存储空间划分成若干个连续的存储区,称为将主存储空间划分成若干个连续的存储区,称为分区分区。每个分区只能存储一道程序,一个程序只能访
7、问其所。每个分区只能存储一道程序,一个程序只能访问其所在分区的存储单元。在分区的存储单元。适用于单道程序系统适用于单道程序系统 内存分为两个连续区域:系统内存分为两个连续区域:系统区,用户区。应用程序装入到区,用户区。应用程序装入到用户区,可使用用户区全部空用户区,可使用用户区全部空间。间。 最简单,适用于单道程序设计最简单,适用于单道程序设计的的OSOS。 优点优点:易于管理。:易于管理。 缺点缺点:对要求内存空间少的程:对要求内存空间少的程序,造成内存浪费(空闲存储序,造成内存浪费(空闲存储区)。区)。0H7FFFHFFFFFH操作系统操作系统用户程序区用户程序区08000H界限寄存器界限
8、寄存器中断矢量表中断矢量表空闲区空闲区单片机中的内存设置单片机中的内存设置School of Electrical Engineering, Southeast University 基本思想:基本思想:把内存分为一些大小相等或不等连续区域把内存分为一些大小相等或不等连续区域分区分区(partition),每个分区只能驻留一个程序每个分区只能驻留一个程序。操。操作系统占用其中一个分区。作系统占用其中一个分区。 特点:特点:适用于多道程序系统和分时系统适用于多道程序系统和分时系统 支持多个程序并发执行支持多个程序并发执行 问题:问题:存在存在碎片(小得难以使用的分区)问题,碎片(小得难以使用的分
9、区)问题,可能存可能存在在内部碎片内部碎片和和外部碎片外部碎片。 内部碎片:内部碎片:占用分区之内未被利用的空间占用分区之内未被利用的空间 外部碎片外部碎片:占用分区之间难以利用的空闲分区(通常:占用分区之间难以利用的空闲分区(通常是小空闲分区)。是小空闲分区)。分区存储管理School of Electrical Engineering, Southeast University8 M8 M8 M8 M8 MOperating SystemOperating System8 M12 M8 M8 M6 M4 M2 M固定分区固定分区(大小相同大小相同)固定分区固定分区(多种大小多种大小)分区存
10、储管理School of Electrical Engineering, Southeast University 优点:优点:简单易于实现,开销小。简单易于实现,开销小。 缺点:缺点: 内部碎片造成浪费内部碎片造成浪费 分区总数固定,限制了并发执行的程序数目。分区总数固定,限制了并发执行的程序数目。 采用的数据结构:采用的数据结构:分区表分区表(分区说明表分区说明表)记录分区记录分区的大小和使用情况的大小和使用情况Operating System空闲分区空闲分区 分区分区5作业作业C 分区分区4分区分区3分区分区2分区分区1空闲分区空闲分区 作业作业B 作业作业A 00000H08000H0
11、A000H12000H1A000H3A000H区区号号起始地址起始地址大小大小使用使用标志标志作业作业大小大小108000H8KY6K20A000H32KY24K312000H32KN41A000H128KY118K53A000H512KN内存分区说明表内存分区说明表分区存储管理School of Electrical Engineering, Southeast University 动态分区动态分区:在装入作业和处理过程中,按其要求的内存容:在装入作业和处理过程中,按其要求的内存容量以及当时的内存资源使用情况,将一块大小与所要求相量以及当时的内存资源使用情况,将一块大小与所要求相近的存储区
12、分配给作业。近的存储区分配给作业。 优点:优点:没有内部碎片。没有内部碎片。 缺点:缺点:有外部碎片。有外部碎片。分区存储管理School of Electrical Engineering, Southeast UniversityOperating System128 K896 KOperating SystemProcess 1320 K576 KOperating SystemProcess 1320 KProcess 2224 K352 K分区存储管理School of Electrical Engineering, Southeast UniversityOperating Sys
13、temProcess 1320 KProcess 2Process 3224 K288 K64 KOperating SystemProcess 1320 KProcess 3224 K288 K64 KOperating SystemProcess 1320 KProcess 3288 K64 KProcess 4128 K96 K分区存储管理Process2结束结束Process4运行运行School of Electrical Engineering, Southeast UniversityOperating System320 KProcess 3288 K64 KProcess 4
14、128 K96 KOperating SystemProcess 3288 K64 KProcess 4128 K96 KProcess 2224 k96 K分区存储管理Process1结束结束Process2再运行再运行School of Electrical Engineering, Southeast University 分区的数据结构分区的数据结构:分区表,或分区链表:分区表,或分区链表 可以只记录可以只记录空闲分区空闲分区,也可以同时记录空闲和占用分区,也可以同时记录空闲和占用分区 单一分区表中,单一分区表中,表项数目表项数目随着内存的分配和释放而动态随着内存的分配和释放而动态改变
15、,表长难以确定,分配回收分区时降低查找速度。改变,表长难以确定,分配回收分区时降低查找速度。 分区表可以划分为两个表:分区表可以划分为两个表:空闲分区表空闲分区表,使用分区表使用分区表。从而减小每个表长度。空闲分区表(一般常用链表结构从而减小每个表长度。空闲分区表(一般常用链表结构)中按不同分配算法相应对)中按不同分配算法相应对表项排序表项排序。 分区分配和释放算法分区分配和释放算法 最先匹配法最先匹配法(first-fit):可能造成碎片化问题:可能造成碎片化问题 最佳匹配法最佳匹配法(best-fit):每次要从碎片开始查找,回收算法复杂:每次要从碎片开始查找,回收算法复杂 最差匹配法最差
16、匹配法(worst-fit):分配速度快,碎片小:分配速度快,碎片小动态分区管理:动态分区管理:分区存储管理School of Electrical Engineering, Southeast University 引入:引入:其目标是在较小的可用内存中运行较大的程序。常用其目标是在较小的可用内存中运行较大的程序。常用于多道程序系统,与分区存储管理配合使用。于多道程序系统,与分区存储管理配合使用。 基本思想基本思想: :一个作业的若干程序段,或几个作业的某些部分共一个作业的若干程序段,或几个作业的某些部分共享同一存储区。享同一存储区。 优点优点:解决小主存容量与大作业之间的矛盾。:解决小主存
17、容量与大作业之间的矛盾。 缺点缺点:实现覆盖管理的系统开销较大。:实现覆盖管理的系统开销较大。覆盖和交换School of Electrical Engineering, Southeast UniversityA20KB50KC30KF30KD20KE40KResident20KOverlay 050KOverlay 140KTotal: 190KTotal: 110K注:注:另一种覆盖方法:另一种覆盖方法:(100K)A(20K)占一个分区:占一个分区:20K;B(50K)、D(20K)和和E(40K)共用一个分区:共用一个分区:50K;F(30K)和和C(30K)共用一个分区:共用一个分
18、区:30K;覆盖技术不存在调用关系的模块不必同时装入到内存,从而可以相互覆盖。不存在调用关系的模块不必同时装入到内存,从而可以相互覆盖。(即即不同时用的模不同时用的模块可共用一个分区块可共用一个分区)缺点:缺点:1、确定覆盖关系的复杂度、确定覆盖关系的复杂度2、牺牲时间换取空间、牺牲时间换取空间School of Electrical Engineering, Southeast University 引入:解决主存容量不足的矛盾。引入:解决主存容量不足的矛盾。多个程序并发执行,可以多个程序并发执行,可以将暂时不能执行的程序送到外存中,从而获得空闲内存空间将暂时不能执行的程序送到外存中,从而获
19、得空闲内存空间来装入新程序,或读入保存在外存中而目前到达就绪状态的来装入新程序,或读入保存在外存中而目前到达就绪状态的进程。交换单位为整个进程的地址空间。常用于多道程序系进程。交换单位为整个进程的地址空间。常用于多道程序系统或小型分时系统中,与分区存储管理配合使用。又称作统或小型分时系统中,与分区存储管理配合使用。又称作“对换对换”或或“滚进滚进/ /滚出滚出(roll-in/roll-out)(roll-in/roll-out)”。 基本思想基本思想: :暂停执行内存中的进程,将整个进程的地址空间暂停执行内存中的进程,将整个进程的地址空间保存到外存的交换区中(换出保存到外存的交换区中(换出s
20、wap outswap out),而将外存中由阻),而将外存中由阻塞变为就绪的进程的地址空间读入到内存中,并将该进程送塞变为就绪的进程的地址空间读入到内存中,并将该进程送到就绪队列(换入到就绪队列(换入swap inswap in)。)。交换School of Electrical Engineering, Southeast University 优点优点:增加并发运行的程序数目,并且给用户提供适当的:增加并发运行的程序数目,并且给用户提供适当的响应时间;编写程序时不影响程序结构。响应时间;编写程序时不影响程序结构。 缺点缺点: 对换入和换出的控制增加处理机开销;程序整个地址空间都对换入和换
21、出的控制增加处理机开销;程序整个地址空间都进行传送,没有考虑执行过程中地址访问的统计特性。进行传送,没有考虑执行过程中地址访问的统计特性。 考虑的问题:考虑的问题:换出进程的选择:一般换出短时间不会运行的进程换出进程的选择:一般换出短时间不会运行的进程交换时机的选择:内存不够后有危险时换出短时间不会交换时机的选择:内存不够后有危险时换出短时间不会运行的进程运行的进程交换空间的分配:可交换到外存的相同或不同对换区交换空间的分配:可交换到外存的相同或不同对换区换回内存位置的确定:动态重定位可以换回到不同的内换回内存位置的确定:动态重定位可以换回到不同的内存区,否则只能换回到相同的内存区存区,否则只
22、能换回到相同的内存区交换School of Electrical Engineering, Southeast University 交换技术与覆盖技术相比,交换技术的缺点是要花交换技术与覆盖技术相比,交换技术的缺点是要花费大量内、外存交换时间,所以外存中应该保留交费大量内、外存交换时间,所以外存中应该保留交换程序的副本换程序的副本 覆盖与交换技术都实现了大作业在小内存上运行。覆盖与交换技术都实现了大作业在小内存上运行。 覆盖于与换技术的区别:覆盖于与换技术的区别:覆盖由用户解决空间不足问题(即:覆盖只能覆盖由用户解决空间不足问题(即:覆盖只能在一个程序内部进行)在一个程序内部进行)交换由系统
23、解决空间不足问题(即:交换可以交换由系统解决空间不足问题(即:交换可以在任意程序间进行)在任意程序间进行)覆盖对程序结构有严格的限制覆盖对程序结构有严格的限制交换对程序结构没有限制交换对程序结构没有限制覆盖与交换的比较School of Electrical Engineering, Southeast University引入:引入:避开作业的连续性要求,将一个作业存放在不连续的避开作业的连续性要求,将一个作业存放在不连续的存储空间中,以很好地存储空间中,以很好地解决碎片解决碎片问题。问题。基本思想基本思想:系统把内存物理空间等分为若干大小相等、位置固系统把内存物理空间等分为若干大小相等、位
24、置固定的定的块(或帧)块(或帧)。将程序的逻辑地址空间划分为与块大小相。将程序的逻辑地址空间划分为与块大小相同的同的页或页面页或页面(page or page frame),程序加载时,分配其,程序加载时,分配其所需的所有块,这些块不必连续。所需的所有块,这些块不必连续。需要需要CPU的硬件支持。的硬件支持。页面式存储管理地址空间分成大小相同的部分地址空间分成大小相同的部分 页页存贮空间分成大小相同的部分存贮空间分成大小相同的部分 块块( (页帧页帧) )页大小块大小页大小块大小School of Electrical Engineering, Southeast University 页表页
25、表(PMT) :又称页面映象表,记录一个作业程序的记录一个作业程序的页号所对应的内存块号。页号所对应的内存块号。 需要需要CPU的硬件支持。的硬件支持。页号块号块号012238分配时页对分配时页对应块,但不应块,但不要求连续要求连续页表包括:页号,块号页面式存储管理School of Electrical Engineering, Southeast University页帧页帧1919Operating System作业作业2 2(页(页0 0) 00000H00000H0B000H0B000H0A800H0A800H0B800H0B800H0C000H0C000H0E000H0E000H作
26、业作业1 1(页(页0 0) 作业作业2 2(页(页2 2) 作业作业1 1(页(页1 1) 作业作业2 2(页(页1 1) 作业作业3 3(页(页0 0) 物理地址空间物理地址空间页帧页帧0 0页帧页帧2020页帧页帧2121页帧页帧2222页帧页帧2323页帧页帧2424页帧页帧2525页帧页帧2626页帧页帧2727页帧页帧28280C800H0C800H0D000H0D000H0D800H0D800H0 01 1逻辑地址空间逻辑地址空间作业作业1(4K)1(4K)0 01 1作业作业2(5K)2(5K)2 20 0作业作业3(1.8K)3(1.8K)0 01 1页表页表0 01 12
27、20 0页帧号页帧号222220202525212124242727页面式存储管理School of Electrical Engineering, Southeast University 地址变换:地址变换:指令所给出地址分为两部分:逻辑页号,页内偏指令所给出地址分为两部分:逻辑页号,页内偏移地址移地址查进程页表,得物理页号查进程页表,得物理页号物理地址物理地址 页面大小:页面大小:通常是几通常是几KB到几十到几十KB(取(取2的幂)。的幂)。 小小内部碎片小;大内部碎片小;大页表短,管理开销小,交换时对页表短,管理开销小,交换时对外存外存I/O效率高。效率高。页面式存储管理School
28、of Electrical Engineering, Southeast UniversityProgramPagingMain MemoryVirtual AddressRegisterPage TablePageFrameOffsetP#Frame #Page Table PtrPage #OffsetFrame #Offset+页式地址变换页面式存储管理School of Electrical Engineering, Southeast University引入:引入:向用户提供大容量存储器,把内存和外存统一考虑,向用户提供大容量存储器,把内存和外存统一考虑,外存作为存储信息的主要媒介
29、,内存作为处理机需要访问的外存作为存储信息的主要媒介,内存作为处理机需要访问的数据缓冲区。数据缓冲区。基本思想基本思想:运行一个作业程序时,并不要求把该作业的全部程运行一个作业程序时,并不要求把该作业的全部程序和数据都装入内存,可只把目前要执行的几页调入内存的序和数据都装入内存,可只把目前要执行的几页调入内存的空闲存储块,其余部分仍保存在外存,以后根据作业程序运空闲存储块,其余部分仍保存在外存,以后根据作业程序运行情况需要时再调入内存。行情况需要时再调入内存。请求式页面存储管理 需解决的问题:需解决的问题: 提供一种机制,检测访问的页是否在内存,若不在,为之提供一种机制,检测访问的页是否在内存
30、,若不在,为之分配一物理页,修改页表项,并将逻辑页调入到物理页。分配一物理页,修改页表项,并将逻辑页调入到物理页。 选择淘汰算法:选择淘汰算法:当外存上某页信息需调入内存而内存中又无空闲存储块时,则需按某种当外存上某页信息需调入内存而内存中又无空闲存储块时,则需按某种淘汰算法从内存中选择一页将其内容淘汰。淘汰算法从内存中选择一页将其内容淘汰。淘汰算法不合理将产生淘汰算法不合理将产生抖动现象抖动现象刚被调出的页马上又被要求调入。刚被调出的页马上又被要求调入。School of Electrical Engineering, Southeast University 存储保护的目的:存储保护的目的
31、: 保护保护系统程序区系统程序区不被用户侵犯(有意或无意的)不被用户侵犯(有意或无意的) 不允许用户程序读写不允许用户程序读写不属于自己地址空间的数据不属于自己地址空间的数据(系统(系统区地址空间,其他用户程序的地址空间)区地址空间,其他用户程序的地址空间)1. 存储保护存储保护由于存储保护由于存储保护检查检查是针对每个是针对每个存储访问操作存储访问操作进行的,必须由进行的,必须由相应的处理器相应的处理器硬件机构支持硬件机构支持。页面的共享与保护School of Electrical Engineering, Southeast University 存储保护类型存储保护类型 界限保护界限保
32、护:所有访问地址必须在上下界之间;每个进程都有:所有访问地址必须在上下界之间;每个进程都有自己独立的进程空间,如果一个进程在运行时所产生的地址自己独立的进程空间,如果一个进程在运行时所产生的地址在其地址空间之外,则发生在其地址空间之外,则发生地址越界地址越界。 访问方式保护访问方式保护:通过保护键匹配来判断:通过保护键匹配来判断存储访问方式存储访问方式是否合是否合法。对于允许多个进程共享的存储区域,每个进程都有自己法。对于允许多个进程共享的存储区域,每个进程都有自己的访问权限。如果一个进程对共享区域的访问违反了权限规的访问权限。如果一个进程对共享区域的访问违反了权限规定,则发生定,则发生操作越
33、权操作越权(即读写保护即读写保护)。对每个内存区域指定一个。对每个内存区域指定一个键值和若干禁止的访问方式,进程中也指定键值,如果访问键值和若干禁止的访问方式,进程中也指定键值,如果访问时键值不匹配而且是被禁止的访问方式,则出错;时键值不匹配而且是被禁止的访问方式,则出错; 环保护环保护:处理器状态分为多个环:处理器状态分为多个环(ring),分别具有不同的,分别具有不同的存储存储访问特权级别访问特权级别(privilege),通常是级别高的在内环,编号小(,通常是级别高的在内环,编号小(如如0环)级别最高;可访问同环或更低级别环的环)级别最高;可访问同环或更低级别环的数据数据;可调用;可调用
34、同环或更高级别环的同环或更高级别环的服务服务。页面的共享与保护School of Electrical Engineering, Southeast University 共享页面共享页面:在物理页面表中有引用计数。:在物理页面表中有引用计数。只能共享不被修改只能共享不被修改的页面的页面。这。这对用户应用是透明对用户应用是透明的,完全由操作系统控制,目的,完全由操作系统控制,目的在于的在于减少系统内的物理页面总数减少系统内的物理页面总数。 当共享页从内存中淘汰或重新装入内存时,共享该页的所当共享页从内存中淘汰或重新装入内存时,共享该页的所有作业进程的页表中的相应页表项必须被同时更新。有作业进程
35、的页表中的相应页表项必须被同时更新。 写时复制写时复制(copy on write):如果一个进程要改写共享页面:如果一个进程要改写共享页面,则先把该页面复制一份,让该进程访问复制后的页面,则先把该页面复制一份,让该进程访问复制后的页面,而让其他进程访问复制前的页面。而让其他进程访问复制前的页面。通过通过引用计数引用计数(reference count)来描述存储区的共享,引用计来描述存储区的共享,引用计数表示数表示共享它的进程的数目共享它的进程的数目:2.存储共享存储共享页面的共享与保护School of Electrical Engineering, Southeast Universit
36、y 段式存储管理基本思想:段式存储管理基本思想:将程序的地址空间划分为将程序的地址空间划分为若干个段若干个段(segment),程序加载时,程序加载时,分配其所需的所有段(内存分区),这些段分配其所需的所有段(内存分区),这些段不必连续不必连续;物理内;物理内存的管理采用存的管理采用动态分区动态分区。需要需要CPU的硬件支持的硬件支持。段式存储管理地址结构如下:地址结构如下:段号S段内位移量d通过通过段表实现逻辑地址到物理地址的映射段表实现逻辑地址到物理地址的映射段表结构:段表结构:该段在内存中的首地址;段长;访问权限,段该段在内存中的首地址;段长;访问权限,段存在位(该段是否在内存)存在位(
37、该段是否在内存)段表中各表项按段号从小到大顺序排列段表中各表项按段号从小到大顺序排列School of Electrical Engineering, Southeast UniversityB0SA0NY0LX0PM0K逻辑段号逻辑段号01234作业作业1 的地址空间的地址空间10003200500060008000PKSLN主存主存K 3200P 1500L 6000N 8000S 5000长度长度 段地址段地址01234操作系统操作系统段式存储管理School of Electrical Engineering, Southeast UniversityBase + dProgramSe
38、gmentationMain MemoryVirtual AddressRegisterSegment TableSegmentdS#Length BaseSeg Table PtrSeg #Offset = dSegment Table+段式存储管理School of Electrical Engineering, Southeast University 程序通过分段程序通过分段(segmentation)划分为多个模块,如代码段、划分为多个模块,如代码段、数据段、共享段。数据段、共享段。 可以分别可以分别编写和编译编写和编译 可以针对不同类型的段采取不同的可以针对不同类型的段采取不同的保
39、护保护 可以按段为单位来进行可以按段为单位来进行共享共享,包括通过动态链接进行代码,包括通过动态链接进行代码共享共享 优点:优点: 没有内部碎片,外部碎片可以通过内存拼接来消除。没有内部碎片,外部碎片可以通过内存拼接来消除。 便于改变进程占用空间的大小。便于改变进程占用空间的大小。 便于模块化,便于处理共享问题。便于模块化,便于处理共享问题。 缺点:缺点: 进程全部装入内存。进程全部装入内存。 段的最大长度受限于主存空间,开销大。段的最大长度受限于主存空间,开销大。段式存储管理School of Electrical Engineering, Southeast University页式管理和
40、段式管理的比较页式管理和段式管理的比较 分页是出于分页是出于系统管理系统管理的需要,分段是出于的需要,分段是出于用户应用用户应用的需要。的需要。 一条指令或一个操作数可能会跨越两个页的分界处,而一条指令或一个操作数可能会跨越两个页的分界处,而不会跨越两个段的分界处。不会跨越两个段的分界处。 页大小页大小是系统固定的,而是系统固定的,而段大小段大小则通常不固定。则通常不固定。 逻辑地址表示:逻辑地址表示: 分页是一维的,各个模块在链接时必须组织成同一个地分页是一维的,各个模块在链接时必须组织成同一个地址空间;址空间; 分段是二维的,各个模块在链接时可以每个段组织成一分段是二维的,各个模块在链接时
41、可以每个段组织成一个地址空间。个地址空间。 通常段比页大,因而段表比页表短,可以缩短查找时间,提通常段比页大,因而段表比页表短,可以缩短查找时间,提高访问速度。高访问速度。School of Electrical Engineering, Southeast University是页式和段式存储管理的结合。是页式和段式存储管理的结合。段页式存储管理为了获得分段在逻辑上的优点和分页在管理存储空间方面为了获得分段在逻辑上的优点和分页在管理存储空间方面的优点采用段页式存贮管理。的优点采用段页式存贮管理。1. 1. 将逻辑地址空间以段划分段式特征将逻辑地址空间以段划分段式特征2. 2. 将物理地址空间
42、以页划分页式特征将物理地址空间以页划分页式特征3. 3. 每一段的地址空间划分为页每一段的地址空间划分为页School of Electrical Engineering, Southeast University 存储管理的存储管理的分配单位分配单位是:段,页是:段,页 逻辑地址逻辑地址的组成:段号,页号,页内偏移地址。的组成:段号,页号,页内偏移地址。 将段内地址将段内地址d分为段内页号和页内偏移地址两部分。分为段内页号和页内偏移地址两部分。 地址变换地址变换:先查段表,再查该段的页表。缺段中断和缺:先查段表,再查该段的页表。缺段中断和缺页中断。页中断。地址结构:地址结构:SPWS:段号P
43、:页号W:页内偏移地址d段页式存储管理School of Electrical Engineering, Southeast University优点:优点:具有分段存储管理和分页存储管理的全部优点;具有分段存储管理和分页存储管理的全部优点;为用户提供了大量的虚拟存储空间,提高内存的利用率。为用户提供了大量的虚拟存储空间,提高内存的利用率。对大、中型计算机来说,是使用最广泛、最灵活的一种对大、中型计算机来说,是使用最广泛、最灵活的一种存储管理。存储管理。缺点:缺点:增加了硬件成本、系统复杂性和管理上的开销;增加了硬件成本、系统复杂性和管理上的开销;表格占用了大量的存储空间;表格占用了大量的存储
44、空间;仍存在内部碎片,存在系统颠簸的危险。仍存在内部碎片,存在系统颠簸的危险。段页式存储管理School of Electrical Engineering, Southeast University文件管理文件管理 文件管理的功能文件管理的功能 文件系统概念文件系统概念 文件结构与存取方法文件结构与存取方法 文件目录管理文件目录管理 文件存储空间管理文件存储空间管理 文件使用一般模型文件使用一般模型 文件共享、保护和保密文件共享、保护和保密School of Electrical Engineering, Southeast University文件管理的功能文件管理的功能 目标:目标: 使
45、用方便,便于共享,安全可靠使用方便,便于共享,安全可靠 功能:功能: 提供用户对文件操作的命令;实现文件的提供用户对文件操作的命令;实现文件的“按名存按名存取取”。 提供用户共享文件的机制;提供用户共享文件的机制; 提供文件的存取控制的机制,保障文件及文件系统的提供文件的存取控制的机制,保障文件及文件系统的安全性;安全性; 管理文件的存储介质管理文件的存储介质.School of Electrical Engineering, Southeast University文件系统概念文件系统概念 文件:逻辑上具有完整意义的数据或信息的集合。文件:逻辑上具有完整意义的数据或信息的集合。 文件名:一个
46、有限长度的字符串。文件名:一个有限长度的字符串。 文件名文件名 文件扩展名文件扩展名 按文件性质和用途分:按文件性质和用途分: 系统文件系统文件 库文件库文件 用户文件用户文件 按保护级别分:按保护级别分: 只读文件只读文件 读写文件读写文件 执行文件执行文件 不保护文件不保护文件School of Electrical Engineering, Southeast University1) 有效有效地分配文件存贮器的存贮空间地分配文件存贮器的存贮空间(物理介质物理介质)2) 提供提供一种组织数据的方法一种组织数据的方法(按名存取、逻辑结构、组按名存取、逻辑结构、组织数据织数据)3) 提供提供
47、合适的存取方法合适的存取方法(顺序存取、随机存取顺序存取、随机存取) 从系统的角度看从系统的角度看:文件系统是一个负责文件存储空间:文件系统是一个负责文件存储空间管理的机构。管理的机构。 从用户的角度看从用户的角度看:文件系统是用户在计算机上存储信:文件系统是用户在计算机上存储信息和使用信息的接口。息和使用信息的接口。文件系统概念文件系统概念School of Electrical Engineering, Southeast University文件结构与存取方法文件结构与存取方法逻辑文件:逻辑文件:从用户观点出发,所观察到的文件组织形式,是从用户观点出发,所观察到的文件组织形式,是用户可以
48、直接处理的数据及其结构,它独立于文件及其介质用户可以直接处理的数据及其结构,它独立于文件及其介质的物理特性,又称为文件组织。的物理特性,又称为文件组织。物理文件:物理文件:文件的存储结构,是文件在外存上存储组织形式,文件的存储结构,是文件在外存上存储组织形式,与存储介质的存储特性有关。与存储介质的存储特性有关。 逻辑结构:逻辑结构: 指用户思维中文件的结构。指用户思维中文件的结构。 物理结构:物理结构: 指文件在存储介质上的结构(或存储组织)。指文件在存储介质上的结构(或存储组织)。 文件的存储介质:磁盘(软盘、硬盘、光盘)、磁文件的存储介质:磁盘(软盘、硬盘、光盘)、磁带,磁鼓。带,磁鼓。
49、目前文件的物理结构主要是指磁盘上文件的结构。目前文件的物理结构主要是指磁盘上文件的结构。School of Electrical Engineering, Southeast University 记录式文件(有格式文件):记录式文件(有格式文件):是一种有结构的文件。由一个是一种有结构的文件。由一个或多个记录组成。或多个记录组成。 以逻辑记录为单位进行存取。以逻辑记录为单位进行存取。 定长记录文件:定长记录文件:文件中所有记录的长度相同。文件中所有记录的长度相同。 变长记录文件:变长记录文件:每个记录的长度可以不同每个记录的长度可以不同 无结构的流式文件(无格式文件):无结构的流式文件(无格
50、式文件):是有序字符的集合,文是有序字符的集合,文件的长度等于该文件包含的字符数。流式文件不分成记录,件的长度等于该文件包含的字符数。流式文件不分成记录,而是直接由一连串信息组成。而是直接由一连串信息组成。UNIX、DOS、WINDOWS系系统中的普通文件都是流式文件。统中的普通文件都是流式文件。文件结构与存取方法文件结构与存取方法School of Electrical Engineering, Southeast Universityl1记录1 l2记录2(a) 变长指示记录长度l1l2记录1 记录2ll(b) 定长记录文件记录文件变长:每个记录的头几个字节存储记录长度变长:每个记录的头几
51、个字节存储记录长度文件结构与存取方法文件结构与存取方法School of Electrical Engineering, Southeast University优点:优点: 在空间利用上比较省,没有额外的说明和控制信息。在空间利用上比较省,没有额外的说明和控制信息。对流式文件而言,它是按信息的个数或以特殊字对流式文件而言,它是按信息的个数或以特殊字符为界进行存取的。符为界进行存取的。流式文件流式文件文件结构与存取方法文件结构与存取方法School of Electrical Engineering, Southeast University文件的物理结构文件的物理结构 文件存储介质格式化后就
52、分成许多大小相等的单位文件存储介质格式化后就分成许多大小相等的单位存储块(物理盘块)。存储块(物理盘块)。 一般来说,每个物理块是一个磁盘的扇区,一般来说,每个物理块是一个磁盘的扇区,512字节。字节。 每个存储块有个编号,称为物理块号。每个存储块有个编号,称为物理块号。 文件的物理结构指文件在存储介质上结构,目前有三种文件的物理结构指文件在存储介质上结构,目前有三种基本结构基本结构: 连续结构连续结构 链接结构链接结构 索引结构索引结构School of Electrical Engineering, Southeast University连续结构连续结构 连续文件是一种连续结构的文件,对
53、每个文件要求存放在连续文件是一种连续结构的文件,对每个文件要求存放在存储介质上的连续的物理块中。存储介质上的连续的物理块中。 存储空间利用率不高。类似于存储管理中的分区,适用于存储空间利用率不高。类似于存储管理中的分区,适用于变化不大的顺序访问的文件。变化不大的顺序访问的文件。 在在UNIX系统中仍保留了连续文件结构。系统中仍保留了连续文件结构。 优点:优点:结构简单,实现容易,不需要额外的开销。结构简单,实现容易,不需要额外的开销。 缺点:缺点: 用户创建文件时要给出文件的大小;用户创建文件时要给出文件的大小; 不利于文件的动态增加和修改;不利于文件的动态增加和修改;School of El
54、ectrical Engineering, Southeast University链接结构链接结构 链接链接结构是按顺序由结构是按顺序由链接链接的块组成的。的块组成的。即每个物理块的最末一个字即每个物理块的最末一个字( (或第一个字或第一个字) )作为链接作为链接字,它指出后继块的物理地址。字,它指出后继块的物理地址。链首指针存放在该文件目录中。文件的结尾块的指链首指针存放在该文件目录中。文件的结尾块的指针为针为“NULLNULL”。 不要求连续存放。不要求连续存放。 对于记录式文件一块中可包含一个逻辑记录或多个逻辑对于记录式文件一块中可包含一个逻辑记录或多个逻辑记录,也可以若干物理块包含一
55、个逻辑记录。记录,也可以若干物理块包含一个逻辑记录。School of Electrical Engineering, Southeast University 存储空间利用率高;存储空间利用率高; 文件创建时用户不必指出文件的大小;文件创建时用户不必指出文件的大小; 文件动态扩充和修改容易。文件动态扩充和修改容易。 顺序存取效率高,随机存取效率太低,如果访问文件的最顺序存取效率高,随机存取效率太低,如果访问文件的最后的内容,实际上是要访问整个文件。后的内容,实际上是要访问整个文件。链接结构链接结构School of Electrical Engineering, Southeast Univ
56、ersity索引结构索引结构 非连续文件存放非连续文件存放 文件索引表:每个文件有一个索引表,表中包括:逻文件索引表:每个文件有一个索引表,表中包括:逻辑块号,物理块号。辑块号,物理块号。 访问文件时,根据文件的逻辑块号查文件索引表,找访问文件时,根据文件的逻辑块号查文件索引表,找到对应的物理块号,然后,进行访问。到对应的物理块号,然后,进行访问。 索引结构即保持了链式结构的优点,又克服了其缺点索引结构即保持了链式结构的优点,又克服了其缺点(既能顺序存取,也可随机存储)(既能顺序存取,也可随机存储) 索引结构是当代计算机操作系统中普遍采用的结构,索引结构是当代计算机操作系统中普遍采用的结构,如
57、如UNIXUNIX系统、系统、LINUXLINUX系统。系统。School of Electrical Engineering, Southeast University索引结构索引结构School of Electrical Engineering, Southeast University 顺序存取:顺序存取: 记录式文件中:记录式文件中:严格按照物理记录排列的顺序依次存取。严格按照物理记录排列的顺序依次存取。 无结构的流式文件:无结构的流式文件:从文件当前位置开始读写,然后根据从文件当前位置开始读写,然后根据当前位置的位移读写后继的信息。当前位置的位移读写后继的信息。读写文件存储器上的一
58、个物理块的方法。读写文件存储器上的一个物理块的方法。 直接存取(随机存取):直接存取(随机存取):按任意次序存取文件中的记录,而按任意次序存取文件中的记录,而不是顺序的不是顺序的 记录式文件中:记录式文件中:对定长记录的顺序文件,可直接存取;对对定长记录的顺序文件,可直接存取;对变长记录的顺序文件,需建立一张索引表,以指出每个记变长记录的顺序文件,需建立一张索引表,以指出每个记录的长度和起始位置,索引表按记录号顺序排列。录的长度和起始位置,索引表按记录号顺序排列。 无结构的流式文件:无结构的流式文件:事先把该文件的现行位置指针设置到事先把该文件的现行位置指针设置到欲读写信息的起始位置。欲读写信
59、息的起始位置。文件的存取方法文件的存取方法School of Electrical Engineering, Southeast Universityl1记录1 l2记录2(a) 变长指示记录长度l1l2记录1 记录2ll(b) 定长12iiiPPllPPii1记录文件记录文件变长:每个记录的头几个字节存储记录长度,这里为变长:每个记录的头几个字节存储记录长度,这里为2 2个字节个字节文件的存取方法文件的存取方法School of Electrical Engineering, Southeast University磁盘(磁鼓)磁盘(磁鼓)磁带磁带文件的物理文件的物理结构结构 连续连续链表链
60、表索引索引连续连续存取方法存取方法 顺序、直接顺序、直接顺序顺序顺序、直接顺序、直接顺序顺序文件结构、存储设备和存取方法之间的关系文件结构、存储设备和存取方法之间的关系文件的存取方法文件的存取方法School of Electrical Engineering, Southeast University文件目录管理文件目录管理 文件的组成文件的组成 一级目录一级目录 二级目录二级目录 多级目录多级目录School of Electrical Engineering, Southeast University文件的组成文件的组成 文件目录项文件目录项:又称为:又称为文件控制块(文件控制块(FCB
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育科研调查报告
- 构建学习任务群搭建语文与生活的桥梁-以四年级上册第三单元整体教学为例素材
- 2022年六年级语文上册专项五病句的辨析与修改
- 山东省聊城市东昌府区孟达外国语联考2023-2024学年七年级下学期期中生物试题(解析版)
- 三年级数学五千以内加减法题同步检测题
- 环境影响评价工程师之环评技术方法押题练习试题A卷含答案
- 2024新发传染病或流行病的防控知识试题及答案
- 合作合同协议书简约模板
- (2024)师德知识竞赛试题及答案
- 共同合租场地合同协议书
- 新教材-外研版高中英语选择性必修第二册全册教学课件(按单元排序-)
- 初中生心理健康课程开发
- 农业土壤改良行业相关项目诊断报告
- 氧气吸入操作评分标准(中心供氧)
- 疾病预防从戒烟开始课件模板
- 人教版三年级下册数学期末测试卷及参考答案(培优b卷)
- Unit 5 What day is it today?第一课时(教案)2023-2024学年英语四年级下册
- MES业务蓝图(合并版)
- 2024年湖南高速铁路职业技术学院单招职业适应性测试题库完整版
- 【高中语++文】《种树郭橐驼传》《石钟山记》联读课件+统编版高中语文选择性必修下册
- 代持法人股东免责协议书
评论
0/150
提交评论