操作系统原理与应用模块4ppt课件.ppt

上传人:春哥&#****71; 文档编号:87516608 上传时间:2023-04-16 格式:PPT 页数:66 大小:4.08MB
返回 下载 相关 举报
操作系统原理与应用模块4ppt课件.ppt_第1页
第1页 / 共66页
操作系统原理与应用模块4ppt课件.ppt_第2页
第2页 / 共66页
点击查看更多>>
资源描述

《操作系统原理与应用模块4ppt课件.ppt》由会员分享,可在线阅读,更多相关《操作系统原理与应用模块4ppt课件.ppt(66页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、目录目录存储管理存储管理 学习目标学习目标学习目标学习目标地址的静态重定位和动态重定位。地址的静态重定位和动态重定位。几种不同的存储管理方案。几种不同的存储管理方案。存储共享和存储保护。存储共享和存储保护。Windows和和Linux操作系统的存储器管理。操作系统的存储器管理。目录目录4.1 存储器管理基本知识存储器管理基本知识 内存空间的分配和回收内存空间的分配和回收 在多道程序设计环境下,往往有多个程序同时存放在内存中,在多道程序设计环境下,往往有多个程序同时存放在内存中,必须对内存进行有效地分配,使有限的内存空间能够容纳尽可能多必须对内存进行有效地分配,使有限的内存空间能够容纳尽可能多的

2、进程。内存分配的主要任务是采用一定的数据结构,按照一定的的进程。内存分配的主要任务是采用一定的数据结构,按照一定的算法为每一道程序分配内存空间,并记录内存空间的使用情况和作算法为每一道程序分配内存空间,并记录内存空间的使用情况和作业的分配情况。当程序运行结束后,其所占用的内存空间必须归还业的分配情况。当程序运行结束后,其所占用的内存空间必须归还给操作系统,即回收内存空间。给操作系统,即回收内存空间。4.1.1 存储器管理的功能存储器管理的功能 地址转换地址转换是指将用户程序的逻辑地址转换为运行时能由机器直接寻址的是指将用户程序的逻辑地址转换为运行时能由机器直接寻址的物理地址的过程,也称为地址映

3、射(即程序装入)。物理地址的过程,也称为地址映射(即程序装入)。目录目录4.1.1 存储器管理的功能存储器管理的功能 内存空间的共享与保护内存空间的共享与保护 在多道程序设计的系统中,内存中允许同时装入多个作业,这在多道程序设计的系统中,内存中允许同时装入多个作业,这些作业在执行时可能要调用共同的程序或数据,这就是内存的共些作业在执行时可能要调用共同的程序或数据,这就是内存的共享。享。在内存分配和共享时,为了保证进入内存的每个程序都在自在内存分配和共享时,为了保证进入内存的每个程序都在自己的空间内运行,互不干扰,必须解决各存储区内的信息如何保己的空间内运行,互不干扰,必须解决各存储区内的信息如

4、何保护的问题。存储保护的工作一般由硬件和软件配合实现。护的问题。存储保护的工作一般由硬件和软件配合实现。内存空间的扩充内存空间的扩充 由于内存空间有限,有的作业太大而无法调入内存运行,因此需由于内存空间有限,有的作业太大而无法调入内存运行,因此需要借助于覆盖、交换和虚拟存储技术,为用户提供比内存大的地址要借助于覆盖、交换和虚拟存储技术,为用户提供比内存大的地址空间,使用户编写程序时不必考虑内存的实际容量,使计算机系统空间,使用户编写程序时不必考虑内存的实际容量,使计算机系统似乎有一个比实际内存容量大得多的内存空间,从而保证大作业和似乎有一个比实际内存容量大得多的内存空间,从而保证大作业和多道作

5、业的正常运行。多道作业的正常运行。目录目录4.1.2 程序的装入程序的装入目录目录4.1.2 程序的装入程序的装入绝对装入方式绝对装入方式可重定位装入方式可重定位装入方式动态运行时装入方式动态运行时装入方式 由装入程序根据由装入程序根据装入模块中的地址装入模块中的地址将程序和数据装入将程序和数据装入内存。程序中所使内存。程序中所使用的绝对地址,既用的绝对地址,既可在编译或汇编时可在编译或汇编时给出,也可由程序给出,也可由程序员直接赋予。员直接赋予。又称静态重定位装又称静态重定位装入,装入程序根据入,装入程序根据内存当前的实际使内存当前的实际使用情况,将装入模用情况,将装入模块装入到内存适当块装

6、入到内存适当的地方,地址变换的地方,地址变换在装入时一次完成。在装入时一次完成。又称动态重定位装入,又称动态重定位装入,在把装入模块装入内在把装入模块装入内存后,并不立即把装存后,并不立即把装入模块中的相对地址入模块中的相对地址转换为绝对地址,而转换为绝对地址,而是把这种地址转换推是把这种地址转换推迟到程序真正要执行迟到程序真正要执行时才进行。时才进行。程序装入内存的方式程序装入内存的方式目录目录4.1.3 程序的链接程序的链接静态链接静态链接 静态链接是指事先进行静态链接是指事先进行链接,以后不再拆开。在链接,以后不再拆开。在将几个目标模块装配成一将几个目标模块装配成一个装入模块时,需解决以

7、个装入模块时,需解决以下两个问题:对相对地址下两个问题:对相对地址进行修改和变换外部调用进行修改和变换外部调用符号。符号。目录目录4.1.3 程序的链接程序的链接用用户户源程序源程序经编译经编译后所得到的目后所得到的目标标模模块块,是在装入内存,是在装入内存时时,边边装入装入边链边链接的,即在装入一个目接的,即在装入一个目标标模模块时块时,若,若发发生一个外部模生一个外部模块调块调用,用,将引起装入程序去将引起装入程序去寻寻找相找相应应的外部目的外部目标标模模块块,并将它装入内存,且修,并将它装入内存,且修改目改目标标模模块块中的相中的相对对地址。装入地址。装入时动态链时动态链接方式有以下接方

8、式有以下优优点:点:(1)便于修改和更新。)便于修改和更新。(2)便于)便于实现对实现对目目标标模模块块的共享。操作系的共享。操作系统统能能够够将一个目将一个目标标模模块块链链接到几个接到几个应应用模用模块块,即,即实现实现多个多个应应用程序用程序对该对该模模块块的共享。的共享。装入装入时动态链接接目录目录4.1.3 程序的链接程序的链接运运行行时动态链接接 运行运行时动态链时动态链接方式是接方式是对对装入装入时链时链接方式的一种改接方式的一种改进进。这这种种链链接方式是将接方式是将对对某些模某些模块块的的链链接推接推迟迟到到执执行行时时才才执执行,也就是行,也就是说说,在程序,在程序执执行行

