Linux — VFS (Virtual File System)

<p>VFS (Virtual File System, aka Virtual File Switch) is a software component of Linux which is responsible for the filesystem interface between the user-mode and kernel mode. Using it allows the kernel to provide an abstraction layer that makes implementation of different filesystems very easy (<a href="https://www.kernel.org/doc/html/next/filesystems/vfs.html" rel="noopener ugc nofollow" target="_blank">https://www.kernel.org/doc/html/next/filesystems/vfs.html</a>).</p> <p>Overall, VFS is masking the implementation details of a specific filesystem behind generic system calls (open/read/write/close/etc), which are mostly exposed to user-mode application by some wrappers in libc &mdash; as shown in the diagram below (<a href="https://www.starlab.io/blog/introduction-to-the-linux-virtual-filesystem-vfs-part-i-a-high-level-tour" rel="noopener ugc nofollow" target="_blank">https://www.starlab.io/blog/introduction-to-the-linux-virtual-filesystem-vfs-part-i-a-high-level-tour</a>).</p> <p>Moreover, we can say that the main goal of VFS is to allow user-mode applications to access different filesystems (think about NTFS, FAT, etc.) in the same way.&nbsp;</p> <p><a href="https://medium.com/@boutnaru/linux-vfs-virtual-file-system-2dc0f26cdfc0"><strong>Read More</strong></a></p>
Tags: Linux VFS