7.1.6 Linux 文件系统的运行

简介: 7.1.6 Linux 文件系统的运行

所有的数据都得要载入到内存后CPU才能够对该数据进行处理。为了解决耗时等待磁盘的写入/读取上的问题,Linux使用的方式是通过一个称为非同步处理(asynchronously) 的方式。所谓的非同步处理是这样的:


当系统载入一个文件到内存后,如果该文件没有被更动过,则在内存区段的文件数据会被设置为干净(clean)的。 但如果内存中的文件数据被更改过了(例如你用 nano 去编辑过这个文件),此时该内存中的数据会被设置为脏的 (Dirty)。此时所有的动作都还在内存中执行,并没有写入到磁盘中! 系统会不定时的将内存中设置为“Dirty”的数据写回磁盘,以保持磁盘与内存数据的一致性。


内存的速度要比磁盘快的多,因此如果能够将常用的文件放置到内存当中,就会增加系统性能。


系统会将常用的文件数据放置到内存的缓冲区,以加速文件系统的读/写;


承上,因此 Linux 的实体内存最后都会被用光!这是正常的情况!可加速系统性能;


你可以手动使用 sync 来强迫内存中设置为 Dirty 的文件回写到磁盘中;


若正常关机时,关机指令会主动调用 sync 来将内存的数据回写入磁盘内;


但若不正常关机(如跳电、死机或其他不明原因),由于数据尚未回写到磁盘内, 因此重新开机后可能会花很多时间在进行磁盘检验,甚至可能导致文件系统的损毁(非磁盘损毁)。


7.1.7 挂载点的意义(mount point)


每个 filesystem 都有独立的 inode / block / superblock 等信息,这个文件系统要能够链接到目录树才能被我们使用。 将文件系统与目录树结合的动作我们称为“挂载”。挂载点一定是目录,该目录为进入该文件系统的入口。因此并不是你有任何文件系统都能使用,必须要“挂载”到目录树的某个目录后,才能够使用该文件系统的。

     

XFS filesystem 最顶层的目录之 inode 一般为 128 号,因此可以发现 /,/boot, /home 为三个不同的 filesystem。使用文件系统的观点看,同一个filesystem的某个inode只会对应一个文件内容而已(因为一个文件占用一个inode),因此可以通过判断inode号码来确认不同文件名是否为相同的文件,所以可以这样看:

         

上面的信息中由于挂载点均为 / ,因此三个文件 (/, /., /..) 均在同一个 filesystem 内,而这三个文件的 inode 号码均为 64 号,因此这三个文件名都指向同一个 inode 号码,当然这三个文件的内容也就完全一模一样了。

相关文章
|
4天前
|
Web App开发 存储 Linux
Linux(33)Rockchip RK3568 Ubuntu22.04上通过SSH运行Qt程序和关闭Chrome的密钥提示
Linux(33)Rockchip RK3568 Ubuntu22.04上通过SSH运行Qt程序和关闭Chrome的密钥提示
66 0
|
4天前
|
Linux 开发工具 C语言
Linux 安装 gcc 编译运行 C程序
Linux 安装 gcc 编译运行 C程序
36 0
|
4天前
|
存储 监控 安全
《Linux 简易速速上手小册》第6章: 磁盘管理与文件系统(2024 最新版)
《Linux 简易速速上手小册》第6章: 磁盘管理与文件系统(2024 最新版)
32 1
|
4天前
|
存储 缓存 Linux
【Linux】文件系统
在打开文件之前,我们需要找到文件 -> 就要从磁盘中找到对应文件 -> 通过文件路径与文件名
20 4
|
4天前
|
存储 缓存 数据管理
深入理解 Linux 文件系统的层次结构
【4月更文挑战第30天】 本文旨在探讨和解析 Linux 操作系统中文件系统的结构与原理。不同于通常的摘要,我们将直接深入到文件系统的核心概念,包括其目录结构、关键组件以及它们如何相互作用以支持 Linux 操作系统的功能。通过剖析文件系统的层次性设计,我们能够更好地理解其在数据管理、用户权限控制和系统安全性方面的重要性。
|
4天前
|
存储 Linux
Linux为新创建的磁盘分区添加文件系统
Linux为新创建的磁盘分区添加文件系统
|
4天前
|
Linux Windows 存储
|
4天前
|
存储 算法 Linux
【Linux】详解文件系统以及周边知识
【Linux】详解文件系统以及周边知识
|
4天前
|
存储 Linux 编译器
【探索Linux】P.13(文件系统 | 软硬链接 | 动态库和静态库)
【探索Linux】P.13(文件系统 | 软硬链接 | 动态库和静态库)
16 0
|
4天前
|
存储 Linux Shell
Linux文件系统
Linux文件系统
21 2

热门文章

最新文章