仮想記憶とは?
仮想記憶とは、実際に搭載している主記憶の容量を超える大きさの記憶空間をプログラムに見せる仕組み。論理アドレスをMMUで物理アドレスへ変換し、主記憶にないページは補助記憶から読み込む。プロセスごとの空間分離による保護効果もある。
エンベデッドシステムスペシャリスト試験の過去問では5回出題されています(2019年度〜2025年度)。
かそうきおく
仮想記憶の意味
実際に搭載している主記憶の容量を超える大きさの記憶空間をプログラムに見せる仕組み。論理アドレスをMMUで物理アドレスへ変換し、主記憶にないページは補助記憶から読み込む。プロセスごとの空間分離による保護効果もある。
仮想記憶の具体例
主記憶に載りきらないページはページフォールトを契機に読み込まれ、不要になったページは追い出される。
仮想記憶は試験でどう引っ掛けられる?
リアルタイム性が要求される処理では、ページフォールトによる予測不能な遅延が問題になるため、該当領域を主記憶に固定(ページロック)する。
仮想記憶と関連する用語
仮想記憶が出た過去問
ページング方式の仮想記憶において、ページ置換えアルゴリズムにLRU方式を採用した場合、ページの参照順序が1, 2, 3, 2, 3, 1, 4, 2, 4, 3…
正解:7
要点:LRUは最も長く未参照のページを追い出して置き換える
LRUは最も長く参照されていないページを追い出す方式である。参照順に追っていくと、最初の1,2,3で3回の読込みが起き、続く2,3,1はいずれも主記憶上にあるためヒットする。その後の4で最古の2を、2で3を、3で1を、1で2を追い出す形になり、読込みは合計7回発生する。
出典:令和1年度 春期 エンベデッドシステムスペシャリスト試験 am2 問10(IPA)ページング方式の仮想記憶において、あるプロセスが仮想アドレス空間全体に対応したページテーブルをもつ場合、ページテーブルに必要な領域の大きさを2^xバイトで表すと…
正解:L-N+E
要点:ページテーブル量はエントリ数×エントリサイズで決まる
ページテーブルのエントリ数は、仮想アドレス空間をページサイズで割った値、すなわち2^L÷2^N=2^(L-N)個である。1エントリの大きさが2^Eバイトなので、必要な領域は2^(L-N)×2^E=2^(L-N+E)バイトとなる。したがってxはL-N+Eである。
出典:令和2年度 10月 エンベデッドシステムスペシャリスト試験 am2 問8(IPA)セグメンテーションページング方式の仮想記憶において、セグメントテーブルに格納される情報はどれか。
正解:当該セグメントに含まれるページを管理するページテーブルの実アドレス
要点:セグメントテーブルはページテーブルの実アドレスを保持する
セグメンテーションページング方式では、プログラムをまずセグメントに分け、各セグメントをさらにページに分割して管理する。アドレス変換は2段階で行われ、セグメントテーブルの各エントリには、そのセグメントに対応するページテーブルが主記憶上のどこにあるかを示す実アドレスが格納される。次にそのページテーブルを引いてページの実アドレスを得る。
出典:令和3年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問8(IPA)主記憶管理に関する記述のうち、適切なものはどれか。
正解:仮想記憶とは、主記憶の容量以上の記憶空間を提供する機能である。
要点:仮想記憶は主記憶容量を超える記憶空間を見せる仕組み
仮想記憶は、主記憶と補助記憶を組み合わせて、実際に搭載された主記憶容量を超える大きさの論理アドレス空間をプログラムに見せる機能である。アドレス変換機構(MMU)が仮想アドレスを実アドレスへ写像し、主記憶にないページは補助記憶から読み込む。これによりプログラムは物理容量を意識せずに記述できる。
出典:令和4年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問11(IPA)ページング方式の仮想記憶において、あるプロセスが仮想アドレス空間全体に対応したページテーブルをもつ場合、ページテーブルに必要な領域の大きさを2^xバイトで表すと…
正解:L-N+E
要点:ページテーブル量はエントリ数×エントリサイズ
ページテーブルのエントリ数は、仮想アドレス空間をページサイズで割った 2^L÷2^N=2^(L-N) 個である。各エントリの大きさが2^Eバイトなので、テーブル全体は 2^(L-N)×2^E=2^(L-N+E) バイトになる。したがってxはL-N+Eである。
出典:令和7年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問7(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。