コンピューターの記憶装置は具体的になにがありどんな仕組みなのでしょうか。
ここでは図を使いなるべくイメージがしやすいように説明していきます。
この記事で解決できること。
- 記憶装置の仕組みをイメージしながら理解したい
- RAMとかROMとか出てきたけど違いが分からずもやもや……
5大装置について知りたい方はこちらを先にご覧ください。
記憶装置とは
記憶装置はCPUが、処理するためのプログラムやデータを記録しておくためのものです。
プログラムとは指示書のようなものだよ。
人間が脳で一時的に記憶したり、メモにとって長期間記録したりするようにコンピューターにも同じような機能があるのです。
記憶装置は「主記憶装置」、「キャッシュメモリ」、「補助記憶装置」の3つに大別されます。
これらは(記憶を読み込んだり出したりする)スピードや保存できる量に違いがあります。
CPUに近いほどスピードは速くなりますが、記憶できる量は少なくなります。
例えばコックさん(CPU)が煮りんごを作るとします。
りんごが材料(データ)です。
離れた場所にある大容量の棚(補助記憶装置)から一旦調理台(主記憶装置)へ必要なりんごを移動させ料理(処理)をしていきます。
このようにプログラムを実行する際、データは補助記憶装置とCPUを行き来して記憶・処理を行っています。
補助記憶装置とCPUが直接やり取りすればいいのでは?
補助記憶は速度が遅くてCPUについていけないの。
なので間に橋渡しの存在が必要なのだよ。
CPUと補助記憶装置の速度を埋めるべく橋渡し役となる主記憶装置。
CPUと主記憶装置の間にも同じような機能があります。
それがキャッシュメモリ(上図の一回り小さい調理台)です。
キャッシュメモリはCPUに内蔵しよく使うデータを一時記憶しています。
キャッシュとは一度使ったデータを一時的に保存しておくことだよ。
では、それぞれを深堀りしていきましょう。
主記憶装置(=メインメモリ、内部記憶装置)
主記憶装置はプログラムやデータを一時的に保管しておく場所です。
なぜ一時的なのかというと電気が流れている間しか保管できないからです。
このような性質を揮発性と呼びます。
電源を切るとデータが消えちゃうってこと?
そういうこと。あとデータの読み書きができるのも特徴だよ。
先ほどの図にあてはめると、料理の間は調理台(主記憶装置)からりんごを置いたり持ち出したりできます。
終わると台の上はきれいに片付けるのです。
そして調理台が大きいほどたくさんのりんごを置くことができ効率的。
つまり容量が大きく、複数の処理を同時に行えるのです。
主記憶装置には半導体が使われています。
半導体とは電気を通す(導体)性質と通さない(絶縁体)性質の中間の性質を持つ材料です。
この性質を使って電気のON/OFFを行い電気的にデータの保管をしているのです。
主記憶装置はCPUが直接データを読み書きする場ですが、CPUの処理速度に対して遅くて不十分。
そこで速度の差を埋めるためにキャッシュメモリが活躍します。
キャッシュメモリ
キャッシュメモリは主記憶装置よりも速度が速いですが容量は小さくなります。
役割は主記憶装置とCPUの速度の差を埋めるための橋渡し。
CPUに内蔵し高速でプログラムを保存しつつ読みだしています。
階層構造になっておりL1の方がCPUに近く高速。
しかし容量は小さくなります。
より頻繁に使うデータを近くのL1に置いておくことで、CPUの作業効率を高めているのです。
処理する際、CPUはまず一番近いL1へ必要なデータがないか確認します。
なければL2、L3と順にアクセスするのです。
キャッシュメモリも揮発性で半導体が使われているよ。
主記憶装置やキャッシュメモリの特性である「揮発性」を持つメモリをRAM(揮発性メモリ)と呼びます。
似たような名称でROM(読み出し専用メモリ)もあるのですが、こちらの説明の前に補助記憶装置を学んでいきましょう。
補助記憶装置(=ストレージ)
補助記憶装置の代表例にハードディスクやSDカード、USBメモリなどがあります。
つまり私たちユーザーが直接読み書きする場所となります。
そして主記憶装置の「補助」として多くのデータを長期的に記憶しておく場でもあります。
先ほどの図ではりんごの保管庫にあたります。
料理が終わって(電源を切る)調理台に残った材料は保管庫に戻し、煮りんごを作る際にまた取り出せばOK。
保管庫のりんごが腐ってしまったら(データが古くなったら)破棄(消去)することができます。
そして保管庫(容量)が大きければその分たくさんのりんご(データ)が保管可能です。
補助記憶装置は多種多様です。
そのためここでは「パソコンに内蔵する媒体」「取り外し可能な媒体」の2種類に分け、代表的なものをみてみましょう。
パソコンに内蔵する補助記憶装置
HDDとSSDを比較してみます。
HDDでは高回転するディスクの上をヘッドが動くため、外からの振動や衝撃に弱くなります。
そしてモーターが回転する際の「ブーン」といった音や、書き込みの際の「カリカリ」といったシーク音がします。
またモーター駆動なのでSSDよりも電力を使うのです。
ドライブというのは記憶装置にデータを書き込んだり、読み込んだりするための機械です。
HDDはHD(ハードディスク)とD(ドライブ)が一体化したもの。
ハードディスクに読み書きするためには、ドライブが必須なのです。
同様にCDへ読み書きするにはCDドライブが、DVDへ読み書きするにはDVDドライブが必要となります。
自分のパソコンにはどっちが入っているのだろう。
タスクマネージャーから確認できます。
下の場合はSSDだね。
取り外し可能な補助記憶装置
リムーバルメディア(取り外し可能な記録媒体)はいくつかの種類があります。
ここでは代表的な媒体の容量と記録方式を比較してみます。
ディスク型の媒体は読み出し(再生)のみ、読み書き可能(再生・保存)、1度のみ書き込み可能といったようにいくつかの種類があります。
そのため用途に合わせた選択が必要です。
USBメモリとSDカードはフラッシュメモリの一種になります。
また補助記憶装置は不揮発性のため、電源を切ってもデータは消えません。
半導体メモリの種類 ~RAMとROM~
半導体メモリは記憶装置に用いられている部品です。
特徴は半導体の性質を活かし、電気制御でデータの読み書きを行うこと。
データの読み書きには他にも光式(CD)や磁気式(HDD)があります。
この半導体メモリは種類分けすることができます。
★SSD、USBメモリ、SDカードなどに使われている
RAM(Random Access Memory)は揮発性メモリ。電源を切るとデータが消失します。
ROM(Read Only Memory)は不揮発性メモリで電源を切ってもデータは保持されます。
“Read Only”なのに書き込み可って書いてあるけど間違えじゃ……
元々は読み出し専用のみだったけれど、後から書き込みできるROMができたの。
なので読み出し専用ROMはマスクROMとして区別しているのだよ。
本来の意味と性能がずれててちょっとややこしいな。
半導体メモリの場合は、「揮発か不揮発かで区分けしている」と考えてみてね。
半導体メモリ以外の媒体ですとROMは読み出し専用の意味で使われています。
例)CD-ROM DVD-ROM
RAMには2種類あります。
SRAMは主にキャッシュメモリ、DRAMは主記憶装置に使われています。
それぞれ比較してみましょう。
リフレッシュとはDRAMの保持データが失われないように定期的に電荷を足してあげることです。
DRAMは電荷を貯めることでデータを保持しますが、電源がONの状態でも放電により自然と電荷が減ってしまうのです。
フラッシュメモリは「書き込み可」に属するROMです。
そのため半導体が使われています。
書き込み回数に制限があり、CDやDVDといった媒体に比べて寿命は短くなります。
SDカードなど小型で持ち運びしやすいのはメリットだね。
まとめ
この記事で学んだこと
- 記憶装置は「主記憶装置」「キャッシュメモリ」「補助記憶装置」の3つに分類
- 主記憶装置はコンピューターが処理を行うための一時記憶場所
- キャッシュメモリはCPUと主記憶装置の橋渡し役
- 補助記憶装置は人間が読み書きできる保存場所
- RAMは揮発性、ROMは不揮発性
次回は制御と演算について学びます。
コメント