计算机操作系统第7章存储器管理要点解析.ppt

计算机操作系统第7章存储器管理要点解析.ppt

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
段表的作用 内存空间 作业的地址空间 段表 30K 40K 20K 80K 15K 120K 10K 150K 段号 段长 基址 0 40K 80K 120K 150K (MAIN)=0 0 30K (X)=1 0 20K (D)=2 0 15K (S)=3 0 20K 0 1 2 3 (MAIN)=0 30K (X)=1 20K (D)=2 15K (S)=3 15K 二 地址变换 为实现从逻辑地址到物理地址的转换,在系统中设置了段表寄存器,用于存放段表始址和段表长度; 为了提高内存的访问速度,段表也可以存放在快表内; 进行地扯变换时,系统将逻辑地址中的段号与段表长度进行比较,若段号超过了段表长度则产生越界中断; 否则根据段表始址和段号计算出该段对应段表项的位置,从中读出该段在内存的起始地址; 然后再检查段内地址是否超过该段的段长,若超过则同样发出越界中断信号; 若未越界,则将该段的起始地址与段内位移相加,从而得到要访问的内存物理地址。 地址变换示意图 设作业分为3段,0、1、2段长度分别为1K、800、600,分别存放在内存6K、4K、8K开始的内存区域; CPU访存的逻辑地址(2,100)的段号为2,段内位移为100; 查段表可知第2段在内存的起始地址为8K; 将起始地址与段内位移相加,8K+100=8292,得到物理地址为8292。 段表寄存器 段表始址 段表长度 越界中断 < + 逻辑地址 段号(2)段内位移(100) 段号 段长 始址 1K 6K 800 4K 600 8K 0 1 2 物理地址 + 8292 三 空间的分配与回收 分段管理可以看作是分区管理的扩充,而分区管理可以看作是分段管理的特例。因此,这两种管理方法的空间分配和回收程序是类似的:分区管理为一道程序只分配和回收一段空间,而分段管理要为一道程序分配和回收多段空间,仅次而已。 7。5。3 分段与分页的主要区别 分页管理与分段管理有许多相似之处,但两者在概念上也有很多区别,主要表现在: 页是信息的物理单位,是为了减少内存碎片及提高内存利用率,是系统管理的需要。段是信息的逻辑单位,它含有一组意义相对完整的信息,分段的目的是为了更好地满足用户编程的需要; 页的大小固定且由系统决定,由硬件把逻辑地址划分为页号和页内地址两部分。段的长度不固定且由用户所编写的程序决定,通常由编译系统在对源程序进行编译时根据信息的性质来划分; 分页系统中程序的地址空间是一维的,分段系统中程序的地址空间是二维的。 7。5。4 段的共享与保护 由于分段是信息的逻辑单位,因而在多个进程之间实现共享不仅有意义而且易于实现; 在分段存储管理系统中,分段的共享是通过使多个进程的段表项指向同一程序在内存的起始地址实现的; 分段保护的含义,除了前面说过的防止越界访问外,更主要的是防止越权访问; 一个进程对一个分段的访问权限,是基本操作{R,W,E}的一个子集合; 分段共享示意图 段号 段长 存取权 状态 始地址 段号 段长 存取权 状态 始地址 0 1 2 0 1 2 3 {R} {R,W} sqrt 注意:不同进程可以以相同或不同的逻辑段号共享同一程序在内存 的副本,但不同进程对共享段的访问权限一般是不一样的。 内存 7.6 段页式存储管理 分页系统能有效地提高内存利用率,而分段系统能很好地反映用户要求。如果将这两种存储管理方式结合起来,就形成了段页式存储管理系统; 在段页式存储管理系统中,作业的地址空间首先被分成若干个逻辑分段,然后再将每一段分成若干个大小固定的页面; 将主存空间分成若干个和页面大小相同的物理块,对主存的分配以物理块为单位。 0K 2K 4K 6K 8K 9K 10K-1 作业的分段及分页示意图 设作业包含分为三段,页面大小为2K 0K 2K 4K 6K 8K-1 第1段(8K) 第2段(5K) 第3段(9K) 0K 2K 4K 5K 6K-1 程序的逻辑地址结构 在段页式管理下,程序的逻辑地址结构: 为了实现地址变换,系统中需要设立段表及页表; 此外,为了便于实现地址变换,还需配置一个段表寄存器,其中存放作业的段表起始地址和段表长度。 段号S 段内页号P 页内位移D 段表、页表及段表寄存器 段表寄存器 段号 页表大小 页表始址 段表大

您可能关注的文档

文档评论(0)

南非的朋友 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档