我在考试中有以下问题:
在 ext3 文件系统中,dentries 的数量高于 i 节点的数量。
我不得不用真假来回答并解释。
我的答案:
这是错误的,因为dentries 是目录之间的链接,基本上所有东西都是一个i-node(甚至是一个目录)所以#i-nodes > #dentries。
但是我没有考虑到 ext3 文件系统。有什么我错过的或者我的答案是正确的吗?
我在考试中有以下问题:
在 ext3 文件系统中,dentries 的数量高于 i 节点的数量。
我不得不用真假来回答并解释。
我的答案:
这是错误的,因为dentries 是目录之间的链接,基本上所有东西都是一个i-node(甚至是一个目录)所以#i-nodes > #dentries。
但是我没有考虑到 ext3 文件系统。有什么我错过的或者我的答案是正确的吗?
由于以下原因,我们可能会有更多的 dentries:
但是你可以有硬链接。因此,您可以合理地让许多dentries 指向同一个inode。
在完全卸载的文件系统中,dentries 的数量总是高于 inode 的数量。
考虑:每个 inode(不包括通过打开的文件句柄保持活动状态的未链接文件 - 这些文件在干净卸载中或在未干净卸载后的恢复期间被清除)至少有一个与之关联的目录项。每个目录 inode 至少有两个 - 来自其父(或它自己..
的根)的链接和来自.
. 此外,对于每个子目录的目录,目录都有一个与之关联的附加目录..
。
因此,绝对最小值,dentry 比 inode 多一个(对于只有根目录的 FS)。其他目录和硬链接进一步扩大了这一点。