基本情報技術者平成27年秋期 午前問18

問18

図のメモリマップで,セグメント2が解放されたとき,セグメントを移動(動的再配置)し,分散する空き領域を集めて一つの連続領域にしたい。1回のメモリアクセスは4バイト単位で行い,読取り,書込みがそれぞれ30ナノ秒とすると,動的再配置をするのに必要なメモリアクセス時間は合計何ミリ秒か。ここで,1kバイトは1,000バイトとし,動的再配置に要する時間以外のオーバーヘッドは考慮しないものとする。
18.png/image-size:497×59
  • 1.5
  • 6.0
  • 7.5
  • 12.0
  • [出題歴]
  • 基本情報技術者 H29秋期 問19

分類

テクノロジ系 » ソフトウェア » オペレーティングシステム

正解

解説

セグメント2が解放されると空き領域がセグメント3の前後に存在するようになります。最も少ない回数で空き領域を1つにする方法はセグメント3を前方(図の左側)に寄せることなので、セグメント3の800kバイトを移動させる時間を考えます。
18a.png/image-size:497×159
1回のメモリアクセスは4バイト単位なので、800kバイトでは、

 800,000÷4=200,000(回)

また、データの移動を行うには「読取り→書込み」の処理を繰り返さなければならないので、総メモリアクセス回数は2倍の400,000回になります。したがってアクセス時間の合計は、

 400,000×30=12,000,000(ナノ秒)=12(ミリ秒)

したがって「エ」が正解です。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop