设为首页 - 加入收藏   exFAT,Linux,Linux Kernel,微软,文件系统,索尼 – 跋扈自恣网
您的当前位置:首页 > 索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能 – 蓝点网 正文

索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能 – 蓝点网

来源:索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能 – 蓝点网 编辑:索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能 – 蓝点网 时间:2025-04-02 11:04:02

索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能

#系统资讯 在索尼工程师的帮助下微软 exFAT 文件系统在 Linux 上的性能将再次大幅度提升,在 2022 年这位索尼工程师已经帮助微软提升 exFAT 在 Linux 上的性能。此次提交补丁的旨在启用丢弃挂载选项,大幅度缩短文件簇删除时间从而减少因为删除簇导致的软锁定和性能降低问题。查看全文:https://ourl.co/108596

微软在 2006 年推出 exFAT (扩展文件分配表) 文件系统用于优化闪存存储性能,到 2012 年微软推出 64 位版 exFAT 文件系统作为 FAT32 的后继者,7 年后的 2019 年微软宣布在 Linux 系统中支持 exFAT 格式。

到 2022 年索尼工程师 Yuezhang Mo 注意到减少目录条目的重复遍历可以让 exFAT 文件系统的性能提升高达 57%,改进后的版本在 Linux Kernel 6.2 版 (发布于 2023 年 2 月) 中得到实现。

现在这名工程师再次帮助微软提升 exFAT 文件系统的性能,最新的拉取请求包含大量与 exFAT 相关的改进,其中就包括关于继续提升 exFAT 在 Linux 中的性能的改进。

索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能

在拉取请求中索尼工程师提到:

  • 修复 exfat_get_block () 中的随机堆栈损坏和不正确的错误返回
  • 通过改进检查极端情况来优化 exfat_get_block ()
  • 修复 exfat_find_last_cluster 中自链接 (self-linked) 造成的无限循环
  • 删除无效的 EXFAT_CLUSTERS_UNTRACKED 代码
  • 添加缺失的关机检查
  • 使用丢弃挂载选项提高删除性能

丢弃挂载指的是通知底层存储设备不再使用的块的操作,因此当使用丢弃选项挂载文件系统时,该功能会启用实时丢弃操作,每次当块从已使用转换为空闲状态时,这些操作都会自动通知存储设备。

索尼工程师在补丁说明中写道:

如果启用丢弃挂载选项则在释放簇时就会丢弃文件的簇,逐个丢弃簇会显著降低性能,当释放大量簇时性能不佳还会造成软锁定,此提交通过批量丢连续簇来提高性能。

作为测试使用 80GB 的文件用来对比,删除该文件原本在 exFAT 中需要 4 分 46 秒,通过此次优化后只需要 2 秒就可以完成,相当于这个补丁给文件文件删除的性能提高了 172 倍,当然具体文件体积和数量可能会有些性能方面的差异。

下面是衡量指标:

# truncate -s 80G /mnt/file

# time rm /mnt/file

如果没有这个补丁:

实际花费时间为 4 分 46.183 秒

用户操作时间为 0 秒

系统操作时间为 12.863 秒

有了这个补丁后:

实际花费时间为 1.661 秒

用户操作时间为 0 秒

系统操作时间为 0.017 秒

最后虽然补丁是提交了但合并到 Linux Kernel 可能还需要很长时间,一方面这需要微软检查并测试,另一方面也需要内核团队后续的确认,所以短时间应该不会合并到 Linux Kernel 即将发布的新版本中。

这个拉取请求地址是:https://lore.kernel.org/lkml/Z-GYKSuytHh-Weas@liuwe-devbox-ubuntu-v2.lamzopl0uupeniq2etz1fddiyg.xx.internal.cloudapp.net/

版权声明:
感谢您的阅读,除非文中已经注明来源网站,否则均为 蓝点网 原创内容,转载时请务必以超链接(而非纯文本链接)标注来源于蓝点网及本文完整链接,感谢!内容来源:蓝点网 -

相关文章

Copyright © 2025 索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能 – 蓝点网 – 跋扈自恣网索尼工程师再次帮助微软大幅度提升exFAT文件系统在Linux上的性能 – 蓝点网 – 跋扈自恣网

sitemap