【基本情報技術者試験】(令和8年度・科目A・公開問題)「仮想記憶方式のコンピュータシステム」

IT資格

今回のテーマは、「仮想記憶方式のコンピュータシステム」である。

令和8年度 基本情報技術者試験 科目 A 公開問題

問5 仮想記憶方式のコンピュータシステムにおいて,処理の多重度を増やしたところ,ページイン,ページアウトが多発して,システムの応答速度が急激に遅くなった。このような現象を何というか。
ア オーバレイ
イ スラッシング
ウ メモリコンパクション
エ ロールアウト

答えを確認する

正解は イ です。

【前提知識】
・ オーバレイ
・ スラッシング
・ メモリコンパクション
・ ロールアウト


仮想記憶方式のコンピュータシステムでは、主記憶装置(メモリ)よりも大きなプログラムを実行できる仕組みが用意されている。

しかし、同時に実行するプログラムの数を増やしすぎると、ページインやページアウトが頻繁に発生し、システムの応答速度が急激に低下することがある。

このような現象を「スラッシング(Thrashing)」という。

今回は、この問題を例にして、スラッシングについて分かりやすく解説しよう。


まず「仮想記憶」とは?

スラッシングを理解するには、まず仮想記憶の仕組みを知っておく必要がある。
コンピュータには、プログラムを実行するための主記憶(メモリ)がある。

しかし、主記憶の容量には限りがある。

そこで仮想記憶では、主記憶だけでは入りきらないプログラムやデータの一部を、補助記憶装置(SSDやHDDなど)に一時的に置いておくことで、実際の主記憶容量よりも大きな記憶領域を扱えるようにしている。

イメージとしては、
主記憶(メモリ) ⇔ 補助記憶装置(SSD・HDD)
の間で、必要なデータを入れ替えながら処理する仕組みである。


「ページイン」と「ページアウト」とは?

仮想記憶では、プログラムやデータを「ページ」という単位に分けて管理する。
必要なページが主記憶にない場合は、補助記憶装置から主記憶へ読み込む。

これをページインという。

一方、主記憶の空き容量を確保するために、主記憶上のページを補助記憶装置へ移すことをページアウトという。

つまり、次のように覚えるとよい。

  • ページイン:補助記憶 → 主記憶
  • ページアウト:主記憶 → 補助記憶

ページインとページアウトは、仮想記憶におけるデータの入れ替え処理である。


処理の多重度を増やすと何が起こるのか?

ここが今回の問題のポイントである。

「処理の多重度」とは、簡単にいえば、同時に実行するプログラム(プロセス)の数のことである。

例えば、主記憶の容量に十分な余裕がある状態で、3つのプログラムを実行しているとする。
この状態であれば、それぞれのプログラムが必要とするページを主記憶に置いておくことができる。ところが、同時に実行するプログラムを増やしていくと、主記憶の容量が不足してくる。
すると、
「このページを使いたいが、主記憶に存在しない」
という状況が頻繁に発生する。

そのたびに、
補助記憶 → 主記憶(ページイン)
を行う必要がある。
しかし、ページインを行うには主記憶に空きが必要である。

そこで、別のページを、
主記憶 → 補助記憶(ページアウト)
して空き領域を確保する。
すると今度は別のページが必要になり、再びページインが発生する。
このように、ページインとページアウトばかりが繰り返される状態になってしまうのである。


これが「スラッシング」である

ページイン・ページアウトが頻繁に発生すると、CPUは本来のプログラム処理よりも、ページの入れ替え処理に多くの時間を使うことになる。

その結果、
処理能力が低下する

応答速度が遅くなる

システム全体の性能が大幅に低下する

という状態になる。この現象をスラッシング(Thrashing)という。

今回の問題では、

  • 処理の多重度を増やした
  • ページイン・ページアウトが多発した
  • システムの応答速度が急激に遅くなった

という3つのポイントが示されている。
この組み合わせが出てきた場合、スラッシングと判断すればよい。


なぜ「処理を増やしたのに遅くなる」のか?

ここは少し直感に反するポイントである。

一般的には、
同時にたくさんの処理ができれば、システムの性能も向上するのではないか
と考えやすい。

実際、ある程度までは処理の多重度を増やすことで、CPUを効率よく利用できる。
しかし、処理を増やしすぎると主記憶が不足する。
すると、
プログラムを処理する時間よりも、ページを入れ替える時間のほうが長くなる
という状態が発生することがある。

つまり、仕事を増やしすぎた結果、仕事そのものよりも準備ばかりしている状態である。
これがスラッシングのイメージである。


他の選択肢を確認しよう

今回の問題では、スラッシング以外にも紛らわしい用語が選択肢に含まれている。

ア.オーバレイ

オーバレイ(Overlay)とは、プログラムを複数の部分に分割し、必要な部分を主記憶に読み込んで使用する方式である。主記憶の容量が小さい場合などに利用される。
今回のような、「ページイン・ページアウトが多発してシステムが急激に遅くなる現象」を指す言葉ではない。


ウ.メモリコンパクション

メモリコンパクションとは、主記憶上に発生した空き領域をまとめる処理である。メモリ上に細かい空き領域がバラバラに存在する「外部フラグメンテーション」への対策として利用される。
ページイン・ページアウトの多発による性能低下とは異なる現象である。


エ.ロールアウト

ロールアウト(Roll-out)とは、主記憶上のプログラムを一時的に補助記憶装置へ退避させ、主記憶の空き領域を確保する処理である。
多重プログラミング環境などで、別のプログラムを実行するために行われる。

「主記憶からプログラムを退避させる」という点ではページアウトと似ているが、今回問われているページイン・ページアウトの多発による性能低下はスラッシングである。


試験ではこのキーワードに注目しよう

スラッシングは、次のキーワードとセットで覚えておくとよい。

キーワード説明
処理の多重度を増やす同時に動かすプログラムを増やす
主記憶不足メモリが足りない
ページイン多発ページをメモリに何度も読み込む
ページアウト多発ページをメモリから何度も追い出す
応答速度低下システムが急激に遅くなる
スラッシングページの入れ替えばかりになる現象

特に、

「ページイン・ページアウトが頻発」+「処理速度が低下」

という文を見つけたら、スラッシングだと判断できる。


スラッシングのイメージとしては、

処理する

メモリが足りない

ページアウト

必要なページをページイン

またメモリが足りない

ページアウト

またページイン……

という悪循環となり、その結果、システムの応答速度が急激に低下する。


解法のポイント

  1. 仮想記憶では、主記憶と補助記憶の間でページを入れ替える
  2. 処理の多重度を増やしすぎると、主記憶が不足してページイン・ページアウトが頻発する
  3. その結果、システムの性能が急激に低下する現象を「スラッシング」という

「ページイン・ページアウトが多発して処理が遅い」=スラッシング

コメント

タイトルとURLをコピーしました