9、过过程中,当程中,当发现发现一个被一个被调调用模用模块块尚未装入内存尚未装入内存时时,立即由操作系,立即由操作系统统去找到去找到该该模模块块并将其装入内存,把它并将其装入内存,把它链链接接到到调调用模用模块块上。凡在上。凡在执执行行过过程中未被用到的目程中未被用到的目标标模模块块,都不会,都不会被被调调入内存和被入内存和被链链接到装入模接到装入模块块上,上,这样这样不不仅仅可加快程序的装可加快程序的装入入过过程,而且可以程,而且可以节节省大量的内存空省大量的内存空间间。目录目录4.2 连续分配方式连续分配方式4.2.1 单一连续分配方式单一连续分配方式 采用单一连续分配方式时,内存被分成系统区

10、和用户区采用单一连续分配方式时,内存被分成系统区和用户区两个区域:系统区仅供操作系统使用,存放操作系统常驻内两个区域:系统区仅供操作系统使用,存放操作系统常驻内存的代码和数据,通常设置在内存的低段;用户区供用户使存的代码和数据,通常设置在内存的低段;用户区供用户使用,它是除系统区以外的全部内存区域,任何时刻内存储器用,它是除系统区以外的全部内存区域,任何时刻内存储器中最多只有一个作业存在。所以单一连续分配存储管理只适中最多只有一个作业存在。所以单一连续分配存储管理只适用于单用户单任务操作系统。单一连续分配主要采用静态分用于单用户单任务操作系统。单一连续分配主要采用静态分配方式,即作业一旦进入内

11、存,就要等到该作业执行完后才配方式,即作业一旦进入内存,就要等到该作业执行完后才释放内存。如果作业要求的内存空间大于用户区可用空间,释放内存。如果作业要求的内存空间大于用户区可用空间,系统会有出错信息使得该作业无法装入内存。系统会有出错信息使得该作业无法装入内存。目录目录4.2.1 单一连续分配单一连续分配单单一一连连续续分分配配算算法法示示意意图图目录目录4.2.2 固定分区分配固定分区分配固定分区管理的基本思想是把内存空间划分成若干个固定大小固定分区管理的基本思想是把内存空间划分成若干个固定大小的连续存储区,称为分区。在处理作业之前,存储器就已经被划的连续存储区,称为分区。在处理作业之前,

12、存储器就已经被划分成若干个分区,分区的大小和分区总数可以由操作员或操作系分成若干个分区,分区的大小和分区总数可以由操作员或操作系统在系统初始时建立,每个分区的大小可以相同,也可以不同。统在系统初始时建立,每个分区的大小可以相同,也可以不同。但是一旦划分好分区后,内存储器中分区的个数就固定了,每个但是一旦划分好分区后,内存储器中分区的个数就固定了,每个分区的大小固定不变,且每个分区只能容纳一个作业。这相当于分区的大小固定不变,且每个分区只能容纳一个作业。这相当于把物理上的一个大内存划分成了若干个逻辑上的小内存。把物理上的一个大内存划分成了若干个逻辑上的小内存。目录目录4.2.2 固定分区分配固定

