41本章知识点-欢迎光临舟山广播电视大学_第1页
41本章知识点-欢迎光临舟山广播电视大学_第2页
41本章知识点-欢迎光临舟山广播电视大学_第3页
41本章知识点-欢迎光临舟山广播电视大学_第4页
41本章知识点-欢迎光临舟山广播电视大学_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.PAGE :.;第4章 存储管理 辅导与自测4.1 本章知识点存储器是计算机系统中的关键资源,对内存如何处置在很大程度上将影响整个系统的性能。存储管理即对内存的管理,存储管理目前仍是人们研讨操作系统的中心问题之一,以致操作系统的命名也往往取决于存储管理的战略。本章的主要知识点为:1本章的重要概念本章涉及到的概念比较多,主要有:内存、外存、逻辑地址/相对地址、物理地址/绝对地址、逻辑地址空间/地址空间、内存空间/物理空间/绝对空间、重定位、静态重定位、动态重定位、对换技术、碎片、紧缩、虚拟存储器、页面抖动。存储器作为计算机系统中最主要的组成部分,按照速度、容量和本钱划分一个层次构造,分别是存放

2、器、高速缓存、内存、磁盘和磁带。用户程序必需装入到内存才干运转。进程的地址空间不同于内存的物理空间。经过重定位可以把逻辑地址转变为内存的物理地址。重定位分为静态和动态两种方式,如今的计算机系统中都采用动态重定位方法。对换技术可以利用外存来处理内存缺乏的问题。如今Linux系统中还采用这种技术。2分区管理技术分区分配是为支持多道程序运转而设计的一种最简单的存储管理方式,可分为固定分区法和动态分区法。固定分区就是内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同。每个分区只可装入一个进程。动态分区是在进程要进入内存时才建立的,使其大小恰好顺应进程的大小。动态分区法常用的分

3、配战略有两种:最先顺应算法First-fit和最正确顺应算法Best-fit,前者空闲表按位置陈列,后者空闲表以空闲分区的大小为序。具有固定大小分配单元的系统,如MFT具有固定义务数的多道程序设计或分页系统,会产生内部碎片;而具有可变大小分配单元的系统,如MVT具有可变义务数的多道程序设计,会出现外部碎片。为了有效处理碎片问题,实现的方法是挪动某些已分配区的内容,使一切进程的分区紧挨在一同,而把空闲区留在另一端。这种技术称为紧缩。采用紧缩技术的分区方法称为可重定位分区法。动态重定位由硬件实现,包括基址存放器和限长存放器,对CPU生成的一切地址进展合法性检查,并映像到物理地址。3分页技术除了用紧

4、缩技术处理碎片问题,还可以运用分页技术,即允许程序的存储空间不一定延续,可以把一个进程分散地放在各个空闲的内存块中。分页存储管理的根本方法是:逻辑空间分页,内存空间分块,块与页的大小相等。页延续而块离散,用页号查页表,由硬件作转换。分页存储管理可以实现页面的共享,但是这样做并不实践,由于逻辑上相对完好的内容不见得存在于一个或几个完好的页面中段式存储管理更便于共享。此外,还可以在页表中设置存取控制字段,进展页面维护,制止非法访问。4虚拟存储管理虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,它运用户逻辑存储器与物理存储器分别,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。虚拟存储

5、技术允许把大的逻辑地址空间映射到较小的物理内存上,这样就提高了多道程序并发执行的程度,添加了CPU的利用率。虚拟存储器的特性包括:虚拟扩展、部分装入、离散分配和多次对换等。运用虚拟存储技术的页式管理为恳求分页式存储管理。它是根据实践程序执行的顺序,动态恳求存储块。并不是把一切页面都放入内存。对一个程序的第一次访问将产生缺页中断,转入操作系统进展相应处置。操作系统根据页表确定页面在外存上的位置,然后找一个空闲块,把该页面从外存上读到内存块中。同时,修正页表有关工程,以反映这种变化,产生缺页中断的那条指令被重新启动执行。这种方式允许一个程序即使它的整个存储映像并没有同时在内存中,也能正确运转。只需

6、缺页率足够低,其性能还是很好的。恳求分页可用来减少分配给一个进程的块数,这就允许更多进程同时执行,而且允许程序所需内存量超出可用内存总量。5常用页面置换算法当总内存的需求量超出实践内存量时,为释放内存块给新的页面,需求进展页面置换。有各种页面置换算法可供运用。先进先出法FIFO是最容易实现的,但性能不是很好。最正确置换法OPT需求未来知识,仅有实际价值。最近最少运用置换法LRU是OPT的近似算法,但实现时要有硬件的支持和软件开销。最近未运用置换法NUR是LRU的近似算法。置换算法的好坏直接影响系统的性能。好的页面置换算法可以适当降低页面改换频率减少缺页率,尽量防止系统“抖动。6Linux系统的

