Linux Kernel 的软盘驱动最早可以追溯到1991年内核刚诞生的时代,虽然已有一定的历史,但三十年后的今天,软盘驱动代码仍在被维护和更新。
Phoronix 发现了令人感到意外的代码提交——在 Linux Kernel 5.12 合并窗口开启之前,关于软盘驱动的补丁被提交到了内核的块子系统 (block subsystem)。
此补丁是关于软盘驱动的 O_NDELAY 修复,解决了软盘驱动在内核日志中产生大量消息的问题。此外,该驱动程序在没有 O_NONBLOCK 的情况下至少有一次在被打开之前挂载失败。SUSE 公司的长期内核开发者 Jiri Kosina 通过新提交的补丁解决了这些问题。
事实上,Jiri 原本在2016年就修复了这个问题,但当时弄巧成拙,同年又因问题而恢复原状。虽然花费了近5年时间,但 Jiri 现在终于通过这个新补丁解决了原来的问题。
虽然 Linus Torvalds 曾在2019年将 Linux Kernel 中的软盘驱动 floppy 标记为“孤立(orphaned)”状态,但这并不影响它得到维护和更新。例如去年内核开发者仍在对软盘驱动代码进行清理,如果在 Git 仓库进行搜索,也仍然可以看到不时有关于软盘驱动代码的补丁。
很难想象未来是否存在在运行现代 Linux 内核的情况下,设备依旧使用传统软盘(工业设备之外)的相关场景。我们无法预测 Linux 内核的软盘驱动还能坚持多久,但让它继续存在而产生的代码负担或许反而是最小的。
猜你喜欢:暂无回复。