CPUがさまざまな計算処理を実行する上で重要な役割を果たしている仕組みの一つに「仮想メモリ」がある。仮想メモリがあると、なぜCPUは実際のメモリ容量よりも多くあると思い込むのか。
コンピュータが計算処理を迅速に実行する上でメモリは重要な役割を担っている。そのメモリ容量が不足する場合、“隠れた仕組み”として活躍しているのが「仮想メモリ」だ。仮想メモリの仕組みがあることで、CPU(中央演算処理装置)は実際よりも多くのメモリ容量があることを前提にしてさまざまな計算処理を実行する。
仮想メモリの仕組みでは、CPUは「メモリがストレージと同じ大きさだ」と思い込む。CPUにそう思い込ませるために、どのような仕組みが機能しているのか。どのメモリアドレス(メモリ内のデータを識別するための番号)でも、それが実際にどこにあるのかには関係なく、必ず物理メモリにたどり着くようにすればよい。
CPUには、仮想メモリと物理メモリとの間のアドレス変換を担うMMU(メモリ管理ユニット)が組み込まれている。そのMMUで、プログラムが要求するメモリアドレスを、限られた物理メモリアドレス空間に収まるアドレスに変換する。
MMUはOSの制御下において、フェッチ(メモリから取り出す作業)もしくはロード(データを読み込ませる作業)する全てのメモリアドレスを、仮想メモリアドレス空間に一時的に割り当てられた別の物理メモリアドレスに変換する。メモリアドレスはメモリ上のテーブルページ(仮想アドレスと物理アドレスの対応関係を管理するデータ構造)に入力され、異なるメモリアドレスが出力される。ソフトウェアがその2つのアドレス間のマッピングを管理する。
物理メモリの容量が不足する場合は、データをストレージに退避させる。これらの仕組みによって、メモリがストレージと同じくらいの容量があると見せかけることができる。
結局のところ、物理メモリはシステム内の実際のメモリモジュール「DIMM」(Dual In-line Memory Module)そのものだ。対して仮想メモリは、OSがアプリケーションに提示するものだ。物理メモリは常に仮想メモリよりもはるかに小さいが、ほぼ常に適切な時に適切な場所に存在するように見える。
仮想メモリは、物理メモリと同じ速度でアクセスでき、ストレージと同じ大きさであるという錯覚を与える。
米国Informa TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは
遠隔のクライアント端末から、サーバにあるデスクトップ環境を利用できる仕組みである仮想デスクトップ(仮想PC画面)は便利だが、仕組みが複雑だ。仮想デスクトップの仕組みを基礎から確認しよう。
「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年5月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...
「マーケティングオートメーション」 国内売れ筋TOP10(2025年5月)
今週は、マーケティングオートメーション(MA)ツールの売れ筋TOP10を紹介します。
「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年4月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。