7、存储管理技术Linux采用对换和恳求分页存储管理技术,页面置换采用LRU算法。对换义务是由内核的对换守护进程kswapd完成,以保证系统中有足够的空闲内存页。Linux系统采用三级页表的方式,以节省内存资源。采用位图和链表两种方法来管理内存页。4.2 典型例题解析【例1】在目的程序装入内存时,一次性完成地址修正的方式是 . A静态重定位 B动态重定位 C静态衔接 D动态衔接答案 A分析 回答这道题需求清楚静态重定位和动态重定位的不同。静态重定位是在目的程序装入内存时,由装入程序对目的程序中的指令和数据的地址进展修正,即把程序的逻辑地址都改成实践的内存地址。对每个程序来说,这种地址变换只是在装入

8、时一次完成,在程序运转期间不再进展重定位。按照静态重定位方式,一个程序A装入内存时的情况就变成图4.1所示的样子。从图中可以看出,经过静态重定位,原100号单元中的指令放到内存5100号单元,该指令中的相对地址500相应变成5500。以后程序A执行时,CPU是从绝对地址5500号单元中取出数据12345,装入到存放器A中。静态重定位的优点是无须添加硬件地址转换机构,便于实现程序的静态衔接。在早期计算机系统中大多采用这种方案。它的主要缺陷是程序的存储空间只能是延续的一片区域,而且在重定位之后就不能再挪动,这不利于内存空间的有效运用;另外各个用户进程很难共享内存中的同一程序的副本。 程序A的地址空

9、间 程序A的内存空间图4.1 静态重定位表示图010050070070005000510055005700LOAD A 50012345LOAD A 550012345动态重定位是在程序执行期间每次访问内存之前进展重定位。这种变换是靠硬件地址变换机构实现的。通常采用一个重定位存放器,其中放有当前正在执行的程序在内存空间中的起始地址,而地址空间中的代码在装入过程中不发生变化。动态重定位的过程如图4.2所示。这时,操作对象的绝对地址就是重定位存放器中的内容操作对象的相对地址。0100500700700LOAD A 5001234505000510055005700LOAD A 5001234550

10、05000 重定位存放器 相对地址 程序A的地址空间 程序A的内存空间图4.2 动态重定位表示图动态重定位的主要优点是程序占用的内存空间动态可变,也不用延续存放在一处;比较容易实现几个进程对同一程序副本的共享运用。它的主要缺陷是需求附加的硬件支持,添加了机器本钱,而且实现存储管理的软件算法比较复杂。与静态重定位相比,动态重定位的优点突出。所以如今普通计算机系统中都采用动态重定位方法。【例2】动态分区分配按进程的需求量分配内存分区,所以 。A分区的长度是固定的 B分区的个数是确定的C分区的长度和个数都是确定的 D分区的长度不是预先固定的,分区的个数是不确定的答案 D分析 分区法分为固定分区和动态

11、分区。其中,固定分区内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同。动态分区在最初时,除了操作系统占用的分区外,全部内存对用户进程都是可用的。分区是在进程要进入内存时才建立的,按照进程的需求量划分内存分区,根本无法预测分区的长度和个数。此题的选项A、B、C是针对固定分区而言的,只需选项D是描画动态分区的。【例3】思索一个由8个页面,每页有1024个字节组成的逻辑空间,把它装入到有32个物理块的存储器中,问: 1逻辑地址需求多少二进制位表示? 2物理地址需求多少二进制位表示? 解 由于页面数为8=23,故需求3位二进制数表示。每页有1024个字节,1024=210,

12、于是页内地址需求10位二进制数表示。32个物理块,需求5位二进制数表示32=25。1页的逻辑地址由页号和页内地址组成,所以需求3+10=13位二进制数表示。2页的物理地址由块号和页内地址的拼接,所以需求5+10=15位二进制数表示。分析 在分页存储管理中,逻辑地址构造如以下图所示。页号p页内地址d 它由两个部分组成:前一部分表示该地址所在页面的页号p;后一部分表示页内地址页内位移d。页号的地址位数决议了页的多少,假设页号有20位,那么地址空间中最多可包容的页面数为220,即1MB个页面。页内地址位数确定了每页的大小,假设页内地址为12位,那么每页大小为212,即2KB。同理,物理地址中块号的地

