コンピューターのパーツ

Elementry
最終更新: タグ: Introduction

なぜこれを知る必要があるか

毎日コンピューターを使っているが、中で何が起きているか知っているだろうか?Windows のノートパソコンでも、MacBook でも、Microsoft Surface タブレットでも、どのコンピューターも同じ少数のコアコンポーネントで作られている。その部品が何で、それぞれが実際に何をするかを知ると、コンピューターを不思議な黒い箱としてではなく、理解できる機械として見られるようになる。

そのメンタルモデルがコンピュータサイエンスの他の全てのための土台だ。構築していこう。

CPU — 仕事をする脳

CPU(Central Processing Unit、中央処理装置)は実際にプログラムを動かすコンポーネントだ。すべての計算、すべての判断、画面上のすべてのアニメーション — それらすべては CPU が命令を一つひとつ、毎秒数十億回のペースで実行している。

CPU をデスクに向かって高速に作業する人として想像してほしい。タスクを拾い上げ、必要な計算や比較をこなして結果を置き、すぐ次のタスクを拾い上げる。これをあまりに速くこなすため、すべてが同時に起きているように感じる。実際にはタスクを一つずつ(あるいはいくつか同時に — 後ほど説明する)高速にこなしているのだが。

デスクトップタワー PC では、CPU はトランプカードほどの大きさのフラットな四角いチップで、大型のファンや水冷ブロックの下に隠れている。ノートパソコンでは似たチップが使われるが、消費電力と発熱を抑えるよう設計されている。Surface タブレットでは CPU はさらにコンパクトで、薄く軽くするために CPU、グラフィックス、その他のチップが一つの小さなパッケージ — SoC(System on a Chip、システムオンチップ)— にまとめられていることもある。

見た目は違う。パッケージも違う。でも仕事は同じだ。

コア数とクロック速度

「3.2 GHz、10コアプロセッサー」というスペックを見たことがあるだろう。意味はこうだ:

  • クロック速度(clock speed)— **ギガヘルツ(GHz)**で測られ、CPU が毎秒こなせる基本的な操作の数を大まかに表す。3.2 GHz なら、毎秒約32億の基本操作をこなしている。
  • コア(core)— 現代の CPU にはコアと呼ばれる複数の独立した処理ユニットが入っている。8コアの CPU は、8人の人が8つの机でそれぞれ別のタスクを同時にこなしているようなものだ。音楽を聴きながらブラウザを開いてファイルをダウンロードしても止まらないのはそのためだ。

今のところ重要なのはシンプルだ:CPU はコードを実行するもの。他の部品はすべてそれを支えるために存在する。

RAM — CPU の高速で一時的なワークスペース

CPU は即座にアクセスできるデータしか扱えない。ストレージドライブ(次で説明する)は遅すぎる — データが近くにある場合と比べて、CPU は何百万倍も待つことになる。そのためコンピューターは、はるかに速くて CPU に近い別のメモリを使う。これを RAM(Random Access Memory、ランダムアクセスメモリ)と呼ぶ。

アプリを開くと、OS はそのコードとデータをストレージから RAM に読み込む。CPU はプログラムを動かしながら、猛烈な速度で RAM の読み書きを行う。

使いやすい例えで言えば、RAM は作業台の表面だ。今作業しているものはすべてそこに広げてある — 素早く手が届き、並べ替えやすく、目の前にある。ストレージは部屋の向こう側のキャビネットだ。資料を取りに行き、作業台に持ってきて、そこで作業する。

重要な点がある:RAM は揮発性(volatile)だ。電源が切れると — ノートパソコンをシャットダウンしたり、Surface のバッテリーが切れたりすると — RAM の内容はすべて一瞬で消える。これがアプリが再起動時に閉じる理由であり、「未保存の変更」が「まだストレージに書き込まれていない変更」を意味する理由だ。

現代の典型的なノートパソコンには 16〜32 GB の RAM が搭載されている。タブレットは 8〜16 GB が多く、薄型デバイスでは基板に直接はんだ付けされていて、古いデスクトップのように交換はできない。物理的な配置は違うが、役割は同じ — 現在動いているもののための高速で一時的なワークスペース。

ストレージ — ファイルが永続的に保存される場所

ストレージは先ほどの例えでのキャビネットだ。電源が切れても生き残る必要のあるすべてのものを保持する — OS、インストールされたアプリ、写真、動画、ドキュメント、音楽、ゲームのセーブデータ — すべてだ。

RAM と違い、ストレージは不揮発性(non-volatile)だ — 電源が切れても内容は無事だ。ドキュメントを保存してノートパソコンを閉じると、ファイルはストレージドライブにある。一週間後に開いても、まだそこにある。