13、分区分配 为了管理内存空间的分配和回收,系统必须设置一张为了管理内存空间的分配和回收,系统必须设置一张“内存分配表内存分配表”以记录各个分区的使用情况。其内容包括分以记录各个分区的使用情况。其内容包括分区号、分区大小、起始地址和状态(是否分配)。当要装区号、分区大小、起始地址和状态(是否分配)。当要装入程序时,首先在内存分配表中查找一个大小满足要求,入程序时,首先在内存分配表中查找一个大小满足要求,且状态为且状态为“未分配未分配”的分区。若能找到,则把第一个满足的分区。若能找到,则把第一个满足要求的分区分配给该程序,并把分区状态置为要求的分区分配给该程序,并把分区状态置为“已分配已分配”。目录

14、目录4.2.2 固定分区分配固定分区分配固固定定分分区区分分配配算算法法目录目录4.2.2 固定分区分配固定分区分配固定分区分配的主要优点是解决了多个作业共享内存空固定分区分配的主要优点是解决了多个作业共享内存空间的问题,支持多道程序设计,容易实现。间的问题,支持多道程序设计,容易实现。固定分区分配的主要缺点如下:固定分区分配的主要缺点如下:(1 1)不能充分利用内存空间。)不能充分利用内存空间。(2 2)由于分区大小事先已经决定,因此限制了可装入程序)由于分区大小事先已经决定,因此限制了可装入程序的大小。的大小。(3 3)分区数目固定,限制了可同时执行的作业数目。)分区数目固定,限制了可同时

15、执行的作业数目。目录目录4.2.3 动态分区分配动态分区分配采用动态分区管理的内存,系统启动时,整个内存除操作系采用动态分区管理的内存,系统启动时,整个内存除操作系统所占用的区域外,其余空间为一个完整的大空闲区。当有作统所占用的区域外,其余空间为一个完整的大空闲区。当有作业要装入内存运行时,系统从空闲区分配一块大小与作业要求业要装入内存运行时,系统从空闲区分配一块大小与作业要求空间相同的区域,该区域就变成了已分配区域,也就是建立了空间相同的区域,该区域就变成了已分配区域,也就是建立了一个分区。若还有作业要求装入,则继续将空闲分区分配给各一个分区。若还有作业要求装入,则继续将空闲分区分配给各个作

16、业,即在内存中建立了若干个与作业大小相同的分区。某个作业,即在内存中建立了若干个与作业大小相同的分区。某一作业运行结束后,系统回收其所占的内存空间。系统运行一一作业运行结束后,系统回收其所占的内存空间。系统运行一段时间后,随着一系列的内存分配和回收,使内存空间被划分段时间后,随着一系列的内存分配和回收,使内存空间被划分为已分配区域和空闲区域相间的若干个区域。为已分配区域和空闲区域相间的若干个区域。目录目录动态分区分配算法首次适应算法首次适应算法首次适应算法首次适应算法最佳适应算法最佳适应算法最佳适应算法最佳适应算法最坏适应算法最坏适应算法最坏适应算法最坏适应算法也叫最先适应算法。这种算法是在每

17、次分配分区也叫最先适应算法。这种算法是在每次分配分区时,操作系统顺序查找空闲分区表,把最先能够时,操作系统顺序查找空闲分区表,把最先能够满足要求的空闲分区进行分割,这个空闲分区的满足要求的空闲分区进行分割,这个空闲分区的一部分分配给作业,另一部分仍为空闲区。一部分分配给作业,另一部分仍为空闲区。为一个作业选择分区时总是寻找其大小最接近于作业为一个作业选择分区时总是寻找其大小最接近于作业要求的内存分区,即每次作业分配时,总是产生最小要求的内存分区,即每次作业分配时,总是产生最小的自由块。最佳适应算法要求空闲分区按长度从小到的自由块。最佳适应算法要求空闲分区按长度从小到大顺序链接,每次分配时,总是

18、从空闲分区的首部开大顺序链接,每次分配时,总是从空闲分区的首部开始查找,找到第一个满足要求的空闲分区进行分配,始查找,找到第一个满足要求的空闲分区进行分配,该空闲分区必然是大小最接近的、最佳的。该空闲分区必然是大小最接近的、最佳的。与最佳适应算法相反,空闲分区按长度从大到小顺序链与最佳适应算法相反,空闲分区按长度从大到小顺序链接,空闲分区表中的第一个空闲分区总是最大的。该算接,空闲分区表中的第一个空闲分区总是最大的。该算法在为作业分配内存空间时,总是寻找最大的空闲块,法在为作业分配内存空间时,总是寻找最大的空闲块,每次分配时,只要看第一个空闲分区是否能满足要求,每次分配时,只要看第一个空闲分区

19、是否能满足要求,若能,则分配,若不能,则不予分配。若能,则分配,若不能,则不予分配。目录目录4.2.3 动态分区分配动态分区分配 用户作业执行结束时,系统要回收已使用完毕的分区,将其记录用户作业执行结束时,系统要回收已使用完毕的分区,将其记录在空闲分区表中,记录时应考虑回收分区是否和系统中的空闲分区相在空闲分区表中,记录时应考虑回收分区是否和系统中的空闲分区相邻,若相邻,则把回收分区合并到相邻空闲分区中,否则把回收分区邻,若相邻,则把回收分区合并到相邻空闲分区中,否则把回收分区作为一个空闲分区记录在空闲分区表中作为一个空闲分区记录在空闲分区表中目录目录4.2.3 动态分区分配动态分区分配动态分

20、区分配的优点是分区大小不固定,管理方动态分区分配的优点是分区大小不固定,管理方动态分区分配的优点是分区大小不固定,管理方动态分区分配的优点是分区大小不固定,管理方式比较灵活;缺点是由于分区是动态划分的,系式比较灵活;缺点是由于分区是动态划分的,系式比较灵活;缺点是由于分区是动态划分的,系式比较灵活;缺点是由于分区是动态划分的,系统工作一段时间后,会产生大量的容量较小的空统工作一段时间后,会产生大量的容量较小的空统工作一段时间后,会产生大量的容量较小的空统工作一段时间后,会产生大量的容量较小的空闲分区,由于这些空闲分区太小以致于无法装入闲分区,由于这些空闲分区太小以致于无法装入闲分区,由于这些空

21、闲分区太小以致于无法装入闲分区,由于这些空闲分区太小以致于无法装入任何作业,因而降低了系统的效率。任何作业,因而降低了系统的效率。任何作业,因而降低了系统的效率。任何作业,因而降低了系统的效率。目录目录4.2.4 动态重定位分区分配动态重定位分区分配移动所有已分配的分区,使之成为一个连续的区域,从而把碎片移动所有已分配的分区,使之成为一个连续的区域,从而把碎片集中成一个较大的空闲分区,这个移动的过程称为集中成一个较大的空闲分区,这个移动的过程称为“紧凑紧凑”或或“聚拢聚拢”,为了保证移动后的作业正常执行,必须采用动态重定位,为了保证移动后的作业正常执行,必须采用动态重定位技术,即用新的起始地址

22、替换重定位寄存器中原来的地址。技术,即用新的起始地址替换重定位寄存器中原来的地址。基本思想基本思想紧凑的紧凑的时机时机动态重定位分区分配消除了碎片,提高了内存利用率,但需要动态重定位分区分配消除了碎片,提高了内存利用率,但需要硬件支持,从而增加了计算成本,降低了计算机的速度。硬件支持,从而增加了计算成本,降低了计算机的速度。优缺点优缺点紧凑的时机有两种选择:一个是立即聚拢,指当某个分区内的作紧凑的时机有两种选择:一个是立即聚拢,指当某个分区内的作业一完成,就立即聚拢;另一个是需要时聚拢,即当为某个作业业一完成,就立即聚拢;另一个是需要时聚拢,即当为某个作业分配内存空间时,内存中没有足够大的分区

23、容纳该作业,但各个分配内存空间时,内存中没有足够大的分区容纳该作业,但各个空闲分区容量总和能满足该作业需求,这时才进行聚拢。空闲分区容量总和能满足该作业需求,这时才进行聚拢。目录目录4.2.5 覆盖和对换覆盖和对换覆盖,就是一个进程覆盖,就是一个进程的若干个程序段,或的若干个程序段,或几个进程的某些部分几个进程的某些部分共享同一内存空间。共享同一内存空间。覆盖技术通过覆盖结覆盖技术通过覆盖结构来实现,覆盖结构构来实现,覆盖结构如图所示。如图所示。目录目录4.2.5 覆盖和对换覆盖和对换 对换是指将内存中暂时不运行的进程调出内存,存对换是指将内存中暂时不运行的进程调出内存,存放在外存的交换区中,

24、以便腾出足够的内存空间装入新放在外存的交换区中,以便腾出足够的内存空间装入新程序,或把已具备运行条件的进程调入内存并让其执行程序,或把已具备运行条件的进程调入内存并让其执行的一种内存扩充技术。与覆盖技术相比,对换不要求程的一种内存扩充技术。与覆盖技术相比,对换不要求程序员给出程序段之间的覆盖结构,主要是在作业或进程序员给出程序段之间的覆盖结构,主要是在作业或进程之间进行,而覆盖主要在同一作业或进程内进行。之间进行,而覆盖主要在同一作业或进程内进行。对换技术提高了内存空间的利用率,但在交换时需对换技术提高了内存空间的利用率,但在交换时需要花费大量的要花费大量的CPU时间,因此,应尽量减少交换的次

25、数时间,因此,应尽量减少交换的次数和信息量,在内存空间不够时再进行内外存的对换。和信息量,在内存空间不够时再进行内外存的对换。目录目录4.3 基本分页存储管方式基本分页存储管方式l基本分页存储管理方式,要求作业全部装入内存后才能运行。分页存储管理在装基本分页存储管理方式,要求作业全部装入内存后才能运行。分页存储管理在装入程序时将内存空间划分成等长的若干区域,每个区域称为一个物理页面,有时入程序时将内存空间划分成等长的若干区域,每个区域称为一个物理页面,有时也称内存块或块,内存的所有物理块从也称内存块或块,内存的所有物理块从0开始依次编号,称为物理页号或内存块开始依次编号,称为物理页号或内存块号

26、,每个物理页面内部也从号,每个物理页面内部也从0依次编址,称为块内地址。为使内存访问能精确定依次编址,称为块内地址。为使内存访问能精确定位,系统将用户程序的逻辑地址空间按照物理页面的大小也划分成若干个页面,位,系统将用户程序的逻辑地址空间按照物理页面的大小也划分成若干个页面,称为逻辑页面或页,每个页也是从称为逻辑页面或页,每个页也是从0开始依次编号,称为逻辑页号或相对页号,开始依次编号,称为逻辑页号或相对页号,页内也从页内也从0开始编址,称为页内地址。开始编址,称为页内地址。l经过页划分后,进程的虚地址由页号经过页划分后,进程的虚地址由页号P和页内地址和页内地址W组成,页号组成,页号P和页内地

27、址和页内地址W各各占多少位同页面大小和内存的最大容量有关。占多少位同页面大小和内存的最大容量有关。4.3.1 基本分页存储管理的基本思想基本分页存储管理的基本思想 目录目录4.3.1 基本分页存储管理的基本思想基本分页存储管理的基本思想 目录目录4.3.2 基本分页存储管理的地址转换机构基本分页存储管理的地址转换机构 页表寄存器页表寄存器 逻辑地址寄存器逻辑地址寄存器 物理地址寄存器物理地址寄存器 越界中断机构越界中断机构硬件支持硬件支持基本分页存储管理方式的一个关键问题是地址基本分页存储管理方式的一个关键问题是地址转换,地址转换的基本任务是把用户作业中的转换,地址转换的基本任务是把用户作业中

28、的逻辑地址转换为内存的物理地址。由逻辑地址逻辑地址转换为内存的物理地址。由逻辑地址计算出页号和页内地址的方法如下:计算出页号和页内地址的方法如下:页号页号=逻辑地址逻辑地址/页长页长 (商)(商)页内地址页内地址=逻辑地址逻辑地址 mod 页长页长 (余)(余)由块号计算物理地址的计算方法为:由块号计算物理地址的计算方法为:物理地址物理地址=块号块号块长块长+块内地址块内地址+用户区基址用户区基址目录目录4.3.2 基本分页存储管理的地址转换机构基本分页存储管理的地址转换机构目录目录4.3.2 基本分页存储管理的地址转换机构基本分页存储管理的地址转换机构目录目录4.3.3 基本分页存储管理的基

29、本分页存储管理的共享和保护共享和保护 基本分页存储管理方式允许多个作业共享程序和数据,页的共享可基本分页存储管理方式允许多个作业共享程序和数据,页的共享可以节省内存空间。分页存储管理能方便地实现多个作业共享程序和数以节省内存空间。分页存储管理能方便地实现多个作业共享程序和数据。共享的方法是使各自页表中的有关表目指向共享信息的内存块。据。共享的方法是使各自页表中的有关表目指向共享信息的内存块。页号页号块号块号页号页号块号块号0201141525263837目录目录4.3.3 基本分页存储管理的基本分页存储管理的共享和保护共享和保护 实现信息共享必须解决共享信息的保护问题。基本分页存储实现信息共享

30、必须解决共享信息的保护问题。基本分页存储管理中的存储信息保护可从两方面实现:一方面是在进行地址管理中的存储信息保护可从两方面实现:一方面是在进行地址转换时,产生的页号应小于页表长度,否则视为越界访问,这转换时,产生的页号应小于页表长度,否则视为越界访问,这类似于基址类似于基址限长存储保护;另一方面,扩充页表的功能,即限长存储保护;另一方面,扩充页表的功能,即在每个页表中增加存取控制位,对每一个存储块,可允许在每个页表中增加存取控制位,对每一个存储块,可允许4种保种保护方式(禁止任何操作、只能执行、只能读、能读写)护方式(禁止任何操作、只能执行、只能读、能读写)。当。当要访问某页时,先判断该页的

31、存取控制和存储保护信息是否允要访问某页时,先判断该页的存取控制和存储保护信息是否允许,只有在页表中所规定的存储标志符合时才允许访问,否则许,只有在页表中所规定的存储标志符合时才允许访问,否则发出保护性中断信号。发出保护性中断信号。目录目录4.4 基本分段存储管理方式基本分段存储管理方式4.4.1 基本分段存储管理的基本思想基本分段存储管理的基本思想 基本思想是将基本思想是将用户的作业按逻用户的作业按逻辑结构划分为若辑结构划分为若干相互独立的段,干相互独立的段,每个段都有自己每个段都有自己的名字,且每个的名字,且每个段都占据一段连段都占据一段连续的内存空间,续的内存空间,各个段之间可以各个段之间

