将磁盘上的inode读入内存

8
我相信有两种inode - 磁盘上的inode和内存中的inode('fs.h'中的'struct inode')。磁盘上的inode基于文件系统实现。我正在尝试理解底层概念,并有一些问题 -
  • 有人能指向代码(或演示步骤),在哪里读取/复制磁盘上的inode到内存中的inode?即,当创建内存中的inode时,它必须来自磁盘上的inode。那么,这是如何发生的?
  • 为什么内存中的inode不存储指向磁盘上inode的指针?
  • 如果对内存中的inode进行修改,则如何将其传播到磁盘上的inode?任何指向代码或代码流程的指针都将有所帮助。
谢谢!
1个回答

2
在算法ialloc中,为新分配的磁盘inode分配一个空闲inode后,核心inode从磁盘inode复制而来。内核设置标志以指示磁盘inode和内核副本之间的差异。当内核需要记录文件或inode的更改时,它会在检查这些标志后将内核副本的inode写入磁盘。请保留HTML标签。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接