基本情報技術者 2010年 春期 午前(科目A) 問17
問題文
あるオンラインリアルタイムシステムでは,20 件/秒の頻度でトランザクションが発生する。このトランザクションはCPU処理と4回の磁気ディスク入出力処理を経て終了する。磁気ディスク装置の入出力処理時間は 40 ミリ秒/回であり,CPU 処理時間は十分に短いものとする。それぞれの磁気ディスク装置が均等にアクセスされるとしたとき、このトランザクション処理には最低何台の磁気ディスク装置が必要か。
選択肢
ア:3
イ:4(正解)
ウ:5
エ:6
🔒 解説は解答すると表示されます
磁気ディスク装置の必要台数算定【午前解説】
正解の理由
正解は イ です。
理由の要点は次の通りです。各トランザクションは4回の磁気ディスクI/Oを行い,1回あたりのI/Oサービス時間は秒です。したがって1トランザクションあたりのディスクサービス総時間は秒になります。発生頻度が20件/秒ですから,1秒あたりに必要なディスク処理時間の合計は です。1台のディスク装置は理想的には1秒当たり最大1秒分(=100%)の処理能力を持つため,必要台数は 台となり,装置は整数台でしか用意できないため切り上げて4台が最低必要となります。均等にアクセスされる(負荷分散される)という条件の下で、この計算は有効です。
理由の要点は次の通りです。各トランザクションは4回の磁気ディスクI/Oを行い,1回あたりのI/Oサービス時間は秒です。したがって1トランザクションあたりのディスクサービス総時間は秒になります。発生頻度が20件/秒ですから,1秒あたりに必要なディスク処理時間の合計は です。1台のディスク装置は理想的には1秒当たり最大1秒分(=100%)の処理能力を持つため,必要台数は 台となり,装置は整数台でしか用意できないため切り上げて4台が最低必要となります。均等にアクセスされる(負荷分散される)という条件の下で、この計算は有効です。
解法ステップ
- 1件あたりのディスクサービス合計時間を求める:秒。
- 秒間トランザクション数を掛けて1秒当たりに必要なディスク処理時間を求める:秒/秒。
- 1台あたりの理想的な処理能力は1秒に1秒分(=100%)なので,必要台数は台。
- 台数は整数なので切り上げて台とする()。
選択肢別の誤答解説
- ア: 3 — 間違い。3台では1台あたりの利用率がとなり100%を超え,安定稼働不能です。
- イ: 4 — 正解。4台だと1台当たりの利用率はで現実的かつ安定稼働可能です。
- ウ: 5 — 誤り(過剰)。5台あれば動作しますが,問題は「最低何台か」を問うため余剰です(利用率)。
- エ: 6 — 誤り(過剰)。6台でも動作するが必要最小ではなく,経済性の観点で過剰投資となります(利用率)。
よくある誤解
- 「40ミリ秒はトランザクション合計であり掛け算不要」と考える誤り:問題文は「1回あたり40ms」なので4回分を合算する必要があります。
- 「3台で十分」と考える誤り:3台だと総必要時間3.2秒に対して1台当たりの利用率がとなり,1を超えて安定動作できません。
- 「CPU時間が短い=無視して良いが影響なし」と単純化する誤り:今回はCPU影響が無視できる条件だが,CPUがボトルネックになる場合は別途考慮が必要です。
補足コラム
- キューイング理論の観点では,複数サーバ(ディスク)からなるシステムは並列サーバモデル(M/M/cなど)で扱います。安定性の第一条件は各サーバの平均利用率が1未満であることです。利用率が1に近づくほど待ち時間が急増しますので,余裕(ここでは利用率0.8)があることは実運用上望ましいです。
- 実際にはI/Oの並列性,キャッシュヒット率,シーク時間ばらつきなども影響します。試験問題では平均値での計算が指示されている場合が多いので,指示に従って算出します。
FAQ
Q1: 4回のディスクI/Oは同一装置で順次行われるのですか?
A1: 問題は「それぞれの磁気ディスク装置が均等にアクセスされる」とあるため,アクセス先が分散される前提です。最悪ケース(常に同一装置にアクセス)なら必要台数や応答時間の評価が変わります。
A1: 問題は「それぞれの磁気ディスク装置が均等にアクセスされる」とあるため,アクセス先が分散される前提です。最悪ケース(常に同一装置にアクセス)なら必要台数や応答時間の評価が変わります。
Q2: 切り上げる理由は?四捨五入ではダメですか?
A2: 台数は整数かつ不足はシステムの不安定化を招くため,必要能力を満たす最低台数は常に切り上げ(天井)で求めます。四捨五入や切り捨ては安全マージンを欠きます。
A2: 台数は整数かつ不足はシステムの不安定化を招くため,必要能力を満たす最低台数は常に切り上げ(天井)で求めます。四捨五入や切り捨ては安全マージンを欠きます。
Q3: CPU時間が「十分に短い」とあるが,無視して良いですか?
A3: はい。本問ではCPU処理時間が無視できると明記されているためディスクのみで計算します。実システムではCPUも考慮する必要があります。
A3: はい。本問ではCPU処理時間が無視できると明記されているためディスクのみで計算します。実システムではCPUも考慮する必要があります。
関連キーワード: リアルタイムシステム、磁気ディスク、ディスクI/O、ディスク利用率、スループット、キューイング理論、同時処理、負荷分散

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

