kol*_*man 2 btrfs kernel drivers
我在BtrFS网上阅读了几篇文章。有时我看到这样的陈述
不要使用早于 0.20rc1 的 BtrFS 版本。
如何找出我的内核中的哪个版本?
从 Linux 内核 v2.6.32(2009 年 12 月)开始,BTRFS 模块放弃了它自己的单独版本控制方案。根据官方更新日志,在那之前的最后一个版本是 v0.19 。
在 Linux 中有两种实现文件系统的方法:
要么将代码合并到内核中,要么使用“用户空间中的文件系统”框架 (FUSE) 将其构建为用户空间应用程序。
在内核中实现的文件系统比在 FUSE 上实现的文件系统效率更高(但随着 FUSE 变得越来越成熟,这种差异会随着时间的推移而缩小)。
BTRFS 仅在内核中作为名为 的内核模块实现btrfs,因此它的版本与内核版本紧密耦合。并且 BTRFS 内核团队在实现其 FS 的过程中为内核贡献了大量通用代码。通常您会btrfs使用 command获取内核模块的版本信息modinfo btrfs | grep -i ver,但在我的情况下(Ubuntu 14.04),该字段不存在于btrfs.
是的,很多东西都是在内核中实现的。这就是为什么说 Linux 具有单片内核的原因。在 GNU HURD 中,如果只有 GNU HURD 可以用于生产,那么您将 btrfs 作为单独的服务(类似于“驱动程序”)。
btrfs 模块版本与 btrfs-tools 相同,这是不正确的。它们通常重合,但不一定必须重合。(曾经有一段时间,Ubuntu 附带的 btrfs-tools 比与内核兼容的最新版本晚了一年)。Btrfs-tools 旨在向后兼容,因此新版本可以在旧内核上运行,如果内核中尚不存在某些 btrfs 功能,则功能可能会减少。
同样,BTRFS 版本在开发阶段与内核版本紧密耦合。实际上,除了 kernel.btrfs git 源代码提交之外,没有诸如“btrfs 驱动程序版本”之类的东西。或者除了写在 FUSE 之上的文件系统之外的任何其他 FS 版本。
| 归档时间: |
|
| 查看次数: |
2425 次 |
| 最近记录: |