微软开放exFAT 技术并积极将其添加到 Linux 内核后,Linux Kernel 5.4 带来了对 exFAT 文件系统的初步支持。现在,基于早期代码进行改进,新的 exFAT 文件系统驱动程序将搭载在 Linux Kernel 5.7 提供。
Linux Kernel 5.4 使用的 exFAT 驱动程序基于三星几年前开发的版本,以及此期间进行的各种其他改进。不过多年来,三星内部也一直在使用并改进 exFAT Linux 驱动程序,还将其作为设备的一部分进行销售。自从微软去年开放 exFAT 技术规范以来,三星一直在努力为文件系统驱动程序的上游提供改进,并使用其 Android 设备一直应用上游内核代码库。
在过去的几个月里,三星对驱动程序的代码进行了重大修订,追求稳步发展的 exFAT 驱动程序自上线以来也一直是在继续进行代码清理。
exFAT 目前主要用于消费者级的 U 盘和存储卡上
三星最新的 exFAT 驱动正在准备进入VFS 的下一代仓库,据说此驱动程序的状态比旧版本更好,并且由三星工程师积极维护,还将继续向前发展。它将直接进入内核的文件系统部分。
现有的驱动程序尚未被移除,但在 Kconfig 配置中,这两个 exFAT 驱动程序属于互斥关系,因此无法从同一内核中激活两者。大概一旦新的 exFAT 驱动程序通过了验证,旧的驱动程序便很可能会从内核代码树中删除。新的实现位于 fs/exfat 中,并使用 EXFAT_FS Kconfig switch 进行构建。