它是否会遍历所有索引节点,直到遇到第一个未使用的索引节点?或者它有某种机制可以快速查找未使用的索引节点?是否有执行此操作的通用标准或只是特定的实现。
答案1
这是特定于实现的,没有标准。每个文件系统(xfs
等等ext3/4
)都有自己的分配新索引节点的实现。
几个例子:
xfs
维持一个自由 inode btree跟踪空闲索引节点。ext4
有一个特定的块和索引节点分配策略其中数据跨多个块组维护,每个块组都有自己的空闲索引节点表。新的索引节点是根据一些块策略分配的。
它是否会遍历所有索引节点,直到遇到第一个未使用的索引节点?或者它有某种机制可以快速查找未使用的索引节点?是否有执行此操作的通用标准或只是特定的实现。
这是特定于实现的,没有标准。每个文件系统(xfs
等等ext3/4
)都有自己的分配新索引节点的实现。
几个例子:
xfs
维持一个自由 inode btree跟踪空闲索引节点。ext4
有一个特定的块和索引节点分配策略其中数据跨多个块组维护,每个块组都有自己的空闲索引节点表。新的索引节点是根据一些块策略分配的。