32、可以不连续。不连续。目录目录4.4.1 基本分段存储管理的基本思想基本分段存储管理的基本思想 目录目录4.4.2 基本分段存储管理地址转换机构基本分段存储管理地址转换机构 硬件支持硬件支持为加快地址映射,也可以采用快表为加快地址映射,也可以采用快表技术,此时系统设置一组相连存储技术,此时系统设置一组相连存储器,用于保存正在运行进程段表的器,用于保存正在运行进程段表的活跃子表。活跃子表。整个系统需要设置一个段表寄存整个系统需要设置一个段表寄存器,用来存放当前执行进程的段器,用来存放当前执行进程的段表的起始地址和长度。表的起始地址和长度。CPU给出的有效地址应是分段的编给出的有效地址应是分段的编址

33、形式,应包括段号和段内地址。址形式,应包括段号和段内地址。目录目录4.4.2 基本分段存储管理地址转换机构基本分段存储管理地址转换机构目录目录4.4.3 基本分段存储管理的共享和保护基本分段存储管理的共享和保护段段的的共共享享目录目录4.4.3 基本分段存储管理的共享和保护基本分段存储管理的共享和保护段的保段的保护 地址越界保护:在地址越界保护:在地址转换过程中,限制地址转换过程中,限制段内地址超过段长,使段内地址超过段长,使保护作业不能访问不属保护作业不能访问不属于它的地址空间,因而于它的地址空间,因而就消除了一个用户作业就消除了一个用户作业破坏另一个用户作业的破坏另一个用户作业的危险危险。

34、存取权限保护:每存取权限保护:每个作业对访问的段都有个作业对访问的段都有规定的存取权限,只有规定的存取权限,只有符合存取权限才允许访符合存取权限才允许访问,因而防止了用户误问,因而防止了用户误操作对段的破坏。操作对段的破坏。目录目录4.5 段页式存储管理方式段页式存储管理方式4.5.1 分段和分页的区别分段和分页的区别 (1)页是信息的物理单位,分页是为了提高内存的利用率,与源程序)页是信息的物理单位,分页是为了提高内存的利用率,与源程序的逻辑结构无关,由系统自动完成,对用户是不可见的;段是信息的逻的逻辑结构无关,由系统自动完成,对用户是不可见的;段是信息的逻辑单位,分段是为了满足用户的需要,

35、段对用户是可见的。辑单位,分段是为了满足用户的需要,段对用户是可见的。(2)页的大小固定不变,由系统决定,页只能以页大小的整数倍地址)页的大小固定不变,由系统决定,页只能以页大小的整数倍地址开始;段的大小不固定,由用户编写的程序决定,段可以从内存的任何开始;段的大小不固定,由用户编写的程序决定,段可以从内存的任何地址开始。地址开始。(3)分页的逻辑地址空间是一维的,用一个记忆符就可以表示一个地)分页的逻辑地址空间是一维的,用一个记忆符就可以表示一个地址;分段的地址空间是二维的,为了标志一个地址,用户必须给出段号址;分段的地址空间是二维的,为了标志一个地址,用户必须给出段号和段内地址。和段内地址

36、。(4)页是信息的物理单位,页的共享和保护受到限制;段是信息的逻)页是信息的物理单位,页的共享和保护受到限制;段是信息的逻辑单位,段可以充分实现共享和保护。辑单位,段可以充分实现共享和保护。(5)段式管理与分区管理一样可能产生内存碎片,而页式管理则能很)段式管理与分区管理一样可能产生内存碎片,而页式管理则能很好地消除碎片。好地消除碎片。目录目录4.5.2 段页式存储管理方式介绍段页式存储管理方式介绍 将分段在地址空将分段在地址空间间管理上的管理上的优优点和分点和分页页在内存在内存空空间间管理上的管理上的优优点点结结合起来,作合起来,作业业中具有独立功能中具有独立功能的程序段和数据段仍然按照的程

37、序段和数据段仍然按照逻辑逻辑功能来划分,并且功能来划分,并且每一段具有一个段名,反映了段式管理的特征;每一段具有一个段名,反映了段式管理的特征;对对应应段中的程序和数据,按固定的大小将其划分成不段中的程序和数据,按固定的大小将其划分成不同的同的页页,这这和和页页式管理相同,体式管理相同,体现现了了页页式管理的特式管理的特征。征。这样这样,不,不仅仅保留了作保留了作业业的的结结构特征,而且提高构特征,而且提高了内存的利用率,每一段不再占用了内存的利用率,每一段不再占用连续连续的内存空的内存空间间,内存空内存空间间被划分被划分为为若干个若干个页页面。面。基本思想基本思想目录目录4.5.2 段页式存

