操作系统(第四版)第04-2章.ppt

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

第四章之虚拟存储器 4.6 虚拟存储器的基本概念 4.6.1 虚拟存储器的引入 问题的提出 : 程序一次性全部装入主存(程序大于内存、内存的利用率) 程序暂时不执行或部分程序段已运行完还要占用内存 局部性原理为解决问题提供了基础。 一、局部性原理 程序局部性原理 在一段时间内一个程序的执行往往呈现出高度的局部性,表现在时间与空间两方面 时间局部性: 一条指令被执行了,则在不久的将来它可能再被执行 空间局部性: 若某一存储单元被使用,则在一定时间内,与该存储单元相邻的单元可能被使用 二、虚拟存储器 基于局部性原理,一个作业在运行时,只将部分装入内存,其余部分暂时留在外存上。当执行到未在内存的部分时,再将相应部分调入内存。 对用户:指令地址部分所限定的比实存大得多的地址空间。 对系统:借助于各种表格机构,实现内、外存的统一管理,体现虚拟空间。 虚拟存储器(续) 虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的存储器系统。虚拟存储器就是一个地址空间(即由程序的相对地址所组成的地址空间),且具有比实存大得多的容量。 4.6.2 虚拟存储器的实现方式 虚拟存储器的实现必须建立在离散分配存储管理的基础之上。 分页请求系统 调页功能和页面置换功能 需软件(OS)和硬件(页表机制、缺页中断机构、地址变换机构)的支持 请求分段系统 调段功能和段的置换功能 需软、硬件的支持 4.6.3 虚拟存储器的特征 连续性 离散性 驻留性 交换性 一次性 多次性 虚拟性 以CPU时间和外存空间换取昂贵内存空间,这是操作系统中的资源转换技术 虚拟存储器的容量 一个虚拟存储器的最大容量是由计算机的地址结构确定的。如:若CPU的有效地址长度为32位,则程序可以寻址范围是0~(2^32)-1 ,即虚存容量为 4GB。 虚拟存储器的容量与主存的实际大小没有直接的关系,而是由主存与辅存的容量之和所确定。 4.7 请求分页存储管理 请求式分页也称虚拟页式存储管理 与纯分页存储管理不同,请求式分页管理系统在进程开始运行之前,不是装入全部页面,而是装入一个或零个页面,之后根据进程运行的需要,动态装入其它页面;当内存空间已满,而又需要装入新的页面时,则根据某种算法淘汰某个页面,以便装入新的页面 需要解决的问题 将哪部分装入内存 系统如何获知进程当前所需页面不在主存,何时将页面装入 当发现缺页时,如何把所缺页面调入主存,装入内存的什么位置 当内存没有空间时淘汰哪个页面(即当主存中没有空闲的页框时,为了要接受一个新页,需要把老的一页淘汰出去,根据什么策略选择欲淘汰的页面。 ) 解决问题的三大策略 拿来策略 拿来策略就是缺哪页装哪页 页面调入时机 主要有两个策略: 预调页策略和请求调页策略 放置策略 哪里有空放哪里 4.7.1 请求分页中的硬件支持 1、页表机制 中断位:表示该页是在内存还是在外存 访问位:表示该页最近被访问过,根据访问位来决定淘汰哪页 修改位:查看此页是否在内存中被修改过 2、缺页中断机构 查页表时,当存在位指示该页不在主存时,则引起一个缺页中断发生,相应的中断处理程序把控制转向缺页中断子程序。执行此子程序,即把所缺页面装入主存。然后处理机重新执行缺页时打断的指令。这时,就将顺利形成物理地址。 注意:缺页中断属于内中断,它与外中断的区别:1)响应时间;2)执行一条指令期间,可能产生多次缺页中断。 3、地址变换机构 4.7.2 页面分配 需处理三个问题:确定最小物理块数;页面分配和置换策略;分配算法。 1、最小物理块数 保证进程能正常运行所需的最小物理块数。(即进程所分配的物理块数小于此值时将无法运行) 该值的大小与计算机的硬件结构有关,取决于指令的格式、功能和寻址方式。 2、页面分配和置换策略 分配策略有固定分配策略和可变分配策略;置换策略有局部置换策略和全局置换策略。可有三种组合: 固定分配局部置换 进程分配一固定页数的内存空间,且该数一直保持不变。发生缺页时,只能从该进程在内存中的页中换出某页。 页面分配和置换策略(续) 可变分配全局置换 创建进程时先为其分配一定数目的物理块,且内存中保留一定数目的空闲块。当发生缺页时,先判断还有无空闲块,有则再为该进程分配一个物理块将所缺页调入,无则换出某页。(换出的页肯能是系统中其它进程的页) 页面分配和置换策略(续) 可变分配局部置换 先为进程分配一定数目的内存空间。发生缺页时,只能从该进程在内存中的页中换出某页。但若该进程频繁发生缺页中断,则再为该进程分配若干物理块。 3、分配算法 平均分配算法 将系统中所有可供分配的物理块平均分配给各个进程。(未考虑各进程大小不

文档评论(0)

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

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

1亿VIP精品文档

相关文档