Tweet

組み込み Linux 入門 - CPU アーキテクチャ その1

組み込みボード上で Linux を動かすに当たって,まず

  • どのメーカのどのボードを採用するか
  • どの SoC を採用してボードを設計するか

という問題がある.

今回は「x86 対 非 x86」という軸で考えてみることにする.

x86

x86 というのは,もちろん,Intel の i386 CPU とその互換品・後継品のことである. x86 CPU を使った組み込み用ボードというのが世の中にはある.

x86 ボードの特徴は良くも悪くも「PC/AT 互換機の遺産」に尽きる.

x86 上で Linux を動かす利点はやはり「ソフトウェアの安定性」だろう. Linux デスクトップや Linux サーバは x86 がほとんどで,カーネル・アプリケーションともに x86 上での動作実績が一番多い. つまり,プログラムの互換性などに悩まされることが少ないと言える. また,BIOS やブートローダなどは PC/AT のものが使用できるので,これらの移植作業をする必要が無い.

欠点は

  • ボードのハードウェア構成
  • 消費電力
  • コスト

である. x86 ボードでは,PC/AT 互換を保つためにディスプレイやキーボードなどのインターフェースが載っている場合が多い. このため,消費電力やボードのコストが大きくなる傾向がある. Linux を動かすには PC/AT 互換である必要はないのだけれど,x86 組み込みボードの場合「Windows を動かす」という用途も想定されていることが多いので,どうしてもデバイスが多くなる傾向がある.

CPU コア自体は,昔は「x86 は CISC アーキテクチャなので消費電力が大きい」みたいな話もあったけれど,今では CISC / RISC について論じるのはあまり意味が無い. が,やはり「低消費電力」という点では RISC CPU 側に一日の長があるようである.

非 x86

x86 でない CPU で Linux というと,今,一番有名なのは ARM だろう. ほとんどの Android 端末は ARM を採用しており,Android OS のカーネルは Linux がベースになっている.

非 x86 CPU での特徴は,x86 でのちょうど反対になる.

  • ソフトウェアの安定性・動作実績では x86 に劣る
  • ハードウェア構成は組み込み向き
    • 余計なデバイスが載っている場合でも,消費電力を意識した SoC ではデバイスの動作を止めることのできるものもある
  • 低コスト

といったところである.

まとめ

「組み込み Linux」というと,真っ先に ARM なんかの非 x86 CPU を連想することも多いけれど,システム要件とこれらの得失を考慮して「x86 組み込みボードではどうなのか」ということも一度は検討すべきだろう.


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-07-18 (水) 18:52:48 (2696d)