基本情報技術者試験「主記憶管理」の問題
主記憶の容量は1000Kバイトで、うち200KバイトをOSが常駐使用している。残り領域に3つのプロセスが断片的に配置され、それぞれ150K,120K,230Kバイトを使用している。コンパクションを行って空き領域を1か所に集めたとき、確保できる連続空き領域はいくらか。
ア300Kバイト
イ500Kバイト
ウ800Kバイト
エ100Kバイト
正解
ア.300Kバイト
使用中はOSの200Kとプロセス3つの150+120+230=500Kで合計700K。総量1000Kから引くと空きは300Kとなる。コンパクションで散在した空きを1か所に集めるので連続空き領域は300Kバイトとなり正しい。
?選択肢ごとの解説
ア ○使用中はOSの200Kとプロセス3つの150+120+230=500Kで合計700K。総量1000Kから引くと空きは300Kとなる。コンパクションで散在した空きを1か所に集めるので連続空き領域は300Kバイトとなり正しい。
イ ×500Kバイトはプロセスが使う合計(150+120+230)そのものであり、空き領域ではなく使用量を答えてしまった誤りである。
ウ ×800Kバイトは総量1000KからOSの200Kだけを引いた値で、プロセスの使用分500Kを差し引き忘れた誤りである。
エ ×100Kバイトはコンパクション前の最大の単一空き断片を想定した値で、集約後の合計300Kにはならない誤りである。
✎くわしく
コンパクション(再配置)は使用中の領域を一方へ詰めて散在した空きを連続化する手法で、外部フラグメンテーションを解消する。空きの総量は変わらず、変わるのは連続性である。再配置中はプロセスのアドレス更新が必要でオーバーヘッドが生じる。
✓本番での押さえどころ
試験のコツ
連続空き = 総容量 − OS常駐 − 全プロセス使用量。コンパクションは『空きを集めるだけで総量は不変』と押さえる。
覚え方
コンパクションは『荷物を片側に寄せて空きスペースをまとめる』引越しのイメージで、空き総量は変わらないと覚える。
よくある誤り
OSの常駐領域を引き忘れて空きを過大に見積もる、または空き総量と最大断片を混同する誤りが多い。
ソフトウェアの他の問題
OS(オペレーティングシステム)が担う最も中心的な役割を説明したものはどれか。実行状態のタスクが、自らの入出力要求の完了を待つために移る状態はどれか。3つのタスクP1・P2・P3が時刻0に同時に到着し、処理時間はそれぞれ8・4・6である。FCFS(到着順)方式でP1→P2→…4つのタスクが時刻0に同時到着し、処理時間はそれぞれ6・2・8・4である。処理時間の短い順に実行するSJF(ノンプリエンプテ…3つのタスクP1・P2・P3が時刻0にこの順で実行可能列に並ぶ。処理時間はP1=5・P2=3・P3=7で、タイムクウォンタム…4つのタスクPA・PB・PC・PDが時刻0に同時到着する。処理時間はPA=6・PB=2・PC=4・PD=8で、優先度はPB・…
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0223