第3章存储管理-1固定分区管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
固定分区管理,每个分区只允许装入一个作业,作业在 运行期间不移动位置,因此,系统对进程实行静态重定 位。
具体地,当决定将某一个分区分配给一个作业时,重定
位装入程序就把该作业程序指令中的相对地址与该分区
的起始地址相加,得到相应的绝对地址,完成对指令地
址的重定位以及对程序的装入。
第3章 存储管理
第3章 存储管理
上 页
下 页
退 出
3.1.2 地址的静态重定位
如果在程序运行之前,就为用户程序实行了地址重定位的 工作,那么称这种地址重定位为地址的“静态重定位”。 一般地,静态重定位工作是由操作系统中的重定位装入 程序来完成的。
第3章 存储管理
上 页
下 页
退 出
静态重定位有如下5个特点:
1)静态重定位是在程序运行之前完成地址重定位工作的: 2)静态重定位由软件实现,无须硬件提供支持: 3)实行静态重定位时,地址重定位工作是在程序装入时 被一次集中完成的;
址”或“物理地址”。
第3章 存储管理
上 页 下 页 退 出
目标程序是相对于“0”编址的。
同一个应用问题的多个目标程序连同系统库函数等一起, 经过链接装配,产生一个相对于“ 0”编址的、更大的 地址空间。这个地址空间被称为是用户程序的“相对地
址空间”,或“逻辑地址空间”,被称为“相对地址”
或“逻辑地址”。 这样的程序不能直接投入运行。
当某分区的使用 标志为“ 0”时, 表示该分区当前 是空闲的,可以 分配;
第3章 存储管理
上 页 下 页 退 出
当需要把一个作业装入内存时,按照分区号扫视分区分
配表,找到使用标志为“ 0”的分区,随后把要装入内
存的作业尺寸与该分区的长度进行比较。 若能够容纳该作业,并符合所采取的分配策略,那么就
退 出
2.分区的分配与释放
如果采用的是多个队列的管理方式,那么任何 一个分区空闲时,只要关于它的队列非空,那 么就把该分区分配给队列的第一个作业使用; 一旦作业运行完毕,就收回该分区,进行下一 次分配。分区的分配和释放很容易完成。
第3章 存储管理
上 页
下 页
退 出
如果采用的是一个队列的管理方式,那么在任何一个分区 被释放时,就要根据某种方案从该队列中挑选出一个作业 装入运行。可以有如下的几种挑选方案: 1)在队列中挑选出第一个可容纳的作业进入。这种方案 的优点是实现简单,选择效率高。
3)对进入分区的作业程序,实行的是静态重定位。在分 区内的程序不能随意移动。
第3章 存储管理
上 页 下 页 退 出
固定分区存储管理的缺点如下 1)进入分区的作业尺寸,不见得与分区的大小相 吻合,势必产生内部碎片,引起内存资源的浪 费。 2)如果到达作业的尺寸比任何一个分区的长度都 大,那么它就无法得到运行。
把它分配给这个作业,同时修改分区分配表中该分区表
目的使用标志为非0(即把该作业的名字填入),完成 分区分配; 当一个作业运行结束时,只需根据作业名,在分区分配 表里找到它所使用的表目,然后将该表目的使用标志改 为“ 0”,从而完成该分区的释放工作。
第3章 存储管理
上 页 下 页 退 出
3.地址重定位与存储保护
作业A、B、C排在第1分区的队列上,说明 它们对内存的需求都不超过8KB; 作业D排在第2分区的队列上, 表明它对内存的需求大于 8KB小于32KB; 作业E和F排在第4分区的队 列上,表明它们对内存的需 求大于64KB小于132KB。
缺点 :可能会产生有的分区队列忙碌、 有的分区队列闲置的情形。
第3章 存储管理
第3章 存储管理
上 页 下 页 退 出
早期计算机在一定的条件下,可以采用所谓的
“覆盖”技术,使得大作业在小内存上得以运
行。
第3章 存储管理
上 页
下 页
退 出
所谓
“覆盖”,是早期为程序设计人员提供
的一种扩充内存的技术,其中心思想是允许一
个作业一的若干个程序段使用同一个存储区,
被共用的存储区被称为“覆盖区”。不过,这
下 页
退 出
第3章 存储管理
上 页
下 页
退 出
两个重要概念:
“地址重定位”:用户程序是相对地址,从0开始。不
能反映真实的存储位置。必须解决地址的重定位问题。
“虚拟存储”:内存的容量无法满足实际的需要,必须 打破“程序只有全部在内存,才能得以运行”的限制。 为此,需要通过“虚拟存储”这一技术手段。
第3章 存储管理
上 页 下 页 退 出
固定分区存储管Fra Baidu bibliotek的特点如下:
1)它是最简单的、具有“多道”色彩的存储管理方案。 对比单一连续分区,它提高了内存资源的利用率。另外, 由于多道,几个作业共亭系统内的其他资源,因此也提
高了其他资源的利用率。
2)当把一个分区分配给某个作业时,该作业的程序将一
次性地全部被装入到分配给它的连续分区里。
第3章 存储管理
上 页
下 页
退 出
3 .1 .4
固定分区存储管理
所谓“固定分区”的存储管理:
即是指预先把内存储器中可供分配的用户区划分 成若干个连续的分区,每个分区的尺寸可以相 同,也可以不同。 划分后,内存储器中分区的个数以及每个分区的 尺寸保持不变。每个分区中只允许装入一个作 业运行。
第3章 存储管理
第3章 存储管理
上 页
下 页
退 出
3.1
3.1.1
固定分区存储管理
地址重定位
内存储器由存储单元组成。一个存储单元可存放若干个
二进制的位bit,8个二进制位被称作一个字节(Byte)。 内存中的存储单元按一定顺序进行编号,每个单元所对 应的编号,称为该单元的单元地址。 一个单元的单元地址具有唯一性,存储在单元里的内容 则是可以改变的。 在操作系统中,常把单元地址称为内存储器的“绝对地
第3章 存储管理
上 页
下 页
退 出
单一连续分区存储管理的特点:
1)系统总是把整个用户区分配给一个用户使用。 2)内存用户区又被分为“使用区”和“空闲区”两部分。 见图 3-2(b)。在操作系统中,把分配给了用户、 但又未使用的区域称为“内部碎片”。内部碎片的存在
是对内存资源的一种浪费。
3)由于任何时刻内存储器的用户区中只有一个作业运行, 因此这种系统只适用于单用户(或单道)的情况。 4)进入内存的作业,独享系统中的所有资源。 5)作业程序进入用户区后,没有移动的必要。存储分配
缺点是可能会因为一个 小作业的进入而浪费掉 该分区的大部分存储空 间,存储利用率不高。
第3章 存储管理
上 页 下 页 退 出
(2)在整个队列中进行搜索,找到这个分区能够
容纳的最大的那个作业,让它进入运行。这种方 案的优点是由于在每个分配出去的分区中产生的 内部碎片尽可能的小,因此存储空间的利用率高。
缺点:选择效率低 下,且对小作业明 显表示歧视。
第3章 存储管理
上 页
下 页
退 出
3)在系统中至少保留一个小的分区,以避免因 运行小作业而被迫分配大分区的情形发生。
为了具体管理内存中的各个分区,操作系统的做法是设
置一张名为“分区分配表”的表格,用它记录各分区的
信息以及当前的使用情况。表3.l即为一种分区配表。
第3章 存储管理
上 页
下 页
退 出
作业:【习题】
教材P79:一、二、三、四、
第3章 存储管理
上 页
下 页
退 出
上 页 下 页 退 出
1.对作业的组织
一般地,固定分区存储管理总是把内存用户区划分成几个 大小不等的连续分区。由于分区尺寸在划分后保持不变, 因此系统可以为每一个分区设置一个后备作业队列,形 成多队列的管理方式。
第3章 存储管理
上 页
下 页
退 出
一个作业到达时,总是进入到“能容纳该作业的 最小分区”的那个后备作业队列中去排队。
第3章 存储管理
上 页
下 页
退 出
举例:假定用户程序A的相对地址空间为0~3KB,在该程序 中地址为3000的地方,有一条调用子程序(其人口地址为 100)的指令:“call 100”,如图 3-l(a)所示。
第3章 存储管理
上 页
下 页
退 出
在操作系统中,把用户程序指令中的相对地址变换成为所在 绝对地址空间中的绝对地址的过程,称为“地址重定位”。 即把指令“call 100”中的100变换成20580,就是地址重定 位,如图3-1(C)所示。
上 页 下 页 退 出
作业A、B、C都在等待着 进入第1分区。按原则,它 们不能进入目前空闲的第3 分区,虽然第3分区的大小 完全能够容纳下它们。
作为一种改进,可以采用多个分区 只设置一个后备作业队列的办法。 当某个分区空闲时,统一都到这一 个队列里去挑选作业,装入运行。
第3章 存储管理
上 页
下 页
内存储器可被CPU直接访问。
辅助存储器与CPU之间只能够在输入输出控制系统的管理
下,进行信息交换。 因此内存储器是计算机系统中极为重要的资源。 在操作系统中,把管理内存储器的部分称为“存储管理”。 合理地使用内存,会在很大程度上影响到整个计算机系统
的性能的提高。
第3章 存储管理
上 页
种技术并不能彻底解决大作业与小内存的矛盾。
为了让单一连续分区存储管理能具有“多道”
的效果,在一定条件下,可以采用所谓的“对
换”技术来实现。
第3章 存储管理
上 页 下 页 退 出
“对换”的中心思想:
从宏观上看,系统中同时就有几个作业处在运行之中。单
一连续分区存储管理实行的是静态重定位,所以,“换 出”的作业程序再被“换入”时,仍应该装到与它“换 出”前相同的存储区中去,以保证能够正确地继续运行。
4)绝对地址空间里的目标程序与原相对地址空间里的目
标程序面目已不相同,因为前者进行了地址调整; 5)实施静态重定位后,若用户程序在内存中做了移动, 那么程序指令中的地址就不再反映所在的存储位置了, 除非重新进行地址重定位。
第3章 存储管理
上 页 下 页 退 出
3.1.3 单一连续分区存储管理
早期计算机而言,每次只有一个用户使用计算机,其存储 管理都采用单一连续分区的分配策略。 单一连续分区分配策略的基本思想:把内存储器分为两个 分区。一个分区固定分配给操作系统使用;另一个分配 给用户使用,称为“用户区”。如图3-2(a)所示。
第3章 存储管理-1固定分区管理
【学习目标
掌握固定分区存储管理的基本思想。
掌握地址重定位的概念。 掌握固定分区的优、缺点。 【学习重点、难点 1)地址的静态重定位和动态重定位; 2)不同的存储管理方案; 3)存储共享和存储保护; 4)存储扩充和虚拟存储器。
第3章 存储管理
上 页 下 页 退 出
存储器分为两种:内存储器和辅助存储器
上 页
下 页
退 出
在固定分区存储管理中,不仅要防止用户程序对操作系统
形成的侵扰,也要防止用户程序之间形成的侵扰。因此必 须在CPU中设置一对专用的寄存器,用于存储保护,如图3 -6所示。
•当某个作业进程运行时, 就把该作业分区的低边界 地址装入低界限寄存器, 把高边界地址装入高界限 寄存器。 •作业运行时,硬件会自动 检测指令中的地址,如果 超出a或b,那么就产生出 错中断,从而限定作业工 只在自己的区域里运行。
策略对用户程序实行静态重定位。
第3章 存储管理
上 页 下 页 退 出
6)实行静态重定位,同样要考虑如何阻止对操作系统的
侵扰,这就是所谓的“存储保护”问题。在CPU中设置 一个用于存储保护的专用寄存器——“界限寄存器”, 如图3-2(C)所示。
第3章 存储管理
上 页
下 页
退 出
单一连续分区存储管理有如下缺点: 1)由于每次只能有一个作业进入内存,故不适用 于多道程序设计,系统的工作效率不高,资源 利用率低下。 2)内存资源浪费。 3)若用户作业的相对地址空间比用户区大,那么 该作业就无法运行。即大作业无法在小内存上 运行。
具体地,当决定将某一个分区分配给一个作业时,重定
位装入程序就把该作业程序指令中的相对地址与该分区
的起始地址相加,得到相应的绝对地址,完成对指令地
址的重定位以及对程序的装入。
第3章 存储管理
第3章 存储管理
上 页
下 页
退 出
3.1.2 地址的静态重定位
如果在程序运行之前,就为用户程序实行了地址重定位的 工作,那么称这种地址重定位为地址的“静态重定位”。 一般地,静态重定位工作是由操作系统中的重定位装入 程序来完成的。
第3章 存储管理
上 页
下 页
退 出
静态重定位有如下5个特点:
1)静态重定位是在程序运行之前完成地址重定位工作的: 2)静态重定位由软件实现,无须硬件提供支持: 3)实行静态重定位时,地址重定位工作是在程序装入时 被一次集中完成的;
址”或“物理地址”。
第3章 存储管理
上 页 下 页 退 出
目标程序是相对于“0”编址的。
同一个应用问题的多个目标程序连同系统库函数等一起, 经过链接装配,产生一个相对于“ 0”编址的、更大的 地址空间。这个地址空间被称为是用户程序的“相对地
址空间”,或“逻辑地址空间”,被称为“相对地址”
或“逻辑地址”。 这样的程序不能直接投入运行。
当某分区的使用 标志为“ 0”时, 表示该分区当前 是空闲的,可以 分配;
第3章 存储管理
上 页 下 页 退 出
当需要把一个作业装入内存时,按照分区号扫视分区分
配表,找到使用标志为“ 0”的分区,随后把要装入内
存的作业尺寸与该分区的长度进行比较。 若能够容纳该作业,并符合所采取的分配策略,那么就
退 出
2.分区的分配与释放
如果采用的是多个队列的管理方式,那么任何 一个分区空闲时,只要关于它的队列非空,那 么就把该分区分配给队列的第一个作业使用; 一旦作业运行完毕,就收回该分区,进行下一 次分配。分区的分配和释放很容易完成。
第3章 存储管理
上 页
下 页
退 出
如果采用的是一个队列的管理方式,那么在任何一个分区 被释放时,就要根据某种方案从该队列中挑选出一个作业 装入运行。可以有如下的几种挑选方案: 1)在队列中挑选出第一个可容纳的作业进入。这种方案 的优点是实现简单,选择效率高。
3)对进入分区的作业程序,实行的是静态重定位。在分 区内的程序不能随意移动。
第3章 存储管理
上 页 下 页 退 出
固定分区存储管理的缺点如下 1)进入分区的作业尺寸,不见得与分区的大小相 吻合,势必产生内部碎片,引起内存资源的浪 费。 2)如果到达作业的尺寸比任何一个分区的长度都 大,那么它就无法得到运行。
把它分配给这个作业,同时修改分区分配表中该分区表
目的使用标志为非0(即把该作业的名字填入),完成 分区分配; 当一个作业运行结束时,只需根据作业名,在分区分配 表里找到它所使用的表目,然后将该表目的使用标志改 为“ 0”,从而完成该分区的释放工作。
第3章 存储管理
上 页 下 页 退 出
3.地址重定位与存储保护
作业A、B、C排在第1分区的队列上,说明 它们对内存的需求都不超过8KB; 作业D排在第2分区的队列上, 表明它对内存的需求大于 8KB小于32KB; 作业E和F排在第4分区的队 列上,表明它们对内存的需 求大于64KB小于132KB。
缺点 :可能会产生有的分区队列忙碌、 有的分区队列闲置的情形。
第3章 存储管理
第3章 存储管理
上 页 下 页 退 出
早期计算机在一定的条件下,可以采用所谓的
“覆盖”技术,使得大作业在小内存上得以运
行。
第3章 存储管理
上 页
下 页
退 出
所谓
“覆盖”,是早期为程序设计人员提供
的一种扩充内存的技术,其中心思想是允许一
个作业一的若干个程序段使用同一个存储区,
被共用的存储区被称为“覆盖区”。不过,这
下 页
退 出
第3章 存储管理
上 页
下 页
退 出
两个重要概念:
“地址重定位”:用户程序是相对地址,从0开始。不
能反映真实的存储位置。必须解决地址的重定位问题。
“虚拟存储”:内存的容量无法满足实际的需要,必须 打破“程序只有全部在内存,才能得以运行”的限制。 为此,需要通过“虚拟存储”这一技术手段。
第3章 存储管理
上 页 下 页 退 出
固定分区存储管Fra Baidu bibliotek的特点如下:
1)它是最简单的、具有“多道”色彩的存储管理方案。 对比单一连续分区,它提高了内存资源的利用率。另外, 由于多道,几个作业共亭系统内的其他资源,因此也提
高了其他资源的利用率。
2)当把一个分区分配给某个作业时,该作业的程序将一
次性地全部被装入到分配给它的连续分区里。
第3章 存储管理
上 页
下 页
退 出
3 .1 .4
固定分区存储管理
所谓“固定分区”的存储管理:
即是指预先把内存储器中可供分配的用户区划分 成若干个连续的分区,每个分区的尺寸可以相 同,也可以不同。 划分后,内存储器中分区的个数以及每个分区的 尺寸保持不变。每个分区中只允许装入一个作 业运行。
第3章 存储管理
第3章 存储管理
上 页
下 页
退 出
3.1
3.1.1
固定分区存储管理
地址重定位
内存储器由存储单元组成。一个存储单元可存放若干个
二进制的位bit,8个二进制位被称作一个字节(Byte)。 内存中的存储单元按一定顺序进行编号,每个单元所对 应的编号,称为该单元的单元地址。 一个单元的单元地址具有唯一性,存储在单元里的内容 则是可以改变的。 在操作系统中,常把单元地址称为内存储器的“绝对地
第3章 存储管理
上 页
下 页
退 出
单一连续分区存储管理的特点:
1)系统总是把整个用户区分配给一个用户使用。 2)内存用户区又被分为“使用区”和“空闲区”两部分。 见图 3-2(b)。在操作系统中,把分配给了用户、 但又未使用的区域称为“内部碎片”。内部碎片的存在
是对内存资源的一种浪费。
3)由于任何时刻内存储器的用户区中只有一个作业运行, 因此这种系统只适用于单用户(或单道)的情况。 4)进入内存的作业,独享系统中的所有资源。 5)作业程序进入用户区后,没有移动的必要。存储分配
缺点是可能会因为一个 小作业的进入而浪费掉 该分区的大部分存储空 间,存储利用率不高。
第3章 存储管理
上 页 下 页 退 出
(2)在整个队列中进行搜索,找到这个分区能够
容纳的最大的那个作业,让它进入运行。这种方 案的优点是由于在每个分配出去的分区中产生的 内部碎片尽可能的小,因此存储空间的利用率高。
缺点:选择效率低 下,且对小作业明 显表示歧视。
第3章 存储管理
上 页
下 页
退 出
3)在系统中至少保留一个小的分区,以避免因 运行小作业而被迫分配大分区的情形发生。
为了具体管理内存中的各个分区,操作系统的做法是设
置一张名为“分区分配表”的表格,用它记录各分区的
信息以及当前的使用情况。表3.l即为一种分区配表。
第3章 存储管理
上 页
下 页
退 出
作业:【习题】
教材P79:一、二、三、四、
第3章 存储管理
上 页
下 页
退 出
上 页 下 页 退 出
1.对作业的组织
一般地,固定分区存储管理总是把内存用户区划分成几个 大小不等的连续分区。由于分区尺寸在划分后保持不变, 因此系统可以为每一个分区设置一个后备作业队列,形 成多队列的管理方式。
第3章 存储管理
上 页
下 页
退 出
一个作业到达时,总是进入到“能容纳该作业的 最小分区”的那个后备作业队列中去排队。
第3章 存储管理
上 页
下 页
退 出
举例:假定用户程序A的相对地址空间为0~3KB,在该程序 中地址为3000的地方,有一条调用子程序(其人口地址为 100)的指令:“call 100”,如图 3-l(a)所示。
第3章 存储管理
上 页
下 页
退 出
在操作系统中,把用户程序指令中的相对地址变换成为所在 绝对地址空间中的绝对地址的过程,称为“地址重定位”。 即把指令“call 100”中的100变换成20580,就是地址重定 位,如图3-1(C)所示。
上 页 下 页 退 出
作业A、B、C都在等待着 进入第1分区。按原则,它 们不能进入目前空闲的第3 分区,虽然第3分区的大小 完全能够容纳下它们。
作为一种改进,可以采用多个分区 只设置一个后备作业队列的办法。 当某个分区空闲时,统一都到这一 个队列里去挑选作业,装入运行。
第3章 存储管理
上 页
下 页
内存储器可被CPU直接访问。
辅助存储器与CPU之间只能够在输入输出控制系统的管理
下,进行信息交换。 因此内存储器是计算机系统中极为重要的资源。 在操作系统中,把管理内存储器的部分称为“存储管理”。 合理地使用内存,会在很大程度上影响到整个计算机系统
的性能的提高。
第3章 存储管理
上 页
种技术并不能彻底解决大作业与小内存的矛盾。
为了让单一连续分区存储管理能具有“多道”
的效果,在一定条件下,可以采用所谓的“对
换”技术来实现。
第3章 存储管理
上 页 下 页 退 出
“对换”的中心思想:
从宏观上看,系统中同时就有几个作业处在运行之中。单
一连续分区存储管理实行的是静态重定位,所以,“换 出”的作业程序再被“换入”时,仍应该装到与它“换 出”前相同的存储区中去,以保证能够正确地继续运行。
4)绝对地址空间里的目标程序与原相对地址空间里的目
标程序面目已不相同,因为前者进行了地址调整; 5)实施静态重定位后,若用户程序在内存中做了移动, 那么程序指令中的地址就不再反映所在的存储位置了, 除非重新进行地址重定位。
第3章 存储管理
上 页 下 页 退 出
3.1.3 单一连续分区存储管理
早期计算机而言,每次只有一个用户使用计算机,其存储 管理都采用单一连续分区的分配策略。 单一连续分区分配策略的基本思想:把内存储器分为两个 分区。一个分区固定分配给操作系统使用;另一个分配 给用户使用,称为“用户区”。如图3-2(a)所示。
第3章 存储管理-1固定分区管理
【学习目标
掌握固定分区存储管理的基本思想。
掌握地址重定位的概念。 掌握固定分区的优、缺点。 【学习重点、难点 1)地址的静态重定位和动态重定位; 2)不同的存储管理方案; 3)存储共享和存储保护; 4)存储扩充和虚拟存储器。
第3章 存储管理
上 页 下 页 退 出
存储器分为两种:内存储器和辅助存储器
上 页
下 页
退 出
在固定分区存储管理中,不仅要防止用户程序对操作系统
形成的侵扰,也要防止用户程序之间形成的侵扰。因此必 须在CPU中设置一对专用的寄存器,用于存储保护,如图3 -6所示。
•当某个作业进程运行时, 就把该作业分区的低边界 地址装入低界限寄存器, 把高边界地址装入高界限 寄存器。 •作业运行时,硬件会自动 检测指令中的地址,如果 超出a或b,那么就产生出 错中断,从而限定作业工 只在自己的区域里运行。
策略对用户程序实行静态重定位。
第3章 存储管理
上 页 下 页 退 出
6)实行静态重定位,同样要考虑如何阻止对操作系统的
侵扰,这就是所谓的“存储保护”问题。在CPU中设置 一个用于存储保护的专用寄存器——“界限寄存器”, 如图3-2(C)所示。
第3章 存储管理
上 页
下 页
退 出
单一连续分区存储管理有如下缺点: 1)由于每次只能有一个作业进入内存,故不适用 于多道程序设计,系统的工作效率不高,资源 利用率低下。 2)内存资源浪费。 3)若用户作业的相对地址空间比用户区大,那么 该作业就无法运行。即大作业无法在小内存上 运行。