新文件系统的幻数

新文件系统的幻数

我正在编写新的可堆叠文件系统,所有文件系统都有关联的幻数,其作用就像它们的文件格式的“签名”。我想知道如何确定我的文件系统的这个数字?有没有办法确保我选择的号码尚未被占用?一旦获取,我是否需要在某个地方注册该号码并将其标记为已使用?这些数字将被定义在/include/api/linux/magic.h

答案1

当添加新的文件系统时,开发人员有责任为其分配唯一的幻数。设置一些数字,例如 0xAAFF8023 等,并检查 magic.h 的唯一性。这样,一旦附加,未来的开发人员将确保他们不会接受您分配的内容。请注意,ext2/3/4 被设计为与磁盘格式兼容,因此它们具有相同的幻数。如果开发人员仔细分配它并了解其影响,那么拥有相同的幻数并没有什么坏处。

相关内容