Linux豆知識 030
アーキテクチャ
公開日:2010年02月15日
今回は、「アーキテクチャ」という用語について。
PCに関する文書などで、「x86アーキテクチャ」などというフレーズに出会ったことがある方も多いのではないでしょうか。しかしこの用語、わかったようなわからないような・・・そんな感想をお持ちの方もおられるでしょう。
アーキテクチャ・・・英語で「architecture」のこと。これには「建築」、「建築様式」、「構造」といった意味があります。実はアーキテクチャという用語自体は、いろいろな分野で使われている「構造」という意味合いの用語だ、ということができます。
そして、さらに実はコンピュータの世界でも「アーキテクチャ」と言った場合、いくつかの使い方があるようです。ソフトウェアの設計に関しても「アーキテクチャ」という用語が使われますし、ハードウェアに関しても「アーキテクチャ」という用語が使われます。使われ方が多岐に渡るため、一概にはいえませんが、前述の「構造」や「設計様式」といた意味では概ね共通しているようです。
さて、「x86アーキテクチャ」というのは何を指すのか・・・「x86」は、コンピュータの頭脳とも呼べるCPUの一種です。そして、「x86アーキテクチャ」と言った場合、x86 CPUを中心としたハードウェアの構成のこと、と言えるでしょう。要するに、CPUだけではコンピュータは動作しませんし、CPUによって、どのようなハードウェア構成にするか(どのようなマザーボードを使えばよいのか?どのようなメモリを使えばよいのか?などなど)が変わってきます。このハードウェアの設計全体を「アーキテクチャ」と呼ぶ、と考えればよいでしょう。
(ハードウェアの)アーキテクチャという用語がよく出てくる理由は、ソフトウェアも「ハードウェアのアーキテクチャによって変わってくるから」ということができます。すなわち、同じソフトウェアでも、あるアーキテクチャに対してのみ動作し、ほかでは動作しない、あるいは動作するが最適化されていない、という事態が考えられるわけです。このような事情があるので、現場では、扱おうとしているコンピュータがどのアーキテクチャなのか?といったことは、必ず把握しておく必要が生じることになります。