0

如何在vfs层检查linux内核文件对象是目录还是文件?

我发现有一个函数调用is_dx(dir)它检查这个,但它存在namei.cext3或中ext4。我需要在独立于文件系统的vfs 层执行此操作。

4

2 回答 2

2

S_ISDIR()中定义的宏怎么样include/linux/stat.h?它需要inode->i_mode字段来检查有问题的 inode 是否属于目录或文件。

于 2012-04-16T12:29:32.237 回答
0

有了初始目录的inode,代码

检查与名字匹配的条目以获取

对应的inode。

q 然后从磁盘读取具有该节点的目录文件并

检查匹配第二个名称的条目以导出

对应的inode。

q 对路径中包含的每个名称重复此过程。

dentry 缓存大大加快了进程

文件系统操作大多在 dcache 级别完成,所以

它们都处于内核锁定状态。

于 2012-04-16T05:47:17.763 回答