现代操作系统 存储设备.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
现代操作系统 - 存储设备 2021-09-20 无存储设备 最简约的存储器笼统就是根本没有笼统。每一个程序都直接访问物理内存。当一个程序执行如下命令: 1 MOV?REGISTER1,?1000 计算机会将位置1000的物理内存中的内存移到REGISTER1中。因而,那时呈献给编程人员的存储器模型就是简约地物理内存:从0到某个上限的地址集合,每一个地址对应一个可容纳肯定数目二进制位的存储单元,通常是8个。 一种存储笼统:地址空间 把物理地址暴露给进程会带来几个严峻问题:第一,假如用户程序可以寻址内存的每个字节,它们就可以很简约地(有意地或偶然地)破话操作系统;其次,使用这种模型,想要同时(假如只要一个CPU就轮番执行)运转多个程序时很困难的。 地址空间的概念 地址空间为程序制造了一种笼统的内存。地址空间是一个进程可用于寻址内存的一套地址集合。每个进程都有一个本人的地址空间,并且这个地址空间独立于其他进程的地址空间。 交换技术 把全部进程一直保存在内存中需要巨大的内存,假如内存不够,就做不到这一点。 有两种处理内存超载的通用方法。最简约的策略是交换技术,即把一个进程完整调入内存,使该进程运转一段时间,然后把它存回磁盘上,所以当它们不运转时就不会占用内存(虽然它们的一些进程会周期性地被唤醒以完成相关工作,然后就又进入睡眠形态)。另一种策略是虚拟内存,该策略甚至能使进程在只要一部分被调入内存的情况下运转。 有一个问题值得留意,即当进程被创建或换入时应当为它安排多大的内存。 假如大部分进程在运转时都要增长,为了削减因内存区域不够而引起的进程交换和移动所产生的开销,一种可用的方法是,当换入或移动进程时为它安排一些额外的内存。 虚拟内存 虚拟内存的基本思想是:每个进程拥有本人的地址空间,每个空间被分割成多个块,每一个块称作一页或页面。每一页有连续的地址范围。这些页被映射到物理内存,但并不是全部的页都必需在内存中才能运转程序。当程序引用到一部分在物理内存中的地址空间时,由于硬件马上执行必要的映射。当程序引用到一部分不在物理内存中的地址空间时,由操作系统担任将缺失的部分装入物理内存并重新执行失败的指令。 分页 由程序产生的这些地址成为虚拟地址,它们构成了一个虚拟地址空间。 虚拟地址空间依据固定大小划分成称为页面的多干单元,在物理内存中对应的单元成为页框。 页表 虚拟地址到物理地址的映射可以概括如下:虚拟地址被分成虚拟页号(高位部分)和偏移量(低位部分)。 页表的目的是把虚拟页面映射为页框。从数学角度说,页表是一个函数,它的参数是虚拟页号,结果是物理页框号。通过这个函数可以把虚拟地址中的虚拟页面的虚拟页面域被替换成页框域。从而构成物理地址。 分段 一个直观并且通用的方法是在机器上供应多个相互独立的称为段的地址空间。分段存储管理,每一个段都可以独立地增大或减小而不会影响其他的段。 分页和分段的比较 调查点 分页 分段 需要程序了解正在使用这种技术吗? 否 是 过程和数据可以被区分并分别被爱护吗? 否 是 其大小浮动的表可以很简约供应吗? 否 是 用户间过程共享便利吗? 否 是 为什么创造这种技术? 为了得到打的线程地址空间而不必购买更大的物理存储器 为了使程序和数据可以被划分为规律上独立的地址空间并且有助于共享和维护 纯分段的实现 分段和分页的实现本质上是不同的:页面是定长的而段不是。 分段和分页结合:Pentium 假如一个段比较大,把它整个保存在内存中可能很不便利甚至是不行能的,因而产生了对它进行分页的想法。这样,只要那些真正需要的页面才会被调入内存。 每个段都看做是一个虚拟内存并对它进行分页,以结合分页的优点(统一的页面大小和在只使用段的一部分时不用把它全部调用内存)和分段的优点(易于变成、模块化、爱护和共享)。 Pentium处理器中虚拟内存的核心是两张表,即LDT(局部描述符表)和GDT(全局描述符表)。每个程序都有本人的LDT,但是同一台计算机上的全部程序共享一个GDT。LDT描述局部于每个程序的段,包括其代码、数据、堆栈等,GDT描述系统段,包括操作系统本身。 为了访问一个段,一个Pentium程序必需把这个段装入机器的6个段寄存器的某一个。在运转过程中,CS寄存器保存代码段,DS寄存器保存数据,其他寄存器不太重要。 小结 系统通过交换技术可以同时运转总内存占用超过物理内存大小的多个进程,假如一个进程没有内存空间可用,它将被换到磁盘上。内存和磁盘上的空间可以使用位图或空闲区列表来记录。 现代计算机都有某种方式的虚拟内存。在最简约的方式中,每一个进程的地址空间呗划分为同等大小的块,成为页面,页面可以被放入内存中任何可用的页框中。有多重页面置换算法,其中两个比较好的算法是老化算法和工作集时钟算法。 分段可以挂念处理在执行

文档评论(0)

duanbingbing + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档