遍历inode,找到存储在不同数据块中的文件内容

遍历inode,找到存储在不同数据块中的文件内容

我正在阅读有关 EXT2 文件系统的文章,并对其有所了解。每个文件系统都包含数据和元数据 (inode)。文件系统分为多个块,其中 4 个主块包含有关其他块的信息。

如果我们尝试从用户空间打开一个文件,交互是如何发生的?

当用户调用open()系统调用时,如何通过inode号定位文件,以及如何识别存储在下一个块中的内容?

open()调用sys_open()该函数,该函数通过查找文件名的 inode 编号来调用该do_path_search()函数。它通过查看 inode 编号表来获取保存数据块地址的 inode 编号。

  • 它如何搜索剩余的连续块?
  • 它如何识别必须搜索哪个文件系统才能获取正确的文件?
  • 多个进程访问同一个文件时,文件结构如何维护?

相关内容