仮想記憶方式とは?ゆるーくわかりやすく解説

はるか
はるか
仮想記憶方式って、メモリみたいに補助記憶装置を使う仕組み。
ふゅか
ふゅか
そうそう!実際のメモリでは物理アドレスが使われるけど、仮想記憶方式では仮想アドレスが使われるのよね!

1. 仮想記憶方式

仮想記憶方式(Virtual Memory)は、コンピュータがデータやプログラムを効率よく扱うための仕組みの一つです。具体的には、補助記憶装置(例えばハードディスクやSSD)を一時的にメモリとして活用し、必要な情報を物理メモリに出し入れしながら作業を行います。

1.1. 英語から考えると

“Virtual Memory” を英語から直訳すると「仮想記憶」になります。この名前から推測できるように、「仮想(Virtual)」という言葉は何かを現実の物理的な形ではなく、仮に存在するものとして扱うことを指します。一方、「記憶(Memory)」は通常、コンピュータにおけるメモリ、つまりデータを一時的に保持する仕組みを指します。

2. 仮想アドレスと物理アドレス

仮想記憶方式では、仮想アドレスという技術が使われています。

2.1. 物理アドレス

実際にコンピュータが持つ主記憶装置(RAM)で利用されるアドレスです。

2.2. 仮想アドレス

仮想アドレスはプログラムやアプリケーションが使用する「見かけ上のメモリ空間」の番地を指します。これにより、アプリケーションは自分専用の広大なメモリ空間(仮想記憶空間)を持っているかのように動作します。

はるか
はるか
仮想アドレスはアプリが見かけ上使うメモリ空間の番地。

2.3. MMU

この、仮想アドレスと物理アドレスの対応関係を管理するのが、メモリ管理ユニット(MMU: Memory Management Unit)というハードウェアです。MMUの例としてDATと呼ばれるものがあります。

はるか
はるか
MMUが仮想アドレスを物理アドレスに変換。

3. ページング方式

仮想記憶方式ではデータを小さな単位(ページ)に分割して管理するページング方式を行います。ページとは仮想メモリ上の固定長のデータのことです。

ふゅか
ふゅか
ページング方式って、小さなデータ単位で管理する方法だよね?
はるか
はるか
うん。仮想メモリを固定長の「ページ」に分割する。

4. 仮想記憶のメリット

仮想記憶方式には多くの利点があります。

4.1. 大容量メモリの利用を可能に

物理メモリ(RAM)の容量を超えるデータやプログラムを実行できます。例えば、RAMが4GBしかないコンピュータでも、仮想記憶により数十GBのデータを扱えます。

4.2. メモリの効率的な利用

プログラム全体を物理メモリに読み込む必要がないため、実際に使用する部分だけをロードして動作します。これにより、複数のプログラムを効率よく実行できます。

5. まとめ

仮想記憶方式は、限られた物理メモリを効率的に活用し、大規模なデータやプログラムを処理できるようにする技術です。この技術により、私たちは日々の生活で快適にコンピュータを利用することができています。一方で、ページフォールトやスワッピングといった課題もあるため、適切なメモリ管理が求められます。

PR