- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.5 段式与段页式存储管理 段式存储管理基本思想 分区存储管理与分页存储管理不易实现作业与进程之间的程序共享。而段式存储管理则可以有效地解决程序共享的问题。 在该管理方式中,系统将程序按照内容或过程分成段,每段有自己的名字,用户程序的地址空间是二维的。系统以段为单位来分配内存,然后通过地址映射机构将虚拟地址转换成实际的物理地址。多个进程可以通过段名来实现子程序的共享。 段式存储管理的虚存空间 段式管理的虚存空间是二维的,它是由“段号”与“段内地址”组成。不同分段中的“段号”是没有顺序关系的(即段与段之间的地址不是连续的),而且段的大小是不等的。 段式存储管理用到的数据结构 非共享段表 与页式存储管理类似,系统为每个作业或进程建立一张段 表,保存非共享段的信息。以便实现动态地址变换和缺段中断 处理,段表的结构如下图所示: 段号 起始地址 长度 存取方式 内存内外 访问位 0 2067 89 只读 内 1 1 6532 1000 读/写 外 0 2 7780 567 读/写 内 1 共享段表 系统中所有的共享段信息组成了共享段表,共享段表具有如下表项: 段号 段长 内存始址 外存始址 进程号 存取控制 共享记数器 共享段分配的过程如下: (1)第一个进程请求共享段时,为该共享段分配内存, 将该段的信息填入进程的非共享段表中。同时在 共享段表中增加一表项,填入有关数据,置共享 计数器为1。 (2)其它进程请求共享段时,该进程的非共享段表增 加一表项,填入该共享段的物理地址。同时在共 享段表中,填上调用进程名等信息。将共享计数 器+1。 当某个进程不需要共享段时,将该共享段的共享 计数器-1,只有当某个共享段的共享计数器为0时, 系统才能回收共享段的内存。 段式系统中共享段的示意图如下: 进程1的非 共享段表 …… 段1 段2 段n 进程1的地址空间 进程2的非 共享段表 …… 段1 段2 段n 进程2的地址空间 操作系统 共享段1 ...... 共享段2 内存 缺段中断机制 当进程所需的段还未 调入内存时,便由缺段中 断机构产生中断信号。由 系统调用缺断处理程序将 所需段调入内存。缺段处 理过程如下: 修改段表及空闲区链 按照合适的算法淘汰一个或几个段来相成一个合适的空区 合并空闲区,以形成一个合适的空闲区 为新段分配内存区 内存中有合适 的空闲区吗? 是 是 否 请求新段 返回 空闲区容量总 和能否满足? 段式管理的地址变换 地址变换可以使 用如下流程来 描述: 否 越界中断处理 修改访问位,若是写操作,则置访问位为“1” 形成物理地址: 该段内存起始地址+段内地址 扫描非共享段表,比较段内地址是否小于段长 是 返回 访问虚地址(段号,段内地址) 是否符合存取方式 该段是否在内存中 是 是 存取控制保 护中断处理 缺段中断处理 否 否 控制寄存器 越界 段号S 位移量W 有效地址 段号 段长 基址 物理地址 主存
文档评论(0)