基礎からわかる!パソコン入門・再入門 / Word・Excel・PowerPoint・Outlook

メモリとは|主記憶装置

  • 著者:YAMANJO
  • 公開日:2008年7月25日
  • 最終更新日:2025年1月20日

コンピュータの5大装置のうち、主記憶装置(メモリ)とはどのような装置なのか学習していきましょう。

メモリとは

コンピュータの5大装置 で学習のとおり、記憶装置は主記憶装置と補助記憶装置に大別されます。

主記憶装置と補助記憶装置の違いは、簡単に言えば、データを長期的に記憶するかしないかの違いです。主記憶装置は一定時間後に記憶が消去されるのに対し、補助記憶装置はユーザーが削除するまで消去されません。

記憶が消えないほうが「主」のようなイメージがありますが、視点はCPUです。CPUが主として使う記憶装置と補助的に使う記憶装置という意味で、主記憶装置は、CPUが直接アクセスする重要な装置になります。

ユーザー視点では、主として操作するのは補助記憶装置のほうで、基本的に主記憶装置を操作することはありません。補助記憶装置については次項で詳しく学習しますが、HDDSSDなどのストレージと呼ばれる装置になります。

主記憶装置は、

メインメモリ

と呼ばれています。

単純に「メモリ」と呼ばれる場合もあり、一般的に「メモリ」と言えば主記憶装置を指します。(詳しくは後述しますが、メモリは主記憶装置を含む大きな概念になります)

メモリのイメージ

上図のような装置(部品)で、パソコンのメモリースロットに差し込んで使用します。そのため、スロットに空きがあれば、ユーザーが容易に増設することが可能です。

メモリとはどのような装置なのかというと、

起動するプログラムを一時的に記憶しておく装置

になります。

あくまでも「一時的」に記憶しておくだけの装置です。

なぜ、一時的に記憶しておく必要があるのかというと、コンピュータはプログラムを実行する際に、

プログラムをメインメモリ上に読み込まなければならない

という仕組みになっているからです。

例えば、Wordを実行する場合は、Wordがメインメモリ上に読み込まれます。同時にExcelも立ち上げる場合は、それぞれ別々のメモリ領域に読み込まれ、同時に動作することが可能です。

WordやExcelといったプログラムファイルや作成したデータファイルは、消去されないように補助記憶装置に保存されています。つまり、CPUが処理を行うときには、補助記憶装置に保存してあるプログラムをまずメインメモリに読み込んで、メインメモリからデータを受け取って処理を行っているのです。

なぜ、メモリが必要か?

なぜ、このような仕組みなっているのかというと、

主記憶装置のほうが補助記憶装置よりも処理速度が速い

からです。

逆に言えば、補助記憶装置の処理速度が遅いということです。前項で学習した「レジスタ」を理解していれば、意味がわかると思います。プログラムをメモリに読み込まなければならない理由は、低速の補助記憶装置からデータを直接取り出して処理していたのでは、CPUの処理速度に対してあまりにも遅く、ギャップが大きいためです。

CPUの高速処理に追いつくために、処理の速いメインメモリにいったんデータを読み込んでからCPUに渡すことで、処理速度を上げているというわけです。したがって、CPUと補助記憶装置の橋渡しをしていると言えます。

前項ではメインメモリでも低速と解説しました。実際には、メインメモリ → キャッシュメモリ → レジスタ → CPUとデータを渡し、CPUに近いメモリほど高速に動作しますが、補助記憶装置に比べるとはるかに高速であり、メインメモリが補助記憶装置からプログラムを読み込むことで処理がスタートしていくことを理解しておきましょう。

こうして、メインメモリにプログラムを読み込んだ状態が「プロセス」になります。OSの役割 で学習のとおり、プロセスとは「実行中のプログラム」を意味しますが、プログラムがメモリに読み込まれて実行中になった状態のことを言います。

前項までの学習と合わせて、処理の流れを具体的に説明すると、まず、プログラムの実行ファイルが補助記憶装置から取り出されて、メインメモリに読み込まれて実行可能な状態になります。これがプロセスの生成になります。

そして、プロセスごとにハードウェア資源が確保されます。ただし、論理プロセッサはこの中に含まれず、プロセス内のスレッドは、OSにより適切な論理プロセッサが割り当てられて処理されていくという流れになります。

つまり、主記憶装置とはCPUの速度に対応するために、補助記憶装置から使用するプログラムを取り出して、いつでも実行可能な状態にするための装置ということになります。

