Linux 虚拟文件系统(VFS)分析

本文将介绍一下Linux的VFS虚拟机文件系统,主要介绍该文件系统在Linux中的作用及概要实现。我们知道在Linux系统中一切皆文件,如果说文件系统是Linux系统的基石一点也不过分。在Linux系统中基本上把其中的所有内容都看作文件,除了我们普通意义理解的文件之外,目录、字符设备、块设备、 套接字、进程、线程、管道等都被视为是一个“文件”。例如对于块设备,我们通过fdisk -l显示块设备列表,其实块设备可以理解为在文件夹/dev下面的文件。只不过这些文件是特殊的文件。

root@vmhost:~# ls /dev/ -alh |grep sd
brw-rw----  1 root disk      8,   0 Dec 31 09:38 sda
brw-rw----  1 root disk      8,  16 Dec 31 09:38 sdb
brw-rw----  1 root disk      8,  32 Dec 31 09:38 sdc

如上面代码所示,每个块设备的前面有一个字符串brw-rw----,这个用于描述文件的属性,其中b字符表示这个文件是一个块设备,如果是d字符则表示是一个文件夹,c字符则表示是一个字符文件。同样,还有其它类型的设备也是一文件的形式进行表示的。那么Linux的文件系统要支持如此之多类型的文件是怎么做到的呢?那就是通过虚拟文件系统(Virtual File System简称VFS)。

 

posted @ 2022-03-10 17:47  咕咕咕-咕  阅读(245)  评论(0)    收藏  举报