Linuxでサポートされているコンピュータアーキテクチャのリスト

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ
Linuxカーネルのブートメッセージ2.6.25.17

LinuxカーネルGNU CライブラリBusyBox、またはμClinuxuClibcなどのフォークに基づく Linuxファミリのオペレーティングシステムの基本コンポーネントは、ある程度の抽象化を念頭に置いてプログラムされています。また、特定のハードウェアをサポートするアセンブリ言語またはCソースコードには個別のコードパスがあります。したがって、ソースコードは、多数のコンピュータアーキテクチャで正常にコンパイルできます(またはクロスコンパイルできます) 。

さらに、LinuxとLinuxが実行されるハードウェアとの間のインターフェースとして、必要なフリーでオープンソースのソフトウェアも開発されています。たとえば、GNUコンパイラコレクション(GCC)やLLVM / Clangなどのコンパイラを使用できますクロスコンパイルには、 GNUツールチェーンOpenWrt BuildrootOpenEmbeddedなどの完全なツールチェーンが多数用意されていますYocto Projectは、組み込みのユースケースを対象としています。

Linuxカーネルの記事の移植性のセクションには、情報と技術的な詳細への参照が含まれています。

ディスプレイサーバーのような他のコンポーネント、またはBlenderのようなプログラムが存在する場合と存在しない場合があることに注意してください。基本的に、すべてのソフトウェアは、実行されることになっているあらゆる種類のハードウェアに移植する必要があります。つまり、特別に適合させる必要があります。そもそもそのソフトウェアをプログラミングする際に念頭に置いている抽象化のレベルによって、必要な作業が決まります。

関連する用語は移植対象であり、コンピュータアーキテクチャです。これは、少なくともCPUプロセッサの命令セットマイクロアーキテクチャで構成されます。ターゲットには、スーパーコンピューターデスクトップコンピューター、またはSoCなど、システム全体の「システム設計」も含まれます。たとえば、独自のバスが使用されている場合などです。以前は、メモリコントローラはマザーボード上チップセットの一部であり、CPUダイにはありませんでした。

特定の命令セットのサポートはコンパイラのタスクですが、この移植性を可能にするために、ソフトウェアはある程度の抽象化を念頭に置いて作成する必要があります。アセンブリ言語で記述されたコードはすべて、命令セットに固有のものになります。

特定のマイクロアーキテクチャのサポートには、 CPUキャッシュ階層、 TLBなど の最適化が含まれます。

リリース

追加のプロセッサ(特にFreescaleの68000とColdFire)は、MMUのないμClinuxバリアントでサポートされています。

も参照してください

参照

  1. ^ 「Linux_4.17-Linuxカーネル初心者」
  2. ^ 「Linuxカーネルドライバデータベース:CONFIG_ARCH_ARC:アルキメデス」cateee.net 2021-01-05を取得しました。
  3. ^ 「ARMLinux-どんぐり-概要」www.arm.linux.org.uk 2021-01-05を取得しました。
  4. ^ Linux on Palm Tungsten E
  5. ^ 「Kernel/Git / Torvalds/Linux.git-Linuxカーネルソースツリー」
  6. ^ "Csky«arch-kernel/Git / Torvalds/Linux.git-Linuxカーネルソースツリー"
  7. ^ "Arch / C6x:Linux用の新しいアーキテクチャポート[LWN.net]"
  8. ^ 「メタLinuxカーネルポート[LWN.net]」
  9. ^ 「Linux5.4ItaniumIA64-PoweredSGIAltixのサポートの削除-Phoronix」www.phoronix.com 2021-01-05を取得しました。
  10. ^ ELKSプロジェクト
  11. ^ WaybackMachineで2008-05-27にアーカイブされたDreamMultimediaDM800PVR技術データ
  12. ^ 「DreamMultimediaDM500+技術データ」2008年5月30日にオリジナルからアーカイブされました。

外部リンク