13、址位数决议了块的多少,由于页式存储管理内存空间块的大小与页面大小一样,所以物理地址中块内地址与逻辑地址中的页内地址位数一样。【例4】假设在一分页存储管理系统中,某作业的页表如下所示。知页面大小为1024字节,试将逻辑地址1011,2148,4000,5012转化为相应的物理地址。页号块号01232316 解 此题中,为了描画方便,设页号为p,页内位移为d,那么:1对于逻辑地址1011,pint1011/10240,d1011 mod 10241011。查页表第0页在第2块,所以物理地址为1024210113059。2对于逻辑地址2148,pint2148/10242,d2148 mod 102

14、4100。查页表第2页在第1块,所以物理地址为10241001124。3对于逻辑地址4000,pint4000/10243,d4000 mod 1024928。查页表第3页在第6块,所以物理地址为102469287072。4对于逻辑地址5012,pint5012/10244,d5012 mod 1024916。因页号超越页表长度,该逻辑地址非法。 分析 页式存储管理的地址构造是一维的,即逻辑地址/物理地址只用一个数值即可表示。假设给定的逻辑地址A,页面的大小为L,那么页号p和页内地址d可按照下式求得:p=int (A/L) d=A mod L其中,int是取整函数取值的整数部分,mod是取余函

15、数取值的余数部分。图4.3显示了页式管理系统的地址转换机构。 逻辑地址 物理地址 页表 p 图4.3 页式存储管理中的地址转换机构CPUpdfd内存0pf 页表的作用是实现从页号到物理块号的地址映射。以逻辑地址的页号检索页表,得到该页的物理块号;同时将页内地址d直接送入物理地址存放器的块内地址字段中。这样,物理块号和块内地址拼接成了实践访问内存的地址,从而完成了从逻辑地址到物理地址的转换。【例5】判别:虚拟存储器实践上是一种设计技巧,使主存物理容量得到扩展。答案 错误。分析 根据程序执行时的互斥性和部分性两个特点,可以只将作业的一部分装入主存,其他的部分放在辅存如磁盘等上,当需求的时候,再从辅

16、存调入主存,这样用户编制程序时可以不用思索主存的实践容量,允许用户的逻辑地址空间大于主存的绝对地址空间,对用户来说,好似计算机具有一个容量很大的主存,这就是“虚拟存储器。虚拟存储器实践上是为扩展主存容量而采用的一种设计技巧。它与实践的主存物理容量无关,而是大小比主存大得多的假想空间,运用户觉得到所能运用的“主存空间非常大。【例6】与虚拟存储技术不能配合运用的是 。A分区管理 B页式存储管理C段式存储管理 D段页式存储管理答案 A分析 采用页式、段式、段页式管理可以实现虚拟存储器,但对固定分区、可变分区方式都不能实现虚拟存储器。我们知道实现虚拟存储技术的物质根底是二级存储构造主存与辅存和动态的地

17、址转换机构动态重定位。固定分区方式没有硬件地址转换机构。可变分区方式管理主存也不能实现虚拟存储。由于在这种管理方式下,每次必需将作业完好地调入主存,并要求延续存放,这不符合虚拟存储器的根本原理;另外,虽然可变分区方式有硬件地址转换机构,但它把绝对地址超出限定范围按出错处置,而不是产生“缺分区中断。虚拟存储器的特征可以归结为以下16个字:虚拟扩展并非真正扩展了主存容量、部分装入每个作业不是全部一次性地装入内存,而是分成假设干部分、离散分配装入内存的作业部分不用占有延续的内存空间,而是“见缝插针、多次对换作业运转时,程序和数据多次在主存和辅存之间对换。【例7】思索下述页面走向: 1,2,3,4,2

18、,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6当内存块数量分别为3时,试问FIFO、LRU、OPT这三种置换算法的缺页次数各是多少?解 运用FIFO算法,缺页次数是16;运用LRU算法,缺页次数是15;运用OPT算法,缺页次数是11。分析 一切内存块最初都是空的,所以第一次用到的页面都产生一次缺页。当内存块数量为3时: FIFO 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6块1 1 1 1 4 4 4 6 6 6 3 3 3 2 2 2 6块2 2 2 2 1 1 1 2 2 2 7 7 7 1 1 1块3 3 3 3 5 5 5 1 1 1 6

