【教学课件】第四章存储管理(上).ppt
《【教学课件】第四章存储管理(上).ppt》由会员分享,可在线阅读,更多相关《【教学课件】第四章存储管理(上).ppt(58页珍藏版)》请在三一办公上搜索。
1、1,第四章 存储管理(上),存储管理概述()内存管理的基本原理()Windows 的内存管理外存管理的基本原理Windows 的外存管理高速缓存管理的基本原理Windows 的高速缓存管理,2,存储体系存储管理的功能逻辑地址和物理地址重定位技术,存储管理概述,3,存储体系,高速缓存:Data CacheTLB(Translation Lookaside Buffer)内存:DRAM,SDRAM等;外存:软盘、硬盘、光盘、磁带等;,4,存储管理的功能,存储分配和回收:分配和回收算法及相应的数据结构。地址变换:可执行文件生成中的链接技术程序加载(装入)时的重定位技术进程运行时硬件和软件的地址变换技
2、术和机构存储共享和保护:代码和数据共享地址空间访问权限(读、写、执行)存储器扩充:存储器的逻辑组织和物理组织;由应用程序控制:覆盖;由OS控制:交换(整个进程空间),虚拟存储的请求调入和预调入(部分进程空间),5,逻辑地址和物理地址,逻辑地址(相对地址,虚地址):用户的程序经过汇编或编译后形成目标代码,目标代码通常采用相对地址的形式。其首地址为0,其余指令中的地址都相对于首地址来编址。不能用逻辑地址在内存中读取信息。物理地址(绝对地址,实地址):内存中存储单元的地址。物理地址可直接寻址。地址映射:将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址。当程序装入内存时,操作系统要为该程序分
3、配一个合适的内存空间,由于程序的逻辑地址与分配到内存物理地址不一致,而CPU执行指令时,是按物理地址进行的,所以要进行地址转换。,6,地址映射,BA=1000,3456,。,。,。,1200,物理地址空间,mov ax,data1,data1 3456,源程序,mov ax,200,3456,0,100,200,编译连接,逻辑地址空间,逻辑地址和物理地址,mov ax,1200,1000,1100,7,重定位技术,重定位:在可执行文件装入时需要解决可执行文件中地址(指令和数据)和内存地址的对应。由操作系统中的装入程序来完成。重定位方法:绝对装入可重定位装入动态装入,8,绝对装入(absolut
4、e loading),优点:装入过程简单。缺点:过于依赖于硬件结构,不适于多道程序系统。,在可执行文件中记录内存地址,装入时直接定位在上述(即文件中记录的地址)内存地址。,9,可重定位装入(relocatable loading),优点:不需硬件支持,可以装入有限多道程序缺点:一个程序通常需要占用连续的内存空间,程序装入内存后不能移动。不易实现共享。,在可执行文件中,列出各个需要重定位的地址单元和相对地址值。当用户程序被装入内存时,一次性实现逻辑地址到物理地址的转换,以后不再转换(一般在装入内存时由软件完成)。即:装入时根据所定位的内存地址去修改每个重定位地址项,添加相应偏移量。,10,动态装
5、入(dynamic run-time loading),优点:OS可以将一个程序分散存放于不连续的内存空间,可以移动程序,有利用实现共享。能够支持程序执行中产生的地址引用,如指针变量(而不仅是生成可执行文件时的地址引用)。缺点:需要硬件支持(通常是CPU),OS实现较复杂。它是虚拟存储的基础。,在可执行文件中记录虚拟内存地址,装入和执行时通过硬件地址变换机构,完成虚拟地址到实际内存地址的变换。,11,单一连续区存储管理分区存储管理页式和段式存储管理虚拟存储器,内存管理的基本原理,12,单一连续区存储管理,内存分为两个区域:系统区,用户区。应用程序装入到用户区,可使用用户区全部空间。最简单,适用
6、于单用户、单任务的OS。优点:易于管理。缺点:对要求内存空间少的程序,造成内存浪费;程序全部装入,很少使用的程序部分也占用内存。,用户程序,操作系统,0,xFFF,F,0 x0000,13,把内存分为一些大小相等或不等的分区(partition),每个进程占用一个或几个分区。操作系统占用其中一个分区。特点:适用于多道程序系统和分时系统支持多个程序并发执行难以进行内存分区的共享。问题:可能存在内碎片和外碎片。内碎片:占用分区之内未被利用的空间外碎片:占用分区之间难以利用的空闲分区(通常是小空闲分区)。,分区存储管理,14,固定分区(fixed partitioning),分区大小相等:只适合于多
7、个相同程序的并发执行(处理多个类型相同的对象)。分区大小不等:多个小分区、适量的中等分区、少量的大分区。根据程序的大小,分配当前空闲的、适当大小的分区。,把内存划分为若干个固定大小的连续分区。,15,固定分区(大小相同),固定分区(多种大小),16,动态分区(dynamic partitioning),动态创建分区:在装入程序时按其初始要求分配,或在其执行过程中通过系统调用进行分配或改变分区大小。优点:没有内碎片。缺点:有外碎片。,17,动态分区(dynamic partitioning),18,分区分配算法,寻找某个空闲分区,其大小需大于或等于程序的要求。若是大于要求,则将该分区分割成两个分
8、区,其中一个分区为要求的大小并标记为“占用”,而另一个分区为余下部分并标记为“空闲”。分区的先后次序通常是从内存低端到高端。,19,最先匹配法(first-fit):按分区的先后次序,从头查找,找到符合要求的第一个分区该算法的分配和释放的时间性能较好,较大的空闲分区可以被保留在内存高端。但随着低端分区不断划分而产生较多小分区,每次分配时查找时间开销会增大。下次匹配法(next-fit):按分区的先后次序,从上次分配的分区起查找(到最后分区时再回到开头),找到符合要求的第一个分区该算法的分配和释放的时间性能较好,使空闲分区分布得更均匀,但较大的空闲分区不易保留。最佳匹配法(best-fit):找
9、到其大小与要求相差最小的空闲分区从个别来看,外碎片较小,但从整体来看,会形成较多外碎片。较大的空闲分区可以被保留。最坏匹配法(worst-fit):找到最大的空闲分区基本不留下小空闲分区,但较大的空闲分区不被保留。,分区分配算法,20,页式和段式存储管理,简单页式简单段式段页式,页式和段式存储管理是通过引入进程的逻辑地址,把进程地址空间与实际存储位置分离,从而增加存储管理的灵活性。,21,简单页式(simple paging),1.简单页式管理的基本原理,将程序的逻辑地址空间和物理内存划分为固定大小的页或页面(page or page frame),程序加载时,分配其所需的所有页,这些页不必连
10、续。需要CPU的硬件支持。,22,23,优点:没有外碎片,每个内碎片不超过页大小。一个程序不必连续存放。便于改变程序占用空间的大小。即随着程序运行而动态生成的数据增多,地址空间可相应增长。缺点:程序全部装入内存。,24,2.简单页式管理的数据结构,进程页表:每个进程有一个页表,描述该进程占用的物理页面及逻辑排列顺序;逻辑页号(本进程的地址空间)物理页面号(实际内存空间);物理页面表:整个系统有一个物理页面表,描述物理内存空间的分配使用状况。数据结构:位示图,空闲页面链表;请求表:整个系统有一个请求表,描述系统内各个进程页表的位置和大小,用于地址转换,也可以结合到各进程的PCB里;,25,3.简
11、单页式管理的地址变换,指令所给出地址分为两部分:逻辑页号,页内偏移地址查进程页表,得物理页号物理地址为缩短查找时间,可以将页表从内存装入到快表(TLB,Translation Lookaside Buffer),按内容查找(associative mapping),即逻辑页号物理页号,逻辑地址,26,页式地址变换,27,简单段式(simple segmentation),1.简单段式管理的基本原理,将程序的地址空间划分为若干个段(segment),程序加载时,分配其所需的所有段(内存分区),这些段不必连续;物理内存的管理采用动态分区。,28,程序通过分段(segmentation)划分为多个模
12、块,如代码段、数据段、共享段。可以分别编写和编译可以针对不同类型的段采取不同的保护可以按段为单位来进行共享,包括通过动态链接进行代码共享优点:没有内碎片,外碎片可以通过内存紧缩来消除。便于改变进程占用空间的大小。缺点:进程全部装入内存。,29,B,0,S,A,0,N,Y,0,L,X,0,P,M,0,K,逻辑段号,0,1,2,3,4,进程,的地址空间,1000,3200,5000,6000,8000,P,K,S,L,N,主存,K,3200,P 1500,L 6000,N 8000,S 5000,长度,段地址,0,1,2,3,4,操作系统,30,2.简单段式管理的数据结构,进程段表:描述组成进程地
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 第四 存储 管理
链接地址:https://www.31ppt.com/p-5664987.html