全てのコンピュータにはメモリーが例外なく搭載されています。なぜならCPUはメモリー無くして動作できないからです。今回はそのメモリーについて少しだけ詳しい説明をしますね。パソコンの性能に直結するので。
情報を記憶する・記録する
パソコンやスマホの他、全てのコンピュータには情報を記憶したり記録するための箱があります。ここでは電源を切ると内容が消えてしまうこと記憶、内容が消えないことを記録としましょう。
コンピュータの教科書的には記憶に使う箱を「主記憶装置」と言い、記録に使う箱は「補助記憶装置」と呼ばれ、役割に明確な違いがあります。今回の説明は主記憶装置として使われるメインメモリーの方です。
- 主記憶装置(メインメモリー)
-
情報を「記憶」する為に使われる。電源を切ると内容が消える箱。動作が高速。
- 補助記憶装置(SSD、ハードディスク等)
-
大容量の情報を「記録」する為に使われる。電源を切っても内容が消えない箱。動作は低速。
例えばスマホは128GBモデル、256GBモデルなどの容量の違いがありますよね。これらの容量は補助記憶装置のことを指しています。因みにスマホではあまり意識されていませんが、主記憶装置(メインメモリー)も必ず搭載されています。
メモリーの役割
CPUとメモリーの関係
私たちが数学の勉強をする時には、問題を読んでからノートに書き込んで計算しますよね。CPUも同じです。足し算をしなさいという命令をメモリーから読み込んだ後、必要な数値(データ)を読み込んで計算し、答えをメモリーに書き込むといった動作を行います。
実際のアプリでは様々な計算や手順を実行させる必要がありますが、それら一連の手続きがひと塊りになったものをプログラムといいます。先ほどメモリーは情報を格納する箱と言いましたが、その内部は更に小さな箱で区切られており、それぞれ住宅の様に住所(アドレス)が割り振られます。プログラムは各アドレスごとに順番に配置され、CPUはそのアドレスを頼りに必要な命令やデータを読み書きしながら処理していきます。
なお、CPUは補助記憶装置とは直接やりとり出来ません。もしそれらに格納されている命令やデータが必要になった時には、そこからメモリーにコピーしてから使います。
メモリーの容量について
メモリーはその容量が大きいほど、多くの命令やデータが格納できます。
でも、どの様なプログラムも必ずメモリーに入りきるとは限りません。最近のアプリはプログラムのサイズが非常に大きくなっていますし、他にも様々なプログラムがメモリーに同居しています。WindowsなどのOSも同居させる必要があります。では、CPUはメモリーに入りきらないプログラムをどの様に動かしているのでしょう。
アプリのプログラムは補助記憶装置に入っています。仮にSSDとすると、アプリを開いた時にSSDからプログラムをメモリーにコピーします。この時に全てのプログラムが入らない場合、まずは必要な部分だけコピーしてプログラムを実行します。
その後、CPUの処理で足りない部分が出てきたら、メモリーのあまり使っていない部分を一旦SSDに退避(書き込み)した上で、SSDから必要な部分を読み出し、退避させた場所に上書きした上で処理を続けます。
この操作が終わるまでCPUは処理を待たされますが、メモリーに比べてSSDの速度は桁違いに遅いため、この速度差によって体感的に遅いと感じてしまうのです。機械的に動くハードディスクの場合はより顕著です。
従って、メモリー容量を大きくしていくとこれらの操作が発生する頻度が減っていきます。メモリーを増設するとパソコンが高速になる理由はこの点にあります。
キャッシュメモリーとは
CPUにはキャッシュメモリーと呼ばれる非常に小さなメモリーが内蔵されています。多くの場合、CPUの動作と同じ速度で動作する非常に高速なメモリーです。
これまで、CPUはメインメモリーに対して読み書きを行うと説明しましたが、CPUの速度に対してメモリーの速度は遅いため、いくらCPUが高速でもメモリーの速度がボトルネックになってしまいます。
このため、CPUコア(命令を取り出して実際の計算を行う部分)とメモリーの間に高速なキャッシュメモリーを入れて、メモリーの一部の内容をキャッシュメモリーに先読みしておくことでボトルネックを解消しています。
動作についての詳細説明はここでは省略しますが、これも容量が大きいほど高速化には有利になります。但し、CPUに内蔵されている物ですので、通常のメモリーの様に後から増設したりパソコンを購入する際に容量選択することはできません。あくまでもCPUのグレードに応じて決定されます。
パソコンを選ぶ時の指標に
パソコンを購入する際はどうしてもCPUに目が行きがちですが、性能を決定づける上でメモリーも同じくらい重要です。
CPUと同じく、メモリーもどの様なアプケーションを使うのかという視点で容量を選ぶのが良いでしょう。メールや動画を見るだけなのか、超大型ゲームや動画編集を楽しみたいのかによって、それらを快適に動かすためのメモリー容量は変わってますし、アプリによっては必要なメモリー容量が決められていますので事前に調べておくのが良いでしょう。