よく見かける二種類のストレージ:

  • HDD(Hard Disk Drive、ハードディスクドライブ)— 回転する磁気プラッターにデータを保存し、前後に動く小さなアームで読む。HDD は大容量でも安価だが、比較的遅く、落としたり振動させたりすると損傷することがある(プラッターは毎分数千回転している)。主に古いデスクトップや廉価なデスクトップコンピューターに使われている。
  • SSD(Solid-State Drive、ソリッドステートドライブ)— 可動部品のないフラッシュメモリチップにデータを保存する。SSD は HDD より劇的に速く、静かで、はるかに耐久性が高い。現代のノートパソコン、Surface タブレット、ほとんどのデスクトップは SSD を使っている。Surface ではほぼ確実に基板に直接はんだ付けされた SSD が入っている。

速度の差は大きい — HDD から OS を読み込むのに 30〜60 秒かかることもあるが、SSD からなら同じ作業が 15 秒以内で終わることが多い。現代のコンピューターでアプリがほぼ瞬時に起動するのは、SSD のおかげだ。

入出力デバイス

CPU、RAM、ストレージはすべて機械の中に隠れていて目には見えない。コンピューターを実際に使うには、それと通信する方法が必要だ。これを I/O デバイス(I/O device)と呼ぶ — 入力(input)デバイスはコンピューターに情報を送り込み出力(output)デバイスは情報を出す

よくある入力デバイス

  • キーボード(keyboard)
  • マウス(mouse)またはトラックパッド(trackpad)
  • タッチスクリーン(touchscreen)— タブレットやスマートフォンの主な入力方法。画面がそのままキーボードとマウスになる
  • マイク(microphone)
  • カメラやウェブカメラ(webcam)
  • 指紋センサーや Face ID センサー

よくある出力デバイス

  • ディスプレイ(display)(画面)
  • スピーカー(speaker)
  • プリンター(printer)

多くのデバイスは入力と出力の両方だ。タッチスクリーンは映像を表示し(出力)、タッチを検出する(入力)。USB や Thunderbolt ポートは双方向にデータを転送できる。内蔵マイク付きのヘッドフォンは両方を同時にこなす。

これらはデスクトップタワーに固有のものではない。ノートパソコンにはキーボード、トラックパッド、画面、スピーカー、カメラがすべて一枚の板に内蔵されている。タブレットはさらに凝縮されている — 画面がそのままタッチスクリーンになり、Type Cover がキーボードになり、背面カメラがウェブカメラになる。フォームファクターは縮小し続けるが、入力と出力というカテゴリーは変わらない。

全部がつながる方法

これらのコンポーネントはバラバラに浮かんでいるわけではない — お互いに通信する必要がある。それを繋ぐのがマザーボード(motherboard、ロジックボードやシステムボードとも呼ぶ)だ — すべてが接続またははんだ付けされる大きな回路基板だ。

マザーボードはバス(bus)と呼ばれる電気経路を提供する。そこを通ってデータが CPU、RAM、ストレージ、I/O デバイスの間を行き来する。キーを押すと、そのシグナルはキーボードからバスを通って CPU に届く。ファイルを保存すると、データは RAM からバスを通ってストレージドライブに流れる。

デスクトップタワーなら、ケースを開ければ大きく目立つマザーボードが見える。ノートパソコンでは、シャーシに収まったコンパクトな基板だ。タブレットでは、他のすべてと一緒にぎっしり詰まった小さなロジックボードだ — でも確かに存在して、同じ仕事をしている。

外側の見た目がどうであれ、同じ四つのコンポーネントが必ず存在し、中央の基板で繋がっている:

コンポーネントデータを保持する?速い?電源オフでも生き残る?
CPUいいえ(小さなレジスタのみ)非常に高速該当なし — プロセッサーだから
RAMはい非常に高速いいえ(揮発性)
ストレージ(SSD/HDD)はい遅めはい(不揮発性)
I/O デバイス様々様々様々

まとめ

  • CPU(Central Processing Unit)はプログラムを実行する。実際に考える部分 — 毎秒数十億回の計算と判断を行う。
  • RAM は CPU が使っているデータとコードを保持する高速で一時的なメモリだ。電源が切れると完全に消去される。
  • ストレージ(SSD または HDD)はデータを永続的に保持する。SSD が速くて耐久性が高いため、現代のノートパソコンとタブレットで主流だ。
  • I/O デバイスはコンピューターと外界を繋ぐ。入力デバイス(キーボード、タッチスクリーン、マイク)はデータを送り込み、出力デバイス(ディスプレイ、スピーカー)はデータを出す。タッチスクリーンのように、両方を兼ねるデバイスも多い。
  • これらのコンポーネントはすべてマザーボードで繋がっていて、データの受け渡しに使う電気バスを提供する。
  • タワー PC、ノートパソコン、Surface タブレットのどれであれ、すべてのコンピューターに四種類のコンポーネントが揃っている — ただパッケージが違うだけだ。

次のステップ

部品の名前と役割を知ったなら、自然な疑問が浮かぶ — それらはどうやって一緒に動いてプログラムを動かすのか?それをカバーするのが フォン・ノイマンアーキテクチャ だ — CPU、RAM、ストレージが連携してコードを実行する根本的なモデルと、過去75年間に作られたほぼすべてのコンピューターがなぜ同じ基本設計に従うのかを説明する。