GNU/Linux >> Linux の 問題 >  >> Linux

Linux –異なるLinux / UNIXカーネルは交換可能ですか?

Linuxカーネルを使用して、たとえばFreeBSDで使用したり、その逆を行ったりすることはできますか(たとえば、DebianのFreeBSDカーネル)。普遍的な答えはありますか?制限は何ですか?障害物は何ですか?

承認された回答:

いいえ、Unixスタイルのオペレーティングシステムのさまざまな実装のカーネルは互換性がありません。特に、それらはすべて、システムの残りの部分(ユーザースペース)に対して異なるインターフェイスを提供するためです—システムコール(ioctlを含む) 詳細)、使用するさまざまな仮想ファイルシステム…

ソースレベルである程度互換性があるのは、カーネルとCライブラリの組み合わせ、つまりカーネルとライブラリが公開するユーザーレベルのAPIです(基本的に、POSIXで記述されたレイヤーのビューはかどうかを検討する 実際にはPOSIX)。この例としては、FreeBSDカーネル上にDebianシステムを構築するDebian GNU / kFreeBSDや、Hurd上にDebianシステムを構築するDebian GNU/Hurdがあります。

これはカーネルの互換性のレベルではありませんが、一般的なアプリケーションのバイナリインターフェイスを標準化して、再コンパイルせずにさまざまなシステムでバイナリを使用できるようにする試みが行われています。一例として、Intel Binarycompatible Standardがあります。これにより、それに準拠するバイナリを、iBCS 2レイヤーを備えた古いバージョンのLinuxを含め、それを実装するすべてのUnixシステムで実行できます。私はこれを90年代後半にLinuxでWordPerfectを実行するために使用しました。


Linux
  1. Linux – Gnu / linuxでファイルパーミッションなどを設定するさまざまな方法は何ですか?

  2. Linux – LinuxはUnixですか?

  3. Linuxのシェルの種類は何ですか?

  1. Linux と UNIX カーネルの主な違い

  2. UNIX / Linux :シェルとは?異なるシェルとは何ですか?

  3. Linux は Unix ですか?

  1. Linux のハイ メモリとロー メモリとは何ですか?

  2. Linux カーネル スレッドは本当にカーネル プロセスですか?

  3. 異なる Linux/Unix カーネルは互換性がありますか?