例えるなら、餅つきの「杵でつく人」がCPUで、餅を「ひっくり返す人」がメモリです。そして、餅米を炊いたり丸めたりする「その他の作業をする人」が補助記憶装置です。

餅をつくには「その他の作業をする人(補助記憶装置)」が「ひっくり返す人(メモリ)」に餅米(データ)を渡して、「ひっくり返す人(メモリ)」は「杵でつく人(CPU)」が叩きやすいようにお膳立てします。そして、できあがった餅を「その他の作業をする人(補助記憶装置)」が保管します。

このとき、もし「ひっくり返す人(メモリ)」に餅米(データ)を渡さなかったら非常に効率が悪くなります。なぜなら「その他の作業をする人(補助記憶装置)」では「餅をつく人(CPU)」のスピードについていけないからです。「ひっくり返す人(メモリ)」だけが「餅をつく人(CPU)」と息が合うのです。

CPUと主記憶装置と補助記憶装置の概念図

また、メモリはよく机に例えられます。

人間が仕事をするとき、机の上に資料を広げて作業します。メモリはこの机の「広さ」になります。机が広いほど効率的に仕事ができるのと同じように、メモリの容量が多いほどパソコンは複数の処理を同時に行うことができ、スムーズに動作します。

そして、作業が終われば机の上を片付けてしまうのと同じように、メモリの記憶は一時的で一定時間後に消去されます。

対して、補助記憶装置は、机の「引き出し」になります。必要な時に取り出して使いますが、机の上より探すのが遅くなります。ただし、引き出しにしまった書類と同じで、故意に捨てないとデータが消去されることはありません。

キャッシュメモリとは

このように、主記憶装置は、CPUと補助記憶装置の速度のギャップを埋めるために必要な装置になります。

しかし、これでもまだギャップが大きいために、メインメモリだけではなく、CPUとメインメモリの間、メインメモリと補助記憶装置の間にもメモリ領域を設けています。

CPUとメインメモリの間のメモリを「キャッシュメモリ」、メインメモリと補助記憶装置の間のメモリを「ディスクキャッシュ」と言います。

キャッシュメモリは、メインメモリよりも速いメモリで、コア内のレジスタとメインメモリの橋渡しをします。ディスクキャッシュは、補助記憶装置よりも速いメモリで、メインメモリに設けられている領域になります。

キャッシュは頻繁に使用されるデータを一時的に保存します。キャッシュにデータがあれば、下位の装置までデータを取りに行く必要がなくなり、その分だけ効率的に動作するという仕組みです。よく使う資料を引き出しにしまわずに、机の上に置いたままにしておくことと同じです。

キャッシュメモリの概念図

これらのメモリは、CPUに近いほど高速になるように配置されています。上図のとおり、高速になるほど容量が小さくなり、低速になるほど容量が大きくなっていきます。

スワップファイルとは

主記憶装置は、補助記憶装置と比較すると、はるかに高速ですが、容量ははるかに劣ります。

実行中のプログラムが閉じられるとプロセスは消去されるため、逆に言えば、それほど大きな容量は必要ありません。日常的な作業に必要なプロセスの容量だけが確保されていればよいことになります。

メモリの容量は、現在の一般的なパソコンで4~16GB程度の容量になっています。ハードディスクなどの補助記憶装置は何百GB~数TBもあるのに比べたら相当小さいものです。Windows98当時のメモリは、64MBほどでした。(データサイズについては、デジタルデータの単位と容量 を参照してください)

メモリの容量が小さい理由としては「高価」だからということもあります。後述しますが、メモリもいくつかの種類に分類することができ、高速なメモリほどさらに高価になっています。

そのため、メモリはプロセスが多くなると容量の限界に達することがあります。

メモリの容量が限界に達した場合は、補助記憶装置上にメモリ領域を確保して不足分を補います。あくまで仮想的なメモリとして補助記憶装置を利用するということです。

この仮想メモリは「スワップファイル」と呼ばれ、速度が遅い補助記憶装置を利用するために、スワップファイルに依存するとシステムのパフォーマンスが低下します。

経験のある方も多いと思いますが、いくつものウィンドウを開いて作業したり、いくつものアプリケーションソフトを立ち上げていると、パソコンの動作が非常に遅くなることがあります。

これが、いわゆるメモリ不足という現象です。

メモリの容量を超えるほどの作業を行っている

ということです。

例えば、いくつものアプリケーションソフトを立ち上げて同時に実行していたり、動画編集等の負荷の高い処理を行っている場合などによく起こります。

