- 0
- 0
- 约4.52千字
- 约 11页
- 2019-02-21 发布于湖北
- 举报
介绍Linux系统内核文件Cache管理机制
1 、前言
自从诞生以来,Linux 就被不断完善和普及,目前它已经成为主流通用操作系统之一,使用得非常广泛,它与 Windows、UNIX 一起占据了操作系统领域几乎所有的市场份额。特别是在高性能计算领域,Linux 已经成为一个占主导地位的操作系统,在2005年6月全球TOP500 计算机中,有 301 台部署的是 Linux 操作系统。因此,研究和使用 Linux 已经成为开发者的不可回避的问题了。
下面我们介绍一下 Linux 内核中文件 Cache 管理的机制。本文以 2.6 系列内核为基准,主要讲述工作原理、数据结构和算法,不涉及具体代码。
2 操作系统和文件 Cache 管理
操作系统是计算机上最重要的系统软件,它负责管理各种物理资源,并向应用程序提供各种抽象接口以便其使用这些物理资源。从应用程序的角度看,操作系统提供了一个统一的虚拟机,在该虚拟机中没有各种机器的具体细节,只有进程、文件、地址空间以及进程间通信等逻辑概念。这种抽象虚拟机使得应用程序的开发变得相对容易:开发者只需与虚拟机中的各种逻辑对象交互,而不需要了解各种机器的具体细节。此外,这些抽象的逻辑对象使得操作系统能够很容易隔离并保护各个应用程序。
对于存储设备上的数据,操作系统向应用程序提供的逻辑概念就是文件。应用程序要存储或访问数据时,只需读或者写文件的一维地址空间即可,而这个地址空间与存储设备上存储块之间的对应关系则由操作系统维护。
在 Linux 操作系统中,当应用程序需要读取文件中的数据时,操作系统先分配一些内存,将数据从存储设备读入到这些内存中,然后再将数据分发给应用程序;当需要往文件中写数据时,操作系统先分配内存接收用户数据,然后再将数据从内存写到磁盘上。文件 Cache 管理指的就是对这些由操作系统分配,并用来存储文件数据的内存的管理。 Cache 管理的优劣通过两个指标衡量:一是 Cache 命中率,Cache 命中时数据可以直接从内存中获取,不再需要访问低速外设,因而可以显著提高性能;二是有效 Cache 的比率,有效 Cache 是指真正会被访问到的 Cache 项,如果有效 Cache 的比率偏低,则相当部分磁盘带宽会被浪费到读取无用 Cache 上,而且无用 Cache 会间接导致系统内存紧张,最后可能会严重影响性能。
下面分别介绍文件 Cache 管理在 Linux 操作系统中的地位和作用、Linux 中文件 Cache相关的数据结构、Linux 中文件 Cache 的预读和替换、Linux 中文件 Cache 相关 API 及其实现。
2、 文件 Cache 的地位和作用
文件 Cache 是文件数据在内存中的副本,因此文件 Cache 管理与内存管理系统和文件系统都相关:一方面文件 Cache 作为物理内存的一部分,需要参与物理内存的分配回收过程,另一方面文件 Cache 中的数据来源于存储设备上的文件,需要通过文件系统与存储设备进行读写交互。从操作系统的角度考虑,文件 Cache 可以看做是内存管理系统与文件系统之间的联系纽带。因此,文件 Cache 管理是操作系统的一个重要组成部分,它的性能直接影响着文件系统和内存管理系统的性能。
图1描述了 Linux 操作系统中文件 Cache 管理与内存管理以及文件系统的关系示意图。从图中可以看到,在 Linux 中,具体文件系统,如 ext2/ext3、jfs、ntfs 等,负责在文件 Cache和存储设备之间交换数据,位于具体文件系统之上的虚拟文件系统VFS负责在应用程序和文件 Cache 之间通过 read/write 等接口交换数据,而内存管理系统负责文件 Cache 的分配和回收,同时虚拟内存管理系统(VMM)则允许应用程序和文件 Cache 之间通过 memory map的方式交换数据。可见,在 Linux 系统中,文件 Cache 是内存管理系统、文件系统以及应用程序之间的一个联系枢纽。
3 、文件 Cache 相关数据结构
在 Linux 的实现中,文件 Cache 分为两个层面,一是 Page Cache,另一个 Buffer Cache,每一个 Page Cache 包含若干 Buffer Cache。内存管理系统和 VFS 只与 Page Cache 交互,内存管理系统负责维护每项 Page Cache 的分配和回收,同时在使用 memory map 方式访问时负责建立映射;VFS 负责 Page Cache 与用户空间的数据交换。而具体文件系统则一般只与 Buffer Cache 交互,它们负责在外围存储设备和 Buffer Cache 之间交换数据。Page C
您可能关注的文档
- 黧蒴栲半同胞家系根际土壤理化性质的差异.docx
- 骆驼祥子中考试题汇总本试卷分第Ⅰ卷客观题和第Ⅱ卷非客观题.doc
- 武汉某路灯工程施工组织设计_.doc
- 土建工程技术标.doc
- 职业素质拓展课程公选超市(第二期).doc
- 中考科学专题训练 浮力 浙教版.doc
- 基于试验平台的动车组枕梁优化设计.pdf
- 南京化学工业园区环境保护局大气预警站采购项目.doc
- 西安交通大学数学建模上机实验报告.doc
- 年产50000平方米集成墙板项目环境影响报告表修改清单.doc
- 2026年新疆石河子职业技术学院单招职业技能测试题库及参考答案详解一套.docx
- 2026年柳州铁道职业技术学院单招职业适应性测试题库及参考答案详解1套.docx
- 2026年广西安全工程职业技术学院单招职业倾向性测试题库含答案详解.docx
- 2026年张家界航空工业职业技术学院单招综合素质考试题库及完整答案详解1套.docx
- 2026年新疆能源职业技术学院单招职业倾向性测试题库及参考答案详解一套.docx
- 2026年怀化师范高等专科学校单招职业倾向性测试题库及答案详解1套.docx
- 2026年新乡法院系统招聘省核定聘用制书记员126名备考题库及参考答案详解1套.docx
- 2026年昌吉州检察机关招聘(8人)备考题库及参考答案详解1套.docx
- 2026招商银行呼和浩特分行春季校园招聘备考试题附答案详解.docx
- 2026福建熹晟船务有限公司业务拓展主管社会招聘1人备考题库附答案详解.docx
最近下载
- GJ B 1404-1992器材供应单位质量保证能力评定.pdf VIP
- 电缆沟开挖方案.docx VIP
- 王者荣耀游戏品牌VI 手册(2019年版).pdf
- 广东省深圳市深圳外国语达标名校2024届中考物理考前最后一卷含解析.doc VIP
- 旅店业管理系统解决方案报告.ppt
- 支部班子“加强理论武装、执行上级组织决定、加强党员管理监督等六个对照”2025年度组织生活会班子对照检查提纲四篇.docx VIP
- 校本课程开发.ppt VIP
- 2026年最新体检中心考试题及答案.doc VIP
- T_CHES 161—2025(延续取水许可评估技术规程).pdf
- 中国信通院具身智能发展报告2025年解读PPT.pptx VIP
原创力文档

文档评论(0)