第4章存储器管理(3)_第1页
第4章存储器管理(3)_第2页
第4章存储器管理(3)_第3页
第4章存储器管理(3)_第4页
第4章存储器管理(3)_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、1 2021-7-2 4.6 4.6 分段存储管理分段存储管理 n4.6.1 4.6.1 分段存储管理方式的引入分段存储管理方式的引入 n4.6.2 4.6.2 分段系统的基本原理分段系统的基本原理 n4.6.3 4.6.3 信息共享信息共享 n4.6.4 4.6.4 段页式存储管理方式段页式存储管理方式 2 2021-7-2 4.6.1 4.6.1 分段存储管理方式的引入分段存储管理方式的引入 n引入:主要是为了满足用户和程序员的需引入:主要是为了满足用户和程序员的需 要要 u方便用户:用户希望逻辑分段方便用户:用户希望逻辑分段 u信息共享信息共享 u信息保护信息保护 u动态增长动态增长 u

2、动态链接动态链接 3 2021-7-2 4.5.2 4.5.2 分段系统基本原理分段系统基本原理 1、分段、分段 n用户程序划分 按程序自身的逻辑关系划分为若干个程序段,每 个程序段都有一个段名,且有一个段号。段号从0 开始,每一段段内也从0开始编址,段内地址是连 续的。段的长度由相应的逻辑信息组的长度决定, 因而各段长度不等。 n逻辑地址:由段号和段内地址组成 段号 段内地址 4 2021-7-2 . . . 0 S 工作区段工作区段B 主程序段主程序段M . . . . . . 0 E P 子程序段子程序段X 0 K . . . CALL X E . . . . . . . . . CAL

3、L Y F CALL A 116 . . . . . . 0 F L 子程序段子程序段Y 0 116 N 数组数组A 12345 . . . 5 2021-7-2 n内存划分内存划分 内存空间被动态的划分为若干个长度不相内存空间被动态的划分为若干个长度不相 同的区域,称为物理段,每个物理段由起同的区域,称为物理段,每个物理段由起 始地址和长度确定始地址和长度确定 n内存分配内存分配 以段为单位分配内存,每一个段在内存中以段为单位分配内存,每一个段在内存中 占据连续空间(内存随机分割,需要多少占据连续空间(内存随机分割,需要多少 分配多少),分配多少),但各段之间可以不连续存放但各段之间可以不连

4、续存放 6 2021-7-2 操作系统操作系统 . . . . . B 0 S A 0 N Y 0 L X 0 P M 0 K 逻辑段号逻辑段号 0 1 2 3 4 作业作业1的地址空间的地址空间 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 操作系统操作系统 7 2021-7-2 n2、段表、段表 段映射表。每个程序有一个段表段映射表。每个程序有一个段表 程序的每个段在表中占有一个表项,其中程序的每个段在表中占有一个表项,其中 记录了该段在内存中

5、的起始地址和段的长记录了该段在内存中的起始地址和段的长 度。可放在内存中,也可放在寄存器中。度。可放在内存中,也可放在寄存器中。 段表是用于实现从逻辑段到物理内存区的段表是用于实现从逻辑段到物理内存区的 映射。映射。 段号段号 0 1 2 段首址段首址段长度段长度 58K20K 100K110K 260K140K 8 2021-7-2 3 3、地址变换机构、地址变换机构 段地址映射过程为: n系统中设置了段表寄存器,用于存放段表始址和段 表长度TL。 n取出段号S和段内位移W。 n若STL,段号太大越界。 n根据段表始址找到段表,查找段号为S的表目,得到 该段在内存的起始地址。 n检查段内地址

6、d是否起过该段的段长SL。若超过越界。 n把段首地址与段内位移相加,形成内存物理地址。 9 2021-7-2 3 3、地址变换机构、地址变换机构 控制寄存器 段表始址段表长度2100 段号S 越界 1 K 段长 600 段号 0 1 2 3 6 K 4 K 500 200 8 K 9200 基址 位移量W 8292 8K 8292 8692 主存 物理地址 有效地址 10 2021-7-2 n同页地址变换一样,在段地址变换过程中, 也有两次访问内存的问题。为了加快访问内 存的速度也可采用快速存储器组成快表。 11 2021-7-2 Cl Cb + 段号段号S S 段内地址段内地址d 比较比较

7、比较比较 b + d 段段表表 S= Cl 快表快表 物理地址物理地址 段表始址寄存器段表始址寄存器段表长度寄存器段表长度寄存器逻辑地址逻辑地址 Lb . SL b 地址越界地址越界 d=L d=L 地址映射及存储保护机制地址映射及存储保护机制 地址越界地址越界 地址越界地址越界 比较比较 12 2021-7-2 4、分页与分段的主要区别 两者都采用离散分配方式,且都要通过地 址变换机构来实现地址变换。 分段与分页主要有以下差别:分段与分页主要有以下差别: n页是信息的物理单位,分页是为实现离散分 配方式,以消减内存的外零头, 提高内存的 利用率。或者说, 分页仅仅是由于系统管理 的需要而不是

8、用户的需要。段则是信息的逻 辑单位,它含有一组其意义相对完整的信息。 分段的目的是为了能更好地满足用户的需要。 13 2021-7-2 4、分页与分段的主要区别 n页的大小固定且由系统决定,由系统把逻辑 地址划分为页号和页内地址两部分,是由机 器硬件实现的,因而在系统中只能有一种大 小的页面;而段的长度却不固定, 决定于用 户所编写的程序,通常由编译程序在对源程 序进行编译时,根据信息的性质来划分。 n分页的作业地址空间是一维的,即单一的线 性地址空间,程序员只需利用一个记忆符, 即可表示一个地址; 而分段的作业地址空间 则是二维的,程序员在标识一个地址时,既 需给出段名, 又需给出段内地址。