メモリが原因のすべてというわけではありませんが、動作が鈍くなった場合、不要なアプリケーションやバックグラウンドで自動的に実行しているソフトを終了するか、再起動してシステムをリセットすることで解消できることが多いです。

パソコンを買う時には、動画編集やゲームなど負荷の高い作業をする場合を除き、メモリ容量を優先して選ぶとよいでしょう。

揮発性と不揮発性

なぜ、メモリの中で速度が異なるのかと言うと、高価な部品を使っているというわけではなく、その構造にあります。

これまで学習してきたメモリに共通するのは、処理が終わったデータが消去されていくということです。(厳密に言えば、新しいデータが書き込まれる際に古いデータが上書きされます)つまり、データの保存が一時的であるということです。

しかし、それとは別に、

電源の供給が切れると保存されているデータが失われる

という共通点もあります。

電源が供給されている間だけしかデータを保持できないということですが、データが上書きされる以外にも、電源の供給が途絶えると無条件にデータが消去されます。

これを、

揮発性(きはつせい)

と言います。

揮発性のメモリを「揮発性メモリ」と言いますが、これらは電源をOFFにするとデータが消去されます。

しかし、通電されている状態でも、メモリ内のコンデンサと呼ばれる電気を蓄える部品から、時間の経過とともに電荷が漏れていきます。そのため、放っておくと自然に放電しきってしまい、記憶データが消去されてしまいます。

これを防ぐために、一定時間ごとに再充電する動作を行なっています。

この再充電のことを、

リフレッシュ

と言います。

リフレッシュを定期的に行うことで、コンデンサ内の電荷を補充してデータを保持します。リフレッシュは、非常に短い時間の間隔(数ミリ秒ごと)で行われており、リフレッシュ時間は非常に短い(ナノ秒単位)ですが、その分だけ処理は遅くなります。しかし、回路の構造が単純で安価に製造できるという特徴があります。

したがって、リフレッシュが必要なメモリは、比較的安価でそこそこ高速なメモリということになります。ただ、これでおわかりのとおり、リフレッシュが不要な揮発性メモリも存在します。

リフレッシュが不要な回路の説明は専門的になるので割愛しますが、こちらは電源が供給されている限り、データを保持し続けることができます。当然、フレッシュが必要な製品に比べて速度が速く、高価になります。

メインメモリにはリフレッシュが必要な製品で、キャッシュメモリやレジスタにはリフレッシュが不要な製品が使われることが一般的です。高価なメモリと安価なメモリを組み合わせることで、パソコンは適度な価格で、高速な処理ができるようになっています。

揮発性のメモリは、このように高速に動作しますが、リフレッシュの有無にかかわらず、電源の供給が途絶えるとデータが消去されるという特徴があります。

対して、電源が途絶えてもデータを保持し続けることが可能なメモリもあります。

この特徴を、

不揮発性(ふきはつせい)

と言います。

不揮発性メモリは、データの長期保存を目的としています。そのため、処理速度は揮発性メモリに比べて遅く、メインメモリやレジスタに利用される揮発性メモリとは用途が異なります。

その用途については後述しますが、

主記憶装置以外のメモリもある

ということなので、整理して理解しておきましょう。

リフレッシュと混同しがちですが、リフレッシュは揮発性メモリの仕組みで、主記憶装置は揮発性メモリになります。しかし、処理速度が遅い不揮発性メモリは、主記憶装置には不向きです。メモリ=主記憶装置と理解してしまっていると、不揮発性メモリの理解が難しくなるので、注意してください。

先述のとおり、メモリとは主記憶装置を含む大きな概念です。例えば、レジスタやキャッシュメモリは、主記憶装置(メインメモリ)とは区別されます。

あくまで主記憶装置は、数あるメモリの種類の中のひとつになります。

RAMとROM

では、具体的にメモリにはどのような種類があるのか知っておきましょう。

メモリは大きく、

RAMROM

分類されます。

RAMは「ラム」、ROMは「ロム」と読みます。

メインメモリは「RAM」に該当し、RAMは「Random Access Memory」の略になります。「ランダムアクセス」とは、メモリ内の任意のデータ位置に直接アクセスできること意味します。

RAMは、CPUが必要とするデータを順番に読み込む必要がなく、データがどこに格納されていても直接その位置にアクセスできます。これによって、非常に高速でデータの読み書きができるため「ランダムアクセスメモリ」と呼ばれています。

ただし、学習のとおり電源を切ると内容が消えてしまう揮発性のメモリです。なぜ、揮発性なのかと言うと、揮発性メモリの設計が「速度重視」であるためです。簡単に言えば、電気によってデータを保持する方法が単純で高速だからです。

