在Tanenbaum的“现代操作系统”中,对于Linux文件系统,有两个草图:
在这两个草图中,特定的文件系统(例如,ext4类型)(第一个草图中的“文件系统”和第二个草图中的“文件系统1”)列在“虚拟文件系统”下。
区别在于
我的理解是,这两幅草图显示的是相同的东西,所以它们应该是一致的。
我的问题是
发布于 2015-12-13 16:55:15
文件系统有节节,它知道char设备和块设备(并返回它们,例如通过统计局(2) syscall)。
当您的程序(和进程)打开一个char设备(在某些文件系统中)时,内核将使用一些设备驱动程序,通常与设备主号相关。
Ext2维基页面有一个很好的图片(显示inode和数据),它非常适用于Ext4 (当然,许多细节已经改变了)。
VFS是内核中的一个抽象层。查看巡演 VFS并查看核源代码中的内容。
普通文件系统(例如,Ext3 1)可能包含char设备inode(可见于某些目录中的char设备文件),但许多新的Linux系统通常使用神甫伪文件系统(安装在/dev/上)(与udev和系统d相关)。
/dev/
https://stackoverflow.com/questions/34253611
相似问题