9、 14 2021-7-2 4.5.3 信息共享信息共享 分段系统的一个突出优点就是易于实现分段系统的一个突出优点就是易于实现 段的共享,即允许若干个进程共享一个或多段的共享,即允许若干个进程共享一个或多 个分段,且对段的保护也十分简单。个分段,且对段的保护也十分简单。 15 2021-7-2 4.5.3 信息共享信息共享 ed 1 ed 2 ed 40 data 1 data 10 进程 1 21 22 60 61 70 页表 ed 1 ed 2 ed 40 data 1 data 10 进 程 2 21 22 60 71 80 ed 1 ed 2 ed 40 data 1 data 10 d

10、ata 1 data 10 主存 0 21 22 60 61 70 71 80 页表 图 4-18 分页系统中共享editor的示意图 16 2021-7-2 4.5.3 信息共享信息共享 在分段系统中,实现共享则容易得多,只需在每个在分段系统中,实现共享则容易得多,只需在每个 进程的段表中为文本编辑程序设置一个段表项进程的段表中为文本编辑程序设置一个段表项 图 4-19 分段系统中共享editor的示意图 editor 进程1 data 1 进程2 editor data 2 段表 段长 基址 16080 40240 16080 40380 editor data 1 data 2 80 2

11、40 280 380 420 17 2021-7-2 4.5.3 信息共享信息共享 n可重入代码是一种允许多个进程同时访问的代码。可重入代码是一种允许多个进程同时访问的代码。 n可重入代码是一种不允许任何进程对它进行修改可重入代码是一种不允许任何进程对它进行修改 的代码。的代码。 n在每个进程都必须配以局部数据区,把在执行中在每个进程都必须配以局部数据区,把在执行中 可能改变的部分拷贝到该数据区,程序在执行时可能改变的部分拷贝到该数据区,程序在执行时 势,只需对该数据区中的内容进行修改,并不去势,只需对该数据区中的内容进行修改,并不去 改变共享的代码,这时可共享代码即成为重入码。改变共享的代码

12、,这时可共享代码即成为重入码。 18 2021-7-2 段式存储管理方案小结段式存储管理方案小结 优点:优点: 便于动态申请内存便于动态申请内存 管理和使用统一化管理和使用统一化 便于共享便于共享 便于动态链接便于动态链接 缺点:产生碎片缺点:产生碎片 19 2021-7-2 练习练习 n基本分段系统中,给出如下段表,请求出逻基本分段系统中,给出如下段表,请求出逻 辑地址(辑地址(0,137),(1,4000),(2,3600),(5,230) 转换成物理地址。转换成物理地址。 段号段号内存始址内存始址段长段长 050k10k 160k3k 270k5k 3120k8k 4150k4k 20

13、2021-7-2 4.5.4 4.5.4 段页式存储管理方式段页式存储管理方式 产生背景产生背景: 结合页式段式优点,克服二者的缺点结合页式段式优点,克服二者的缺点 n基本原理基本原理 n地址变换过程地址变换过程 21 2021-7-2 基本原理基本原理 n用户程序划分用户程序划分 按段式划分(对用户来讲,按段的逻辑关系进行按段式划分(对用户来讲,按段的逻辑关系进行 划分;对系统讲,按页划分每一段)划分;对系统讲,按页划分每一段) n逻辑地址逻辑地址 n内存划分内存划分 按页式存储管理方案按页式存储管理方案 n内存分配内存分配 以页为单位进行分配以页为单位进行分配 段号段号 段内地址段内地址

14、页号页号页内地址页内地址 22 2021-7-2 n段表:记录了每一段的页表始址和页表长度段表:记录了每一段的页表始址和页表长度 n页表:记录了逻辑页号与内存块号的对应关页表:记录了逻辑页号与内存块号的对应关 系(每一段有一个,一个程序可能有多个页系(每一段有一个,一个程序可能有多个页 表)表) n内存分配管理:同页式管理内存分配管理:同页式管理 地址变换过程地址变换过程 23 2021-7-2 段号 状态 页表大小 页表始址 01 11 21 30 41 页号 状态存储块# 01 11 21 30 41 操作系统 主存 页表 段表 段表大小 段表始址 段表寄存器 图 4-21 利用段表和页表

15、实现地址映射 24 2021-7-2 地址变换过程地址变换过程 图 4-22 段页式系统中的地址变换机构 段表寄存器 段表始址段表长度段号S页号P 段超长 段表 0 1 2 3 页内地址 页表 0 1 2 3 b块号 b块内地址 页表始址页表长度 25 2021-7-2 n在段页式系统中,为了获得一条指令数据,在段页式系统中,为了获得一条指令数据, 须三次访问内存。须三次访问内存。 1、访问内存中的段表,从中取得页表始址、访问内存中的段表,从中取得页表始址 2、访问内存中的页表,从中取出该页所在的、访问内存中的页表,从中取出该页所在的 物理块号,将该块号与页内地址一起形成指物理块号,将该块号与页内地址一起形成指 令或数据的物理地址令或数据的物理地址 3、从物理地址中取出指令或数据。、从物理地址中取出指令或数据。 快表快表 地址变换过程地址变换过程 26 2021-7-2 练习练习 n在没有快表的情况下,分页系统每访问一次在没有快表的情况下,分页系统每访问一次 数据,要访问()次内存;分段系统每访问数据,要访问()次内存;分段系统每访问 一次数据,要访问()次内存;段页式系统一次数据,要访问()次内存;段页式系统 每访问一次数据,要访问()次内存。每访问一次数据,要访问()次内存。 n页是信息的()单位,其

温馨提示

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

最新文档

评论

0/150

提交评论