一方、不揮発性のメモリは、データの長期保存を目的としているため、複雑な仕組みが必要となり、速度が犠牲になります。

したがって、メインメモリより上位のキャッシュメモリやレジスタも当然RAMになります。処理のたびにデータを読み込むので、RAMの記憶は頻繁に書き換えられていきます。

RAMはさらに、

DRAMSRAM

に分類することができます。

DRAMは「ディーラム」、SRAMは「エスラム」と読みます。それぞれ「Dynamic Random Access Memory」と「Static Random Access Memory」の略になります。

DRAMはメインメモリに使われるリフレッシュが必要なRAMで、SRAMはリフレッシュが不要なさらに高速のレジスタやキャッシュメモリに使われるRAMになります。

よって、DRAMよりSRAMの方が高速で高価ですが、下図のとおり、速度を優先すると、回路の複雑化により、結果的に容量は小さくなっていきます。

DLAMとSRAMの概念図

次に、ROMについてです。

ROMは「Read Only Memory」の略で、文字どおり、読み取り専用を意味する「リードオンリー」のメモリです。つまり、自由に書き込むことができず、すでに書き込まれている情報を読み取るだけのメモリになります。

具体的には、パソコンの起動時に読み込むプログラムや、書き換えられると動作不良を起こすようなシステム情報を記憶させる際に使用されます。ソフトウェアの種類 で学習したBIOS(UEFI)やファームウェアなどがROMに書き込まれています。

また、CD-ROMやDVD-ROMといったディスクメディアは、このROMと同じ意味になります。市販のソフトウェアなどの読み出し専用ディスクで、一般ユーザーがデータを書き込むことはできません。CD-RやDVD-Rといったディスクとはまた異なるので注意してください。(詳しくは、補助記憶装置の項で学習します)

そのため、ROMのデータは電源を切っても保持されます。すなわち、ROMが「不揮発性」のメモリになります。

不揮発性メモリは、揮発性メモリよりも速度は劣るものの、データを長期的に保存することができます。一般的に、製造段階でROMにデータが書き込まれるため、ユーザーがデータを追加したり、変更したりすることはできません。

ただし、ここからがややこしいところですが、ROMも技術の進歩により、単純に読み取り専用とは言えなくなってきました。

なぜなら、書き込みや消去が可能なROMが開発されてきたからです。書き込み可能であっても、電源をOFFにしてもデータが消えることはないので、ROMの分類になっています。

現在ROMには、マスクROM、EPROM(イーピーロム)、EEPROM(イーツーピーロム)、フラッシュメモリなどの多くの種類が開発されています。

マスクROMは、あらかじめメモリ内に書き込まれた状態で工場から出荷される書き換え不能のROMで、これが従来の意味での読み取り専用のROMになります。

EPROMは、紫外線を利用してデータを消去するROMになります。専用の紫外線消去装置が必要で、一度書き込むと全体を消去しない限り、再書き込みができないという特徴があります。書き換えの制限が大きく、基本的にはマスクROMと用途は同じになりますが、EEPROMやフラッシュメモリの登場により、現在ではあまり利用されていません。

EEPROMは、電気信号を利用してデータを消去します。一部のデータのみを消去して再書き込みが可能で、書き換えの手順が柔軟で実用性が高いROMです。

フラッシュメモリも同様に、電気信号を利用してデータを消去します。EEPROMとの違いは、EEPROMがバイト単位でごく少量のデータの書き換えが可能であるのに対し、フラッシュメモリは「セクタ」というデータの保存単位(4KB程度)で書き換えが可能という違いがあります。

ただし、EEPROMは細かい単位での書き換えが可能ですが、フラッシュメモリより書き換え速度は遅く、大容量データの保存には不向きになっています。例えば、家電製品での設定情報(音量、タイマー設定など)の保存などに利用されています。

フラッシュメモリは、USBタイプで広く普及しているメモリです。EEPROMと比較して、データの消去がカメラの「フラッシュ」のように速いというのが名前の由来になっています。実際には、効率よく消去できるということで、完全に一瞬というわけではありません。

フラッシュメモリには、NAND型(ナンド)とNOR型(ノア)の2種類があり、広く普及しているのはNAND型です。NAND型は、連続的なデータの読み書きに優れており、ランダムアクセスはNOR型より劣るものの、大容量でコストパフォーマンスが高いという特長があります。そのため、USBメモリ、SSD、SDカードなど、大量のデータ保存を目的とする用途で広く利用されています。スマートフォンのストレージの多くはNAND型のフラッシュメモリです。