38、储管理方式介绍段页式存储管理方式介绍目录目录4.5.2 段页式存储管理方式介绍段页式存储管理方式介绍目录目录4.6 虚拟存储器的基本知识虚拟存储器的基本知识4.6.1 虚拟存储器的引入虚拟存储器的引入 局部性原理局部性原理 (1)时间局限性。如果程序中的某条指令被执行,则不久)时间局限性。如果程序中的某条指令被执行,则不久以后该指令可能再次被执行;如果某数据被访问过,则不久以后该指令可能再次被执行;如果某数据被访问过,则不久以后该数据可能再次被访问。产生时间局限性的典型原因是以后该数据可能再次被访问。产生时间局限性的典型原因是由于在程序中经常使用循环语句和函数调用。由于在程序中经常使用循环语句

39、和函数调用。(2)空间局限性。如果程序访问了某个存储单元,在不久)空间局限性。如果程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问,即程序在一段时间内之后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址,可能集中在一定的范围之内,这是因为程序所访问的地址,可能集中在一定的范围之内,这是因为程序中只有少量的分支和过程调用,除此之外大部分都是顺序语中只有少量的分支和过程调用,除此之外大部分都是顺序语句。句。目录目录4.6.1 虚拟存储器的引入虚拟存储器的引入 虚虚拟存存储器器 虚拟存储器,是指具有请求调入功能和置换功能,把内存虚拟存储器,是指具有请求调入功能和置换功能,把

40、内存和外存结合起来使用,能从逻辑上对内存容量加以扩充的一和外存结合起来使用,能从逻辑上对内存容量加以扩充的一种存储器系统。其逻辑容量和内存大小无直接关系,主要由种存储器系统。其逻辑容量和内存大小无直接关系,主要由内存容量和外存容量之和所决定,其运行速度接近于内存速内存容量和外存容量之和所决定,其运行速度接近于内存速度,而成本却又接近于外存。可见,虚拟存储技术是一种性度,而成本却又接近于外存。可见,虚拟存储技术是一种性能非常优越的存储器管理技术,故被广泛地应用于大、能非常优越的存储器管理技术,故被广泛地应用于大、中、中、小型机和微型机中。小型机和微型机中。目录目录4.6.2 虚拟存储器的虚拟存储

41、器的实现方法实现方法(1 1)分页式虚拟存储管理。它是在分页式存储管理系)分页式虚拟存储管理。它是在分页式存储管理系统上增加了请求调页功能、页面置换功能所形成的页式虚统上增加了请求调页功能、页面置换功能所形成的页式虚拟存储管理系统。拟存储管理系统。(2 2)分段式虚拟存储管理。它是在分段式存储管理系)分段式虚拟存储管理。它是在分段式存储管理系统上增加了请求调段功能、分段置换功能所形成的段式虚统上增加了请求调段功能、分段置换功能所形成的段式虚拟存储管理系统。拟存储管理系统。目录目录4.6.3 4.6.3 虚拟存储器的特征虚拟存储器的特征离散性离散性离散性离散性多次性多次性多次性多次性对换性对换性

42、对换性对换性虚拟性虚拟性虚拟性虚拟性目录目录4.7 4.7 请求分页存储管理方式请求分页存储管理方式4.7.1 请求分页中的硬件支持请求分页中的硬件支持基本页式存储管理系统中页表只包含页号和物理块基本页式存储管理系统中页表只包含页号和物理块号两项。请求分页存储管理方式中,进程只有一部号两项。请求分页存储管理方式中,进程只有一部分页面在内存中,因此页表不但需要记录哪些页面分页面在内存中,因此页表不但需要记录哪些页面在内存,哪些页面在外存,而且还要记录页面的外在内存,哪些页面在外存,而且还要记录页面的外存位置,以便当某个需要的页面不在内存时,系统存位置,以便当某个需要的页面不在内存时,系统能立即找

43、到并把它装入内存。因此,请求分页存储能立即找到并把它装入内存。因此,请求分页存储管理方式需要对页表进行扩充,增加状态位、外存管理方式需要对页表进行扩充,增加状态位、外存地址、访问位和修改位的信息。地址、访问位和修改位的信息。页表页表目录目录4.7.1 请求分页中的硬件支持请请求求分分页页存存储储管管理理地地址址转转换换流流程程目录目录4.7.2 内存分配策略和分配算法内存分配策略和分配算法最小物理最小物理块数数的确定的确定物理物理块的分配策略的分配策略 在创建进程时,根据进程类型或程序员的要求,系统为每个在创建进程时,根据进程类型或程序员的要求,系统为每个进程在内存中分配一定数目的物理块,分配

44、给进程的物理块数至进程在内存中分配一定数目的物理块,分配给进程的物理块数至少要能保证进程正常运行。当系统为进程分配的物理块数小于此少要能保证进程正常运行。当系统为进程分配的物理块数小于此值时,进程将无法运行。进程应获得的最少物理块数与计算机的值时,进程将无法运行。进程应获得的最少物理块数与计算机的硬件结构有关,取决于指令的格式、功能和寻址方式硬件结构有关,取决于指令的格式、功能和寻址方式。固定分配策略固定分配策略 平均分配算法平均分配算法 按比例分配算法按比例分配算法 考虑优先权的分配算法考虑优先权的分配算法 可变分配策略可变分配策略目录目录页面置换策略页面置换策略当前进程执行过程中发现缺页,

