平成24年度 秋期 午前 問18
ソフトウェア
ページングに関する問題
ページング方式の仮想記憶を用いることによって,フラグメンテーションの問題を解決できる理由はどれか。
- ア一連のプログラムやデータを,不連続な主記憶に割り付けることができる。
- イ仮想記憶のページ数を主記憶のページ数よりも多くすることができる。
- ウプログラム全体を 1 ページに割り付けることができる。
- エプログラムのローディング時に主記憶を割り付けることができる。
答えと解説を見る
✓ これが正解ア一連のプログラムやデータを,不連続な主記憶に割り付けることができる。
解説
連続でなくてよくなるので細切れが使えます。
まずフラグメンテーションが何に困っている状態なのかを言い直しておきます。空き領域を全部合わせれば足りているのに、ひとつながりの形では取れないので割り付けられない、という状態です。困りごとの正体は連続という条件のほうにあります。ページング方式は、主記憶の側も仮想記憶の側も同じ大きさのページという単位に切りそろえて管理します。プログラムから見た並びが続いていても、実際に置かれる枠は主記憶のあちこちに散らばっていてかまいません。どのページがどの枠にあるかは対応表が覚えていて、参照のたびに変換されるからです。つまり連続という条件そのものが外れるので、細切れの空き枠をそのまま使い切れます。正解の肢は、この理由をそのまま述べたものです。設問はページング方式の利点を広く聞いているのではなく、ある困りごとを解決できる理由に限って聞いている点に注意してください。なお、ページの中に使い残しが出ることは避けられません。消えるのは、空きが散らばって連続に取れないという側の困りごとのほうです。
ほかの選択肢はなぜ違うのか
- イ仮想記憶のページ数を主記憶のページ数より…:述べていること自体は誤りではなく、主記憶より大きなプログラムを動かせるという別の利点にあたります。ただし設問が求めているのは空きの細切れを解消できる理由なので、問いに答えていません。
- ウプログラム全体を 1 ページに割り付ける…:実際には反対です。切りそろえる単位の大きさは決まっていて、大きなプログラムはいくつもの単位に分かれて置かれます。ひとまとまりに収めるという説明は成り立ちません。
- エプログラムのローディング時に主記憶を割り…:読み込むときにまとめて主記憶を確保するやり方は、この方式が広まる前からある割り付け方です。むしろこの方式では、必要になった部分だけを後から読み込めます。
出典:平成24年度 秋期 応用情報技術者試験 午前 問18
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)