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

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

スワップアウト (swap out)

pointこの用語のポイント

pointメモリの中身を一時的にハードディスクに移すことだよ

pointメモリが足りないときに行われるよ

point「スワップイン」の逆だよ

スポンサーリンク

簡単に書くよ

スワップアウト (swap out)とは

メモリの中身を一時的にハードディスクに書き出すこと
です。

image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「メモリ」と「スワップ」から説明していきます。
「そんなの説明されなくても知ってるよ!」な人は、適当に読み飛ばしてください。

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

スワップアウト

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

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

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

スワップアウト2

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

スワップアウト3

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

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

スワップアウト4

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

スワップアウト5

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

スワップアウト6

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

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

スワップアウト7

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

スワップアウト8

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

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

スワップアウト9

このような「ハードディスクの一部をメモリっぽく使うことで、実際のメモリより大きなメモリがあると錯覚させる技」を「スワップ」と言います。

メモリを使い切った状態で「もっと~!もっと使いたいの~!」とプログラムさんに言われました。
でも、メモリの空きはありません。
仕方がないので、メモリの一部をハードディスクに移して、メモリの空きを作ります。
そんな技です。
ハードディスクを上手く活用することで、メモリの水増しをします。

以上を踏まえて、本題です。

スワップの仕組みにおいて、メモリの内容をハードディスクに移しました。
この「メモリの内容をハードディスクに移す」のが「スワップアウト」です。

スワップアウト10

ついでなので書いておくと、スワップアウトの逆、ハードディスクからメモリに戻すのは「スワップイン」と言います。

スワップアウト11

せっかくなので、併せて覚えてあげてください。

image piyo2

一言でまとめるよ

まぁ「スワップアウト」って単語が出てきたら「メモリの中身をハードディスクに書き出すことなんだな~」と、お考えください。

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