仮想記憶・とは?初心者にもわかる仕組みと使い方の解説共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
仮想記憶・とは?初心者にもわかる仕組みと使い方の解説共起語・同意語・対義語も併せて解説!
この記事を書いた人

岡田 康介

名前:岡田 康介(おかだ こうすけ) ニックネーム:コウ、または「こうちゃん」 年齢:28歳 性別:男性 職業:ブロガー(SEOやライフスタイル系を中心に活動) 居住地:東京都(都心のワンルームマンション) 出身地:千葉県船橋市 身長:175cm 血液型:O型 誕生日:1997年4月3日 趣味:カフェ巡り、写真撮影、ランニング、読書(自己啓発やエッセイ)、映画鑑賞、ガジェット収集 性格:ポジティブでフランク、人見知りはしないタイプ。好奇心旺盛で新しいものにすぐ飛びつく性格。計画性がある一方で、思いついたらすぐ行動するフットワークの軽さもある。 1日(平日)のタイムスケジュール 7:00 起床:軽くストレッチして朝のニュースをチェック。ブラックコーヒーで目を覚ます。 7:30 朝ラン:近所の公園を30分ほどランニング。頭をリセットして新しいアイデアを考える時間。 8:30 朝食&SNSチェック:トーストやヨーグルトを食べながら、TwitterやInstagramでトレンドを確認。 9:30 ブログ執筆スタート:カフェに移動してノートPCで記事を書いたり、リサーチを進める。 12:30 昼食:お気に入りのカフェや定食屋でランチ。食事をしながら読書やネタ探し。 14:00 取材・撮影・リサーチ:街歩きをしながら写真を撮ったり、新しいお店を開拓してネタにする。 16:00 執筆&編集作業:帰宅して集中モードで記事を仕上げ、SEOチェックやアイキャッチ作成も行う。 19:00 夕食:自炊か外食。たまに友人と飲みに行って情報交換。 21:00 ブログのアクセス解析・改善点チェック:Googleアナリティクスやサーチコンソールを見て数字を分析。 22:00 映画鑑賞や趣味の時間:Amazonプライムで映画やドラマを楽しむ。 24:00 就寝:明日のアイデアをメモしてから眠りにつく。


仮想記憶とは

仮想記憶は、見かけ上の記憶空間を作り出す仕組みです。実際にはRAMと呼ばれる物理メモリがあり、OSはRAMと補助記憶装置(HDDやSSDなど)を組み合わせて、使える記憶の総量を増やして見せています。

この仕組みのおかげで、私たちが普段使うアプリやゲームが、実際に必要な分だけのデータをRAMに置き、残りは補助記憶へ保存しておくことができます。

仮想記憶の目的とメリット

たくさんのデータを同時に扱えることが最大のメリットです。メモリが足りなくても、OS が必要なデータを「取り出す場所」をうまく選んで作業を続けられます。

また、プログラムは現実のRAMの広さを気にせずに作られ、大きな仮想空間を扱えるように設計できます。これは、古いゲーム機やスマートフォンでも動作を安定させる助けになります。

どんな仕組みで動くのか

仮想記憶の中核は「ページ」と呼ばれる小さなデータの塊です。OS はデータをページ単位で管理し、実際に使うときだけRAMへ読み込み、不要になったら補助記憶へ保存します。

ページフォールトとは、必要なデータがRAMにないときに起こる現象で、OS が補助記憶からデータを読み込み、作業を再開します。

実生活に例えると

机の上にノートを広げて作業するのがRAM、引き出しや棚が補助記憶に例えられます。必要なノートはRAMの机の上に置かれ、もう使わないノートは引き出しにしまいます。作業の途中で RAM がいっぱいになったら、いらないノートを棚へ移しておくことで、また新しいノートを使えるようにします。

スワッピングとパフォーマンス

