出品|开源中国

a.out 是一种文件格式,在旧版本的类 Unix 计算机操作系统中用于可执行文件、目标代码,以及在后来的系统中用于共享库,a.out 是 "assembler output" 的缩写。

Linux 其实只使用 a.out 到 1.2 版本(1995 年),而对 ELF 的支持则是最早于 1.1.52 内核中加入(实验性支持)。

目前大多数类 Unix 系统都已改用 ELF 格式,不再采用 a.out 格式,在 2019 年的时候,Linux 内核弃用了对 a.out 支持。不过需要注意的是,当用户没有指定输出名称时,"a.out" 仍然是某些编译器和链接器创建的可执行文件的默认输出文件名,但这个文件仅有文件名为 "a.out",实际创建的文件并不是 a.out 格式(约定俗成的命名习惯)。

linux从入门到彻底放弃:Linux6.1已彻底清除(1)

在弃用这么久之后,从今年年初开始,Linux 内核开发者就开始着手删除 a.out 相关的代码,现在,随着 Linux 6.1 的到来,之前没有完全清楚的 a.out 代码则是彻底被删除了(删除了大约 500 行相关的 a.out 代码)。

这次代码清理也实现此前承诺的在 2022 年从 Linux 内核中删除所有 a.out 相关内容的目标。

,