【问题标题】:Get dinode/inode of directory/file by name in XV6在 XV6 中按名称获取目录/文件的 dinode/inode
【发布时间】:2017-04-14 02:12:40
【问题描述】:

我正在尝试遍历文件系统中为 xv6 分配的所有 inode,我想获取根目录的 dinode 并从那里开始,但我无法让它工作。我尝试使用 'dirlookup()' 但无论我导入什么,我都会收到错误提示该函数未定义。

【问题讨论】:

    标签: inode xv6


    【解决方案1】:

    我知道我迟到了答案,但这里是。可以从 stat() 命令中获取一个 inode 编号,并且您当前所在的根目录由“.”引用。就像你的父目录是“..” 这是一个简短的示例,说明您应该如何获取根目录的 inode 编号。请记住,我没有时间测试这个权利,但这是我使用 xv6 时记得的

    uint getRootInode() {
         struct stat sb;
         stat(".", &sb);
         return sb.ino;
    }
    

    编辑:
    同样dirlookup() 定义为defs.h 并在fs.c 中实现

    【讨论】:

      猜你喜欢
      • 2011-06-04
      • 2018-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-15
      • 1970-01-01
      • 2014-10-04
      • 1970-01-01
      相关资源
      最近更新 更多