実際には、補助記憶はRAMよりも遅いことが多いです。この状態を「スワッピング」と呼ぶことがあります。頻繁に発生すると作業が遅くなることがあり、対策としてRAMを増やす、または不要なプログラムを閉じるなどの対応がとられます。しかし現代のPCやスマートフォンでは、SSDの速さとOSの賢い設計のおかげで、スワッピングは昔より目立たなくなっています。

表で学ぶ仮想記憶の違い

able>項目RAM(実物)仮想記憶の役割容量の見かけ実際の容量がそのまま使われるRAMと補助記憶を組み合わせて見かけ上の大容量を作るアクセス速度非常に速い必要なときだけRAMへ読み込み、遅い補助記憶へ移動することがあるデータ管理直にデータを扱うデータをページ単位で管理し、ページングを行う影響空きが少ないとアプリが落ちやすい適切に動かないとページフォールトが発生して遅くなることがあるble>

まとめとして、仮想記憶は私たちのデバイスの使い勝手を高める仕組みです。RAMの容量だけでなく、OSの賢い管理により、より多くのアプリを同時に快適に動かせるようにしています。


仮想記憶の同意語

仮想記憶
OSが物理メモリと補助記憶を組み合わせ、プログラムに見える連続したアドレス空間を提供する仕組み。ページングやスワップなどの技術を使います。
仮想メモリ
仮想記憶と同じ意味の表現で、RAMと補助記憶を組み合わせて、プログラムに見える仮想アドレス空間を提供する仕組み。
仮想メモリ空間
プログラムが利用できる仮想的なアドレス範囲のこと。実際の物理メモリとは対応づけられている。
仮想メモリ領域
仮想メモリ内でデータやコードが割り当てられる区画のこと。スタック・ヒープ・コード領域などが含まれる。
仮想メモリ管理
OSが仮想アドレスと物理アドレスを結びつけるための管理作業。ページテーブル、TLB、スワップ領域の割り当てと入替を行う。
バーチャルメモリ
英語の“Virtual Memory”の表記。仮想記憶と同じ概念を指す、一般的な言い回し。
仮想記憶空間
仮想メモリ空間と同義で、プログラムが参照する仮想的なアドレス空間のこと。
メモリ仮想化
メモリ資源を仮想的に割り当て、効率的に共有・管理する考え方。文脈によっては仮想記憶とほぼ同義で使われることがある。

仮想記憶の対義語・反対語

物理メモリ
仮想記憶の対義語として使われる概念で、実際にハードウェアとして搭載されているRAM。OSが仮想化した仮想アドレス空間を現実の物理メモリに対応づける元となる『元の領域』です。
実メモリ
仮想記憶に対して、実際に存在して読み書きが行われるメモリ領域。物理的なRAMを指すことが多い表現です。
実記憶
仮想化されていない、実際の記憶領域を指す言い方。仮想記憶の対義語として用いられることがあります。
主記憶
CPUが直接参照できる主要なメモリ領域。仮想記憶と対比して語られることが多い概念です。
RAM(物理メモリ)
物理的に搭載されたランダムアクセスメモリを指します。仮想記憶と対比して、現実に存在するメモリを示す際に使われます。
物理RAM
物理的に搭載されたRAMのこと。仮想記憶の対義語として使われる表現の一つです。
実RAM
実際のRAMを指す表現。仮想メモリではなく、現実のRAM領域を示します。

仮想記憶の共起語

