ソフトウェア開発技術者試験 2001年度 = 平成13年度 午前 問28

 システム障害の原因となるメモリリークに関する記述として、適切なものはどれか。

ア 高速化のためにメモリ上に常駐化させていたプログラムの一部が、勝手にページアウトされてしまう。
イ 自プロセスが獲得したメモリの領域外に書き込んでしまい、ほかのプロセスの領域を破壊してしまう。
ウ 多数のプロセスが開始・終了を繰り返すうちに、数多くの未使用領域が断片的に発生し、メモリの使用効率が低下する。
エ プロセスの獲得したメモリが、不要になった後も解放されず、システムで使用できるメモリが徐々に減少する。

解答



解説

 高速化のためにメモリ上に常駐化するプログラムは、ページアウトされないようにページフィックスされています。

 通常は、プロセスごとに仮想空間が分かれているため、ほかのプロセス領域を破壊することはありません

 多数のプロセスが開始・終了を繰り返すうちに、数多くの未使用領域が断片的に発生することをフラグメンテーションと呼びます。

 プロセスの獲得したメモリが、OSのバグなどによって不要になった後も解放されず、システムで使用できるメモリが徐々に減少することをメモリリークといいます。


BohYoh.comトップページへ