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

スワッピング

pointこの用語のポイント

pointメモリの中身をハードディスクに移す機能だよ

pointメモリが足りないときにやるよ

pointもしくは、2つのものを交換することだよ

point個人的には「スワップ」という言い方の方が馴染みがあるよ

スポンサーリンク

簡単に書くよ

スワッピング(英:swapping)とは

メモリが足りないときにメモリの中身をハードディスクに移す(ことで実際よりも大きなメモリがある振りをする)機能のこと。
あるいは

2つのものを交換すること
です。


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

その逆、ハードディスクからメモリに戻すのは「スワップイン」です。

スワッピング12

気が向いたら、併せて覚えてあげてください。

あと、某・資格試験の過去問に出てきたので取り上げてみましたが、個人的には「スワップ」という言い方の方が馴染みがあります。
「スワッピング」という言い方は、あまりしません。
「スワッピング」はエッチな意味でも使われたりするので何となく恥ずかしいからです。
気が向いたら頭の片隅にでも置いておいてあげてください。

これが

メモリが足りないときにメモリの中身をハードディスクに移す機能

のスワッピングの説明です。

次に

2つのものを交換すること

のスワッピングについて説明します。

これは「スワッピング」という用語の本来の意味です。
ただし「交換する」の意味で「スワッピング」という表現が出てくることは(日本の)コンピュータの世界では多くありません。
「スワッピング」と出てきたら「メモリの中身をハードディスクに移す機能」を意図していると考えて問題ないと思います。


image piyo2

一言でまとめるよ

まぁ「スワッピング」って単語が出てきたら「メモリの中身をハードディスクに移す機能、もしくは2つのものを交換することなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像053
書籍画像014

おまけ

■訳してみるよ

「swapping(スワッピング)」は「swap(スワップ)」+「ing」です。
「swap(スワップ)」の意味は「交換する」とか「取り換える」とかです。




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
エンジニア育成現場の「失敗」集めてみた。 42の失敗事例で学ぶマネジメントのうまい進めかた
エンジニアのための生成AI入門 はじめての生成AIアプリ開発からエージェント開発まで