操作系统第5章__2016.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统第5章__2016

* 3. 页面大小的选择 页面大小的选择,涉及内部碎片、页表大小、页面失效率的高低等诸多问题,同时还与内存大小、程序设计技术、程序结构及快表等因素有关。 页面越小,内部碎片就越小,内存利用率也相对越高,但会产生较大的页表、占用较大的内存空间;页面过大,则导致页面在内外存之间传输时间的增加,从而降低系统的有效访问时间。 页面较小,内存中能容纳的页面数就较多,相应的缺页率就会较低;若页面增大,缺页率也随之升高,但当页面大小超过进程大小时,缺页率又会下降。 * 5.7.5 请求分段存储管理 请求分段存储管理系统是在分段存储管理系统的基础上增加了请求调段功能和段置换功能后所形成的分段虚拟存储管理系统,作业的各段是根据请求被装入内存的。 类似于请求分页存储管理系统,在原有的分段存储管理系统基础上,需要以下支持: (1)段表机制 (2)缺段中断机构 (3)地址变换机构 * 5.7.5 请求分段存储管理 1. 请求分段原理 根据虚拟存储器的原理,请求分段存储管理系统为用户提供比实际内存容量大得多的存储空间。 它把作业所有分段的副本都存放在外存中,当作业被调度投入执行时,先把当前需要的一段或几段装入内存。在执行过程中、发生缺段中断时,再把存储在外存上的段交换至内存,以此实现请求分段存储管理。 * 请求段表 段号 段长 特征位 存取 权限 扩充位 标识位 内存 始址 外存 始址 标明本段是否在内存或共享 标明本段的读、写权限等 标明本段是否可扩充 标明本段是否已修改或可移动 访问分段 w 修改访问位字段 形成物理地址 * 地址变换过程 * 2. 缺段中断机构 * 小结: 存储器是计算机系统的重要资源之一,对其进行有效管理在一定程度上影响着整个系统的执行性能。存储器的层次结构在一定程度上解决了内存和CPU速度不匹配的矛盾,提高了系统的工作效率。 由于内存容量有限,为了能运行更大的程序,需要借助内存扩充技术及虚拟内存技术。在虚拟内存技术充分利用了程序局部性的原理,通过请求分页和请求分段的管理技术,实现了对内存容量逻辑上的扩充。 * * 5.6.1 覆盖技术 覆盖技术,是指一个程序的若干程序段或几个程序的某些部分共享某一个存储空间。 覆盖技术的实现:把程序划分为若干个功能上相对独立的程序段,按照其自身的逻辑结构使那些不会同时执行的程序段共享同一块内存区域。未执行的程序段先保存在磁盘上,当有关程序段的前一部分执行结束后,再把后续程序段调入内存,覆盖前面的程序段。 * 5.6.1 覆盖技术 覆盖技术打破了需要将一个程序的全部信息都装入内存后才能运行的限制,利用相互独立的程序段在内存空间的相互覆盖,从逻辑上扩充了内存。 覆盖技术是早期采用的简单扩容技术,对用户不透明,它要求用户清楚地了解程序的结构,并指定各程序段调入内存的先后次序,以及内存中可以覆盖掉的程序段的位置等,增加了用户的负担;且程序段的最大长度仍受内存容量的限制。 * 5.6.2 交换技术 进程从内存移到外存,并再移回内存的过程称为交换。这是进程在内存与外存之间的动态调度,由OS控制实现。 系统将那些不在运行中的进程或其一部分先调出内存,暂时存放在外存的一个后备存储区,以腾出内存空间给现在需要内存空间的进程,后者可能需要从外存换入内存。待以后条件成熟时,再将换出的进程重新调入内存继续执行。 * 5.6.2 交换技术 引入交换技术是为了尽可能快的实现进程在内、外存之间的交换,从而提高内存利用率。早期的交换技术多用于分时系统,大多数现代OS也都使用交换技术,它有力地支持了多道程序设计,同时也成为虚拟存储技术的基础。其涉及的关键问题包括: (1)换出进程的选择(影响系统效率) (2)交换时机的确定(内存不足或存在风险时) (3)交换空间的分配(率先分配与否决定操作) (4)换回内存时位置的确定(受绝对地址产生的限制) 5.6.2 交换技术 交换技术的不足在于:交换时,需要花费大量的CPU 时间,这将影响用户的响应时间,而交换的信息量大小决定了交换的耗时长短。合理的做法是,在外存保留每个程序的交换副本,换出时仅更新在执行中被修改过的部分。 与覆盖一样,交换也是利用外存空间来逻辑地扩充内存大小,但它对用户透明,且可以发生在不同进程或程序之间,而覆盖只能发生在同一进程或程序内部。因此,交换比覆盖更广泛地用于现代OS。 * 5.7.1 虚拟存储

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档