第四章 Windows缓存管理器.ppt

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

网络操作系统 第四章 Windows缓存管理器 Windows缓存管理器 缓存管理器是一组内核模式和系统线程; 与内存管理器协同工作,为所有的Windows文件系统驱动程序提供数据缓存能力。 第四章 Windows缓存管理器 缓存管理器的关键特性 缓存的虚拟内存管理 缓存的大小 缓存的数据结构 文件系统接口 快速I/O 预读和滞后写 缓存管理器的关键特性 关键特性 支持所有的文件系统类型,因此无需每一个文件系统单独实现自己的缓存管理代码; 使用内存管理器来控制驻留在物理内存中的文件部分; 使用虚拟块来缓存数据,这使得在不涉及文件系统驱动程序的情况下智能预读和高速访问缓存成为可能; 支持应用程序在打开文件时传递提示(hint)(如顺序/随机访问); 支持可恢复的文件系统,以便在系统失败后恢复数据。 缓存管理器的关键特性 相关概念 单一集中式系统缓存 内存管理器 缓存一致性 虚拟块缓存 流式缓存机制 可恢复文件系统支持 缓存管理器的关键特性 单一集中式系统缓存(Single, Centralized System Cache) Windows系统提供了集中式的缓存机制来缓存所有的外部存储数据,而不管数据是存储在本地硬盘,软盘、网络文件服务器,还是CD-ROM上。 任何类型的数据都可以被缓存,包括用户数据流和文件系统元数据(metadata)。 Windows访问缓存的方式取决于被缓存数据的类型。 缓存管理器的关键特性 内存管理器(The Memory Manager) 缓存的目的是在物理内存中保存频繁被访问数据的一个子集,从而提高I/O性能。 缓存管理器通过使用标准的区域对象(section object)将文件的视图映射到系统虚拟地址空间,然后通过访问系统虚拟地址空间来访问数据。 当访问被映射到虚拟地址空间中的文件视图时,由内存管理器将不在物理内存中的页面换到物理内存中。 而当内存空间不足时,内存管理器将缓存中的数据交换出去,并将其写回到文件中。 缓存管理器的关键特性 通过使用映射文件,并在虚拟地址空间中进行缓存,缓存管理器在访问被缓存文件的数据时可以避免生成读或写的I/O请求包IRPs。 缓存管理器只需要将数据拷贝到缓存文件被映射部分的虚拟地址,然后依靠内存管理器在必要的时候将数据换入(或换出)内存。 缓存管理器的关键特性 缓存一致性(Cache Coherency) 缓存管理器的重要功能之一就是保证任何访问缓存数据的进程能够获得该数据的最新版本。 可能存在的情况 当一个进程打开文件时,该文件相应地被缓存; 这时,另一个进程将该文件直接映射到自己的地址空间中,这可以通过Windows的MapViewOfFile函数来实现; 有可能导致两个进程的地址空间中数据不一致。 缓存管理器的关键特性 Windows的解决方法 缓存管理器和映射该文件到用户地址空间中的应用程序使用相同的内存管理文件映射服务将文件映射到它们的地址空间。 内存管理器保证每一个被映射文件只有惟一的版本,它映射文件的所有视图到物理内存中单独的页面集中。 缓存管理器的关键特性 一致的缓存方案示意图 缓存管理器的关键特性 虚拟块缓存(Virtual Block Caching) 许多操作系统,使用磁盘逻辑块来缓存数据。通过逻辑块,缓存管理器能够跟踪驻留在缓存中的磁盘分区中的块。 Windows缓存管理器使用虚拟块缓存方式,跟踪驻留在缓存中的文件部分。 缓存管理器通过将256KB大小的文件视图映射到系统虚拟地址空间中,并使用内存管理器特定的系统缓存例程来监视这些文件部分。 缓存管理器的关键特性 采用虚拟块缓存方式有以下优点: 使智能预读(read-ahead)成为可能。 缓存管理器跟踪驻留在缓存中的文件部分,从而可以预测调用者下一步需要使用的数据。 允许I/O系统能够绕过文件系统来请求已经驻留在缓存中的数据(即快速I/O)。 缓存管理器知道驻留在缓存中的文件部分,因此能够返回被缓存数据的地址,从而满足快速I/O请求以避免调用文件系统。 缓存管理器的关键特性 流式缓存机制(Stream-Based Caching) 缓存管理器支持流式缓存(stream caching)。 流(stream)是指一个文件中的字节序列。 有些文件系统,如NTFS,允许一个文件包含多个流。缓存管理器通过独立地缓存每个流来支持这类文件系统。 缓存管理器缓存由文件名标识的流,因为所有的文件都至少包含一个数据流。 若文件包含多个数据流,则通过文件名和流名来标识被缓存的数据流。 缓存管理器的关键特性 可恢复的文件系统支持(Recoverable File System Support) 可恢复的文件系统被设计成在系统失败后能够重构磁盘卷结构。 这意味着系统失败时正在进行的I/O操作,在系统被重启

文档评论(0)

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

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

1亿VIP精品文档

相关文档