バーチャルメモリ
プログラムから見たメモリだよ
実際にはハードディスクだよ
メモリっぽいお仕事をするよ
簡単に書くよ
バーチャルメモリ(英:virtual memory)とは
「仮想メモリ」のこと。
用語の中身としては
プログラムから見たメモリのこと
です。
あるいは
メモリっぽい役割を与えられた、ハードディスクの一部
です。
詳しく書くよ
最初に留意事項です。
「仮想メモリ」と言われて「あぁ、アレのことね」と分かる方は最後まで読む必要ありません。
仮想メモリを指す別の表現が「バーチャルメモリ」です。
「仮想メモリって何?美味しいの?」な人は、このまま読み進めてください。
用語の中身について説明します。

それでは、いってみましょう。
まずは予備知識として「メモリ」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
今回 登場するメモリは「パソコンさんが作業するときに使う机」です。
物としては、緑色の長方形に黒い四角が何個かくっついた板です。
パソコンさんが仕事中の内容を記憶させます。
以上を踏まえて
なんちゃってメモリ
が「バーチャルメモリ」です。
実際のメモリとは違うけどメモリっぽいやつですね。
上でも書きましたが「仮想メモリ」とも表現されます。
いきなり「なんちゃってメモリ」とか言われても分からないですよね。
大丈夫です。
順を追って説明します。
単に「バーチャルメモリ」と言った場合、
1.プログラムから見たメモリ
2.メモリっぽい役割を与えられたハードディスクの一部
のどちらかを指していることが多いです。
この2つは同じと言えば同じです……が、まとめて考えると混乱します。
分けて見ていきましょう。
まずは
1.プログラムから見たメモリ
について説明します。
実は、ですね。
プログラムから見たメモリの大きさと実際にコンピュータにくっついているメモリの大きさは違います。
メモリ内のどーでもいい内容をハードディスクに一時的にしまうことで(ハードディスクの一部をメモリっぽく使うことで)、プログラムに対して実際のメモリより大きなメモリがあると錯覚させる技があるのです。
例えば、そうですね。
コンピュータにくっついている実際のメモリが10GBだったとしましょう。
普通に考えたら、同時に動かせるプログラムはメモリ10GB分ですよね?
使うメモリが6GBのプログラムと4GBのプログラムは同時に動かせます。
6GBのプログラムと5GBのプログラムは同時に動かせません。
1GB分、足りないからです。
ところが、です。
使うメモリが6GBのプログラムと5GBのプログラムを同時に動かす技があるのです。
まず、使うメモリが6GBのプログラム1を起動します。
そうすると、メモリが6GB分、使われます。
次に、6GBのうち、あまり使わない1GB分をハードディスクにしまってしまいます。
最初はメモリを6GB使っていました。
これをメモリ5GBとハードディスク1GBに分けるのです。
そうすると、メモリの空いている部分は5GBです。
メモリを5GB使うプログラム2を起動できます。
ところで、プログラム1がハードディスクにしまった1GB分を使いたくなったら、どうしましょうね?
使うときはメモリに持ってこなくては いけません。
ですが、メモリは10GB分、全部 使っている状態です。
そんなときは、プログラム2から1GB分、ハードディスクに移します。
プログラム2はメモリを5GB使っていました。
これをメモリ4GBとハードディスク1GBに移し替えるのです。
そうすると、メモリには1GB分の空きが できます。
この空いた部分にプログラム1で使う1GBを移します。
このような工夫と譲り合いの精神を発揮できれば素敵です。
実際のメモリが10GBでも合計11GBのメモリを使うプログラムを動かせます。
これは もう「メモリが11GBあるのと一緒」ですね。
この話において、実際のメモリは10GBです。
ですが、プログラムさんはメモリを11GB分使っています。
「プログラムから見たメモリは11GBある」と言えるでしょう。
このときの「プログラムさんから見たメモリ」が「バーチャルメモリ」です。
11GBの方ですね。
あと、ついでなので書いておくと、コンピュータにくっついている実際のメモリは「物理メモリ」と言います。
10GBの方です。
ちなみに「物理メモリ」をカタカナ呼びすると「フィジカルメモリ」ですが「フィジカルメモリ」という言い方は、あまり聞きません。
「バーチャルメモリ」と「物理メモリ」の対比だと微妙に納まりが悪いですがドンマイということにしてください。
これがバーチャルメモリの1つ目の意味です。
1.プログラムから見たメモリ
ですね。
次に
2.メモリっぽい役割を与えられたハードディスクの一部
について説明します。
とはいえ、ここまでの説明で、すでに説明してしまいましたけどね。
先ほどの話を思い出してください。
メモリ上の使っていない部分をハードディスクに移しました。
これは言い方を変えると
ハードディスクの一部をメモリとして使っている
とも言えます。
この「メモリっぽく使っているハードディスクの一部」を指して「バーチャルメモリ」と表現する人もいます。
これがバーチャルメモリの2つ目の意味です。
2.メモリっぽい役割を与えられたハードディスクの一部
ですね。
まとめると、バーチャルメモリは
1.プログラムから見たメモリ
2.メモリっぽい役割を与えられたハードディスクの一部
のどちらかを意味する用語です。
改めて、この2つの意味を見比べて、いかがでしょう。
似たようなものと言えば似たようなものですし、違うと言えば違う気もしませんか?
一言でまとめるよ
まぁ「バーチャルメモリ」って単語が出てきたら「仮想メモリのことなんだな~」と お考えください。
おまけ
■訳してみるよ
「virtual(バーチャル)」の意味は「実質上の」とか「事実上の」とか「実際上の」とかです。
ただし、今回は「仮想の」と解釈してください。
「memory(メモリ)」の意味は「記憶」とか「記憶力」とかです。
何となく くっつけると
仮想の記憶
となります。
■検索してみる?






