分析了VFS中几个基本的数据结构后,根据自己的理解,我画了一个关系图。如下(点击看大图):
关于此图的说明:
1. 图中两个结构之间的虚线箭头表示这两者之间仍有有若干个类似结点相连接;
2. 图中阴影部分所示的进程并不是以实际的关系来表示的;
3. 图中彩色线条示意的场景:三个进程分别打开同一个文件。进程1和进程2打开同一路径的文件,因此两者的打开文件对应同一个目录项;而进程3打开的是一个硬链接文件,因此对应的目录项与前两者不同;
4.索引结点中i_sb_list链表是链接一个文件系统中所有inode的链表,因此相邻的inode之间均会由此链表链接;而i_list链接的是处于同一个状态的所有inode。所以,相邻inode之间并不一定链接在一起。
图画的这么细致~
[回复一下]