ページング
仮想アドレス空間を物理メモリと切り離して管理する基本的な仕組み。
ページテーブル
仮想アドレスと対応する物理アドレスの関係を記録しておく表。MMUが参照して変換する。
仮想アドレス空間
プロセスが利用できる仮想的なアドレスの集合。実アドレスとは独立している。
物理メモリ
実際にデータを格納するRAM(RAM)。仮想メモリのデータを一時的に保持する場所。
アドレス変換
仮想アドレスを対応する物理アドレスへ変換する処理。
MMU
Memory Management Unit。仮想アドレスと物理アドレスの変換を実際に行うハードウェア部品。
TLB
Translation Lookaside Buffer。アドレス変換を高速化するキャッシュ。
ページフォールト
仮想アドレスの要求がページテーブルに存在しない場合に発生する例外。OSがページを読み込む処理を開始する。
スワップ領域
ディスク上の、退避用の領域。頻繁に使われないページを退避させる場所。
スワップファイル
スワップ領域をファイルとして実装したもの。ディスク上のファイルで仮想メモリを管理する。
スワップイン
ディスクからRAMへページを読み込む操作。
スワップアウト
RAM上のページをディスクへ退避する操作。
ページ置換アルゴリズム
どのページを追い出すか決定する方法。
LRU
最近最も長く使われていないページを捨てる置換アルゴリズム。
FIFO
最も長く RAM にあるページを先に捨てる置換アルゴリズム。
Clock
時計アルゴリズムと呼ばれる効率的な置換手法の一種。
改ページ
必要なページを取得するためのページ置換処理の一部。
階層式ページング
ページテーブルを多段階に分け、アドレス変換を階層的に行う方式。
ページサイズ
仮想/物理のページの大きさ。例: 4KB。
ページファイル
Windowsなどで使われる、ディスク上の仮想メモリ格納ファイル。
二次記憶/補助記憶
RAM以外の長期保存用記憶媒体。仮想メモリはここへデータを退避する。
実アドレス
実際の物理メモリアドレス(RAM上のアドレス)。
物理アドレス
RAM上の実際のアドレス。
仮想アドレス変換
仮想アドレスを物理アドレスへ変換する処理。
仮想アドレス空間の大きさ
プロセスごとに割り当てられる仮想空間の容量。
OOM
Out Of Memory。メモリ不足エラーの略称。
ディスクI/O
ディスクへの入出力。ページの読み書きなどを含む。
メモリ圧迫
利用中のメモリが逼迫している状態。パフォーマンス低下の原因になる。
キャッシュメモリ
高速で小容量の記憶領域。仮想メモリ自体とは別の階層だが参照に影響することがある。

仮想記憶の関連用語

仮想記憶
OS が物理メモリを仮想的に大きく見せる仕組み。各プロセスは独立した仮想アドレス空間を使い、実際のRAM容量よりも多くのメモリを使えるようにします。
物理メモリ
実際に搭載されているRAMのこと。仮想アドレスと対応づけられてデータを格納します。
仮想アドレス
ソフトウェアが用いる論理的なアドレス。MMU が物理アドレスへ変換します。
物理アドレス
RAM上の実際の位置を示すアドレス。仮想アドレスと対応づけはMMUとページテーブルで管理されます。
MMU(メモリ管理ユニット)
仮想アドレスを物理アドレスへ変換するハードウェア。ページテーブルの参照やTLBの管理、アクセス権のチェックを行います。
TLB(Translation Lookaside Buffer)
変換情報をキャッシュして高速にアドレス変換を行う小さな高速メモリ。TLBヒットで処理が速くなります。
ページング
仮想メモリを固定長のブロック(ページ)に分割して管理する技術。
セグメンテーション
仮想アドレス空間を区切って管理する方法。ページングと組み合わせて使われることがあります。
ページテーブル
仮想アドレスのページ番号と対応する物理ページ番号を記録するデータ構造。PTE が各行を構成します。
ページフォールト
参照した仮想アドレスが現在物理メモリ上に存在しない場合に発生するイベントです。
ページ置換アルゴリズム
ページフォールト時にどのページを追い出すか決める方法。
LRU(最近最も使われていないページを置換)
最も長く使われていないページを置換対象とするアルゴリズム。
FIFO
最も古くから使われたページを置換するアルゴリズム。
最良置換
将来の参照を完全に予測できると仮定した理論上の最適置換アルゴリズム。実装は不可能に近いが基準として使われます。
スワップ領域
物理メモリが不足した時にページをディスクへ退避させる領域。
スワップイン/スワップアウト
スワップアウトはディスクへ退避、スワップインは必要時に戻す操作。
ページサイズ
1ページの大きさ。一般的には4KBが多いですが、システムにより異なります。
階層化ページング
多段階のページテーブルを用いて大きな仮想アドレス空間を効率的に管理する手法。
ページテーブルエントリ(PTE)
PTE には有効ビット、権限、物理ページ番号、参照ビット、変更ビットなどが格納されます。
アドレス空間の分離
各プロセスに独立した仮想アドレス空間を割り当て、他のプロセスのメモリへ直接アクセスできないようにします。
アクセス権(読み取り/書き込み/実行)
仮想アドレスに対して許可する操作を定義します。
NXビット(実行禁止ビット)
データ領域に対して実行を禁止するメモリ保護機能
参照ビット/アクセスビット
ページが参照されたかどうかを示すフラグ。
変更ビット/Dirtyビット
ページが変更されたかどうかを示すフラグ。
アドレス変換
仮想アドレスを物理アドレスへ変換する全過程を指す概念。
メモリ保護
権限・境界チェックにより不正アクセスを防ぐ仕組み。
TLBフラッシュ
コンテキスト切替やページテーブル更新時にTLBの内容をクリアして新しい変換情報を読み直す操作。
メモリ圧縮
物理メモリの使用量を抑えるため、データを圧縮して格納する技術。展開時には解凍が必要です。