45、且内存空间已满,由操作系统从内存中按照某种页面置换算法选择一页调出,该页可以是内存中任意进程的一页。固定分配局部置换固定分配局部置换基于作业的类型基于作业的类型或根据程序员、或根据程序员、系统管理员的建系统管理员的建议,为每个作业议,为每个作业分配一个固定页分配一个固定页数的内存空间,数的内存空间,在整个运行期间在整个运行期间不再改变。不再改变。采用这种策略时,采用这种策略时,先为系统中的每个先为系统中的每个作业分配一定数目作业分配一定数目的物理块,而操作的物理块,而操作系统自身也保持一系统自身也保持一个空闲物理块队列个空闲物理块队列为每个作业分配为每个作业分配一定数目的内存一定数目的内存空间

46、。但当作业空间。但当作业发生缺页时,只发生缺页时,只允许从该作业在允许从该作业在内存的页面中选内存的页面中选择一页换出,这择一页换出,这样就不会影响其样就不会影响其他作业的运行。他作业的运行。可变分配全局置换可变分配全局置换可变分配局部置换可变分配局部置换局局部部置置换换策策略略目录目录4.7.3 调页策略调页策略请求求调页策略策略预调页策略策略 是指需要访问程序和数据时,才把所需页面装入内存,即是指需要访问程序和数据时,才把所需页面装入内存,即按需调页,每次调入一页。根据局部性原理,一段时间后,缺按需调页,每次调入一页。根据局部性原理,一段时间后,缺页中断下降到很低的水平,程序进入相对稳定阶

47、段。这种调页页中断下降到很低的水平,程序进入相对稳定阶段。这种调页策略确保调入内存中的页面一定可以访问到,且实现简单,但策略确保调入内存中的页面一定可以访问到,且实现简单,但请求调页策略每次只调入一页,增加了磁盘请求调页策略每次只调入一页,增加了磁盘I/O次数。次数。是指系统预测进程要使用的页面,使用前预先调入内存,每是指系统预测进程要使用的页面,使用前预先调入内存,每次调入若干页面,而不仅仅是一页。一次调入多页能减少磁盘次调入若干页面,而不仅仅是一页。一次调入多页能减少磁盘I/O启动次数,节省寻道和搜索的时间;缺点是预调入的页面不启动次数,节省寻道和搜索的时间;缺点是预调入的页面不一定全部被

48、使用,且很难预测。一定全部被使用,且很难预测。目录目录4.7.4 请求分页存储管理方式的特点请求分页存储管理方式的特点 (1 1)要运行的作业可以不必全部装入内存就能运行。事)要运行的作业可以不必全部装入内存就能运行。事先要把作业分成大小相等的先要把作业分成大小相等的 页,把内存分成与页面大小相页,把内存分成与页面大小相等的块,先装入一些必须的页,运行时再装入所需要的页。等的块,先装入一些必须的页,运行时再装入所需要的页。(2 2)与全部装入内存的存储管理方式相比,可以节省内存)与全部装入内存的存储管理方式相比,可以节省内存空间,增加并发执行的作业个数,提高系统的利用率。空间,增加并发执行的作

49、业个数,提高系统的利用率。(3 3)由于运行时没有把作业全部装入内存,其余作业是在)由于运行时没有把作业全部装入内存,其余作业是在运行时利用中断和页面置换算法装入的,这样,增加了程序运行时利用中断和页面置换算法装入的,这样,增加了程序运行的时间,加大了系统的硬件开销。运行的时间,加大了系统的硬件开销。目录目录4.8 页面置换算法页面置换算法基本思想是选择将来永不再使用的或在将来最迟才会被访问的页基本思想是选择将来永不再使用的或在将来最迟才会被访问的页面进行置换。采用这种算法,淘汰掉的页将不会造成因需要访问面进行置换。采用这种算法,淘汰掉的页将不会造成因需要访问该页又需要把它调入的现象,可以保证

50、较低的缺页中断率,但该该页又需要把它调入的现象,可以保证较低的缺页中断率,但该算法需要依据以后各页的使用情况,这是无法预知的。算法需要依据以后各页的使用情况,这是无法预知的。最佳置换最佳置换算法算法先进先出先进先出置换算法置换算法基本思想是置换最早进入内存的页面,即置换在内存中驻留时间基本思想是置换最早进入内存的页面,即置换在内存中驻留时间最长的页面。因为最早进入的页面,其不再使用的可能性比最近最长的页面。因为最早进入的页面,其不再使用的可能性比最近调入的页面要大。调入的页面要大。基本思想是因无法预测将来,所以用基本思想是因无法预测将来,所以用“最近的过去最近的过去”作为作为“最近的将来最近的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