一方、NOR型はランダムアクセスが得意で、小容量ながら高価です。NOR型は、プログラムをメインメモリに読み込むことなく直接実行できるという特徴があり、少量のデータを頻繁に読み書きする場面に適しています。主にファームウェアや一部のBIOS(UEFI)、IoTデバイスなどに利用されています。(デバイスについては、デバイスとは を参照してください)

このように、現在ではROMが書き換え可能になり、補助記憶装置としても広く利用されるようになってきています。(詳しくは次項で学習します)

それぞれを表にしてまとめると、以下のようになります。

メモリの分類表
分類 種類 概要 代表的な用途
RAM
(揮発性)
DRAM リフレッシュ処理が必要なRAM。DRAMより安価だが低速。 メインメモリ
SRAM リフレッシュ処理が不要なRAM。DRAMより高価で高速。 レジスタ、キャッシュメモリ
ROM
(不揮発性)
マスクROM 書き換え不能な読み取り専用のROM。完成したプログラムを保存する。安価だが、アップデートできないためEEPROMやフラッシュメモリに置き換わっている。 ほぼ利用されていない
PROM 紫外線によって消去、書き換えが可能なROM。書き換え可能なため、プログラム開発時のテスト段階などに使われる。(特別装置が必要で容易に消去できない) テスト段階など
EEPROM 電気的にアクセスして消去、書き換えが可能なROM。少量のデータの書き換えが可能なため、頻繁に更新される設定情報を保存する用途で用いられている。 家電製品やIoTデバイスなど
フラッシュメモリ 電気的にアクセスして消去、書き換えが可能なROM。EEPROMよりも高速大容量化を実現。補助記憶装置としても使われている。 BIOS(UEFI)、USBメモリ、SSDなど

現在は、これらのメモリよりさらに高速な次世代メモリも次々と開発されていますが、まだ一般的に置き換わるには時間がかかると言われています。

メモリ使用量

メインメモリの状態は、前項でCPUの状態を参照した「タスクマネージャー」画面の「パフォーマンス」タブの「メモリ」から確認することができます。

「タスクマネージャー」画面のイメージ

この例の場合、メモリサイズは「8GB」で、そのうち現在「4.9GB」を使用中であり、「2.9GB」の空き(余裕)があることを意味しています。(63%の使用率ということになります)

その他の項目もありますが、ざっくりとこの画面が読み取ることができれば問題ありません。タブを「プロセス」に切り替えると、どのプロセス(アプリケーションソフト)がどれだけメモリを使用しているか把握することができます。

「タスクマネージャー」画面のイメージ

パソコンの動作が重く遅くなった場合は、たいていメモリの空きが少なくなっている場合が多いです。この画面を確認して、メモリを多く消費しているアプリケーションソフトを閉じるようにしましょう。

以上で、メモリの学習は修了です。現在、CPUの速度に追いつく記憶装置を安価に製造することは困難で、組み合せやキャッシュなどの技術でなんとか補っています。高速なメモリだけで、すべての記憶装置をまかなうことはできません。

しかし、メモリの低価格化と大容量化はどんどん進んでおり、フラッシュメモリのように、メモリでありながら次項で学習する補助記憶装置としても利用できる製品が普及しています。

そのため、こうした組み合せの形態は変化していくものと思われます。遠くない未来に補助記憶装置がなくなり、メモリが大容量になって、メモリにそのままデータを保存できるようなパソコンが普及してくるかもしれません。

更新履歴

2008年7月25日
ページを公開。
2009年4月10日
ページをXHTML1.0とCSS2.1で、Web標準化。レイアウト変更。
2018年1月25日
ページをSSL化によりHTTPSに対応。
2025年1月20日
内容修正。

著者プロフィール

YAMANJO(やまんじょ)

経歴
岡山県出身、1980年生まれ(申年)の♂です。現在、総合病院で電子カルテなどの情報システム担当SEとして勤務。医療情報学が専門ですが、ネットワーク保守からプリンタの紙詰まり、救急車の運転手までこなしています。
医療情報技師、日本DMAT隊員。ITパスポート、シスアドなど、資格もろもろ。
趣味は近所の大衆居酒屋で飲むこと、作曲(ボカロP)、ダイビング。
関連リンク
詳細なプロフィールはこちら
作成したボカロ曲などはYoutubeへ
X(Twitter)
著者YAMANJOのイメージ画像