linux内核是否重用具有重复挂载点的dentry结构?如果是,如何重用?

8yoxcaq7  于 2022-11-22  发布在  Linux
关注(0)|答案(1)|浏览(100)

因此,我可以在多个位置挂载sysfs(/sys的虚拟文件系统),每次都可以看到相同的内容。同样,我可以在多个挂载点挂载相同的块设备(如/dev/sda 1)。
我现在正在为我的内核编写一个VFS,并且我正在努力解决如何将挂载点dentry附加到文件系统部分的细节。
所以我的问题是:用于表示(例如)sysfs文件系统(例如)的dentry结构体在(例如)/mnt中是否与我在/mnt 2中再次挂载sysfs时使用的结构体 * 相同 *?或者,这些结构体是否不同?
如果它们不同,是否共享inode?

rnmwe5a2

rnmwe5a21#

dentry是共享的。每个文件系统根dentry都存储在相应的超级块结构中,这些结构使用vfsmount结构链接到挂载点dentry。
有关详细信息,请查看fs/super.c。

相关问题