[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

仮想メモリ

pointこの用語のポイント

pointプログラムから見たメモリだよ

point実際にはハードディスクだよ

pointメモリっぽいお仕事をするよ

スポンサーリンク

簡単に書くよ

仮想メモリとは

プログラムから見たメモリのこと。
もしくは

メモリっぽい役割が与えられたハードディスクの一部分のこと
です。

image piyo

詳しく書くよ

メモリは「パソコンさんが作業するときに使う机」ね。

仮想メモリ

それを踏まえて「なんちゃってメモリ」が「仮想メモリ」です。
実際のメモリとは違うけど、メモリっぽいやつですね。

仮想メモリ2

いきなり「なんちゃってメモリ」と言われても分からないですよね。
大丈夫です。
これから順を追って説明します。

単に「仮想メモリ」と言った場合

1.プログラムから見たメモリ
2.メモリっぽい役割が与えられたハードディスクの一部


のどちらかを指す場合が多いです。
この2つは同じと言えば同じです……が、まとめて考えると混乱します。

分けて見ていきましょう。

まずは

1.プログラムから見たメモリ

について説明します。

実はですね。
プログラムから見たメモリの大きさと実際にコンピュータにくっついているメモリの大きさは違います。

メモリ内のどーでもいい内容をハードディスクに一時的にしまうことで(ハードディスクの一部をメモリっぽく使うことで)、プログラムに対して実際のメモリより大きなメモリがあると錯覚させる技があるのです。

例えば、コンピュータにくっついている実際のメモリが10GBだったとしましょう。

仮想メモリ3

普通に考えたら、同時に動かせるプログラムはメモリ10GB分ですよね?
使うメモリが6GBのプログラムと4GBのプログラムは同時に動かせます。
6GBのプログラムと5GBのプログラムは同時に動かせません。
1GB分、足りないからです。

仮想メモリ4

ところがです。
使うメモリが6GBのプログラムと5GBのプログラムを同時に動かす技があるのです。

まず、使うメモリが6GBのプログラム1を起動します。
そうすると、メモリが6GB分、使われます。

仮想メモリ5

次に、6GBのうち、あまり使わない1GB分をハードディスクにしまってしまいます。
最初はメモリを6GB使っていました。
これを、メモリ5GBとハードディスク1GBに分けるのです。

仮想メモリ6

そうすると、メモリの空いている部分は5GBです。
メモリを5GB使うプログラム2を起動することができます。

仮想メモリ7

ところで、プログラム1がハードディスクにしまった1GB分を使いたくなったら、どうしましょうね?
使うときはメモリに持ってこなくてはいけません。
ですが、メモリは10GB分、全部使っている状態です。

そんなときは、プログラム2から1GB分、ハードディスクに移します。
プログラム2はメモリを5GB使っていました。
これを、メモリ4GBとハードディスク1GBに移し替えるのです。

仮想メモリ8

そうすると、メモリには1GB分の空きができます。
この空いた部分に、プログラム1で使う1GBを移します。

仮想メモリ9

このような工夫と譲り合いの精神を発揮できれば、素敵です。
実際のメモリが10GBでも、合計11GBのメモリを使用するプログラムを動かせます。
これは、もう「メモリが11GBあるのと一緒」ですね。

この話において、実際のメモリは10GBです。
ですが、プログラムさんは、メモリを11GB分使っています。
「プログラムから見たメモリは11GBある」と言えるでしょう。

仮想メモリ10

このときの「プログラムさんから見たメモリ」が「仮想メモリ」です。
11GBの方ですね。

仮想メモリ11

ついでなので書いておくと、コンピュータにくっついている実際のメモリは「物理メモリ」と言います。
10GBの方です。

仮想メモリ12

せっかくなので、仮想メモリと物理メモリは一緒に覚えてあげてください。

これが仮想メモリの1つ目の意味です。

1.プログラムから見たメモリ

ですね。

次に

2.メモリっぽい役割が与えられたハードディスクの一部

について説明します。
とはいえ、ここまでの説明で既に説明してしまいましたけどね。

先ほどの話を思い出してください。
メモリ上の使っていない部分をハードディスクに移しました。

仮想メモリ13

これは言い方を変えると

ハードディスクの一部をメモリとして使っている

とも言えます。

この「メモリっぽく使っているハードディスクの一部」を指して「仮想メモリ」と表現する人もいます。

仮想メモリ14

これが仮想メモリの2つ目の意味です。

2.メモリっぽい役割が与えられたハードディスクの一部

ですね。

まとめると、仮想メモリは

1.プログラムから見たメモリ
2.メモリっぽい役割が与えられたハードディスクの一部


のどちらかを意味する用語です。

改めて、この2つの意味を見比べて、いかがでしょう。
似たようなものと言えば似たようなものですし、違うと言えば違う気もしませんか?

image piyo2

一言でまとめるよ

まぁ「仮想メモリ」って単語が出てきたら「プログラムで使えるメモリの大きさ、もしくはメモリっぽく使えるハードディスクの一部なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク