a.out
読み:エイ-アウト
外語:a.out

 最も古くから存在する「由緒正しい」UNIX実行ファイルフォーマット
目次

概要
 a.outは歴史あるフォーマットであるが、やがてELFに取って代わられた。
 このa.outには、大きく二種類がある。
 非常に古いリンカはZMAGICのみ、少し古いものは両方に、比較的新しいものはQMAGICのみに対応している。そして最新のものでは両方とも対応していない。
 カーネルはどちらのa.outであっても実行可能なので、利用者はそれほど気にする必要はない。
 差は、新しいQMAGICではNULLポインターへの不正なアクセスが検出しやすくなっていることである。

特徴
 対するELFはAT&T System V UNIXで登場し、徐々に移行が開始される。
 FreeBSDもバージョン2.xまでは伝統的な「a.out」を採用していた。しかし同様にPC UNIXであるLinuxがELFを採用する仕様変更を実施したことに伴い、GCCがELFを採用してa.outの対応を中止した。このため仕方なくFreeBSDも3.xからELFのサポートを開始することになる。
 また、他のUNIXやBSDも同様である。
 NetBSDは、NetBSD-1.4/i386はa.outだったが、NetBSD 1.4.1からELFとなったようだ。
 OpenBSDは、OpenBSD 1.2からELFの対応が開始され、OpenBSD 3.4から完全にELFに移行したようだ。

再検索