19、 6 6 3 3缺页 因此,FIFO算法发生缺页中断的次数为16。在FIFO算法中,先进入内存的页面被先换出。例如,当页6要调入时,内存的形状为4、1、5,调查页6之前调入的页面,分别为5、1、2、4、,可见4为最先进入内存的,本次应换出,然后把页6调入内存。 LRU 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6 块1 1 1 1 4 4 5 5 5 1 1 7 7 2 2 2 块2 2 2 2 2 2 6 6 6 3 3 3 3 3 3 块3 3 3 1 1 1 2 2 2 2 6 6 1 6缺页 因此,LRU算法发生缺页中断的次数为15。在LRU算法中,最

20、近最少运用的页面被先换出。例如,当页6要调入时,内存的形状为5、2、1,调查页6之前调入的页面,分别为5、1、2、,可见2为最近一段时间内运用最少的,本次应换出,然后把页6调入内存。 OPT 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6 块1 1 1 1 1 1 1 3 3 3 3 6 块2 2 2 2 2 2 2 7 2 2 2 块3 3 4 5 6 6 6 6 1 1缺页 因此,OPT算法发生缺页中断的次数为11。在OPT算法中,在最远的未来才被访问的页面被先换出。例如,当页6要调入时,内存的形状为1、2、5,调查页6后面要调入的页面,分别为2、1、2、,

21、可见5为最近一段时间内运用最少的,本次应换出,然后把页6调入内存。4.3 练习题一、选择题选择一个正确答案的代码填入括号中通常,用户编写的程序中所运用的地址是 。A逻辑地址 B物理地址 C绝对地址 D内存地址可由CPU调用执行的程序所对应的地址空间为 。A符号名空间 B虚拟地址空间 C物理空间 D逻辑地址空间把逻辑地址转变为内存物理地址的过程称作 。 A编译 B衔接 C运转 D重定位经过 ,目的程序可以不经过任何改动而装入物理内存单元。A静态重定位 B动态重定位C编译或汇编 D存储扩展动态重定位是在程序 期间,每次访问内存之前教学重定位。 A执行 B编译 C装入 D修正在分时系统中,可将进程不

22、需求或暂时不需求的部分移到外存,让出内存空间以调入其他所需数据,称为 。A覆盖技术 B对换技术 C虚拟技术 D物理扩展分区管理中进展分区的是主存的 。A系统区域 B用户区域 C程序区域 D整个区域分区管理要求对每一个作业都分配 的内存单元。A地址延续 B假设干地址不延续C假设干延续的页面 D假设干不延续的页面固定分区中各分区的大小是 。A一样的 B一样或者不同,但预先固定C根据进程要求确定 D随进程个数而定动态分区管理方式下,分配作业的主存空间根据 。一张分区阐明表一张分区阐明表和一张空闲分区表一张“位示图构成的分区阐明表由系统自定在存储管理中,为实现地址映射,硬件应提供两个存放器,一个是基址

23、存放器。另一个是 。A控制存放器 B程序形状字存放器C限长存放器 D通用存放器可重定位分区存储管理采用的地址转换公式是 。绝对地址=界限存放器值+逻辑地址绝对地址=下限存放器值+逻辑地址绝对地址=基址存放器值+逻辑地址绝对地址=块号块长+页内地址最先顺应分配算法把空闲区 按地址顺序从小到大登记在空闲区表中按地址顺序从大到小登记在空闲区表中按长度以递增顺序登记在空闲区表中按长度以递减顺序登记在空闲区表中最容易构成很多小碎片的可变分区算法是 。A最先顺应算法 B最正确顺应算法C位示图法 D以上都不是以下存储管理方案中,不采用动态重定位的是 。A页式管理 B可变分区 C固定分区 D段式管理在分页存储

24、管理系统中,从页号到物理块号的地址映射是经过 实现的。 A段表 B页表 CPCB DJCB在页式存储管理系统中,整个系统的页表个数是 个。A1个 B2个 C与页面数一样 D和装入主存的进程个数一样虚拟存储技术是 。A扩展内存空间的技术 B扩展相对地址空间的技术C扩展外存空间的技术 D扩展输入输出缓冲区的技术虚拟存储器的容量是由计算机的地址构造决议的,假设CPU有32位地址,那么它的虚拟地址空间为 。 A100K B640K C2G D4G在恳求分页虚拟存储管理中,假设所需页面不在内存中,那么会引起 。A输入输出中断 B时钟中断C越界中断 D缺页中断以下存储管理方案中,不要求将进程全部调入并且也不要求延续存储空间的是 。A固定分区 B可变分区C页式存储管理 D恳求分页式存储管理存储管理中,页面抖动是指 。运用机器时,屏幕闪烁的景象被调出的页面又立刻被调入

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论