仮想記憶のおすすめ参考サイト


インターネット・コンピュータの人気記事

pin番号・とは?初心者にも分かるPINの基本と使い方共起語・同意語・対義語も併せて解説!
1291viws
7-zipとは?初心者でもわかる使い方と特徴を徹底解説共起語・同意語・対義語も併せて解説!
436viws
インターネットアクセスとは?初心者にも分かる基本ガイド共起語・同意語・対義語も併せて解説!
193viws
コンポーネント化・とは?初心者にも分かる基本と実例共起語・同意語・対義語も併せて解説!
138viws
公開日・とは?初心者が押さえる基本ポイントと活用法共起語・同意語・対義語も併せて解説!
95viws
トンバックとは?初心者でもわかるトンバック対策と改善のコツ共起語・同意語・対義語も併せて解説!
95viws
8ビット・とは?初心者にもわかる基本の解説共起語・同意語・対義語も併せて解説!
84viws
ミュート・とは?初心者でもわかる使い方と意味を解説共起語・同意語・対義語も併せて解説!
84viws
ランダムアクセスメモリ・とは?初心者でもすぐ分かる基本と仕組みの解説共起語・同意語・対義語も併せて解説!
79viws
スタンドバイとは?初心者にも分かる意味と使い方を徹底解説共起語・同意語・対義語も併せて解説!
77viws
lan配線・とは?初心者にも分かる自宅LANの基本と実践ガイド共起語・同意語・対義語も併せて解説!
71viws
コア・とは?初心者が知っておく基本と使い方共起語・同意語・対義語も併せて解説!
69viws
中括弧・とは?初心者でも分かる基本と使い方を徹底解説共起語・同意語・対義語も併せて解説!
69viws
バレットポイント・とは?初心者にも分かる使い方と作成のコツ共起語・同意語・対義語も併せて解説!
63viws
バリアント・とは?初心者でも分かる意味と使い方ガイド共起語・同意語・対義語も併せて解説!
60viws
adb・とは?初心者のための使い方と基本解説共起語・同意語・対義語も併せて解説!
58viws
接続先ipアドレスとは?初心者が押さえる基本と使い方共起語・同意語・対義語も併せて解説!
56viws
delete とは?初心者にもわかる意味と使い方ガイド共起語・同意語・対義語も併せて解説!
52viws
プログレッシブダウンロードとは?初心者向けに分かりやすく徹底解説共起語・同意語・対義語も併せて解説!
51viws
led・とは?初心者向けに解説するLEDの基本と使い方共起語・同意語・対義語も併せて解説!
51viws

新着記事

インターネット・コンピュータの関連記事