我已经浏览了网上有关unix文件系统的一些资料,但是我无法得到任何正确答案。在一些材料中,提到unix文件系统中使用的目录结构具有分层目录结构,而在其他一些人已经提到实际上它是一个有向无环图由于存在硬链接。它显然是分层的,但DAG将是一个更好的术语来描述它。任何人都可以解释它是否真的是DAG或层次结构或树结构?
答案 0 :(得分:2)
它是有限类型的有向图。如果我们暂时忽略符号链接,那么文件系统的目录结构就是一棵树,因为目录不能硬链接。目录和文件的联合结构是一种受限制的DAG,因为叶子上的东西,即目录条目,可能是硬链接。
如果考虑了符号链接,那么结构就是一般图形,但是因为符号链接总是可以这样识别,所以只需将链接视为特殊类型的文件就可以打破周期(即使用{{1}而不是lstat
)。