回答:
市場の力。
* BSDよりも特にLinuxを対象とするプログラムが多くあります。多くのソフトウェアソースコードは、両方でコンパイルできるほど移植性がありますが、Linuxバイナリを出荷している多くのソフトウェアプロデューサーは、BSD よりも市場シェアが全体的に小さいため、BSDの場合はそうしません。¹
ソフトウェアの一部が別のOSでのみバイナリ形式で利用できる場合、ABIエミュレーションはそれを実行する1つの方法です。これがBSDの機能です。²
昔々、x86 UnixがLinuxよりも市場の大半を占めていたとき、iBCS機能がLinuxに追加され、SCO Unixなど向けにビルドされたバイナリを実行できるようになりました。、Linuxの市場シェアが増加するにつれて、この機能への関心は、それが荒廃に陥るさせたのでことを、減少したのLinux 2.3開発シリーズ中に .³ SCO訴訟は Linuxののうち、この機能をアッシャー助けたが、私はそれが市場の損失に二次的だと信じて機能を生んだ力。
LinuxがいつかBSDバイナリを実行するためのiBCSのような機能を取得できなかった技術的な理由はありませんが、何らかの理由でBSDとLinuxの市場の地位が切り替わらない限りそうではありません。
今日、そのようなことを求める声はほとんどありません。Linux用にビルドされていない、BSD用のバイナリ専用プログラムをいくつ知っていますか?いくつかあるに違いありませんが、それらのほとんどはJunosなどの組み込みBSD向けです。このような機能は、他の方法では実行されない重要なプログラムセットをLinux上で実行できない場合、作成されません。⁴
脚注:
ここではOS XをBSDとしてカウントしていません。これは別のバイナリ互換性の問題だからです。FreeBSD、OpenBSD、およびNetBSDはx86でELFを使用しますが、OS Xはまったく異なる実行形式を使用します。動的なリンケージも、OS Xでは従来のx86 BSD とは大きく異なります。
Linux⇔OS Xバイナリ互換性ストーリーの詳細については、この質問を参照してください。
特定の種類のサメと同様に、前進を止めるソフトウェアは死にます。この現象は、ソフトウェアで発生した場合、窒息ではなくビット腐敗と呼ばれますが、原因と結果は同じです。
コントラストNDISwrapperは、LinuxがWindows XP用に作成されたバイナリのみのネットワークカードドライバーを実行できるようにします。ニーズが特定され、ニーズが満たされます。BSDのみのバイナリを実行するには、これはどこで必要ですか?
binfmt_misc
モジュールを介して非ネイティブバイナリを実行するインフラストラクチャがあります。これにより、任意のバイナリ形式ハンドラーを登録できます。この方法でMonoアプリケーションを実行する人もいますが、まれだと思います。しかし、あなたが言うように、* BSD binfmtハンドラーを書く理由は誰にもありません。