応用情報技術者試験 令和4年春 午前問19 解説付き過去問
問題
複数のクライアントから接続されるサーバがある。
このサーバのタスクの多重度が2以下の場合、タスク処理時間は常に4秒である。
このサーバに1秒間隔で4件の処理要求が到着した場合、全ての処理が終わるまでの時間はタスクの多重度が1のときと2のときとで、何秒の差があるか。
正解
解説
この問題では、タスクの多重度(同時に処理できるタスク数)が 1 の場合と 2 の場合で、全ての処理が完了するまでの時間の差を求める。
タスク処理時間は常に 4 秒であり、1 秒間隔で 4 件の処理要求が到着する条件で計算を行う。
- タスクの多重度が 1 の場合
タスクの多重度が 1 では、1 つのタスクしか同時に処理できないため、各処理は順番に実行される。 処理要求は 1 秒ごとに到着するが、1 件の処理には 4 秒かかるため、処理の流れを以下の表に示す。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 タスク 1件目の処理 2件目の処理 3件目の処理 4件目の処理
全ての処理が完了するのは 16 秒後である。 - タスクの多重度が 2 の場合
タスクの多重度が 2 では、2 つのタスクを同時に処理できる。 1 秒間隔で処理要求が到着するため、最初のタスクは 0 秒に開始し、2 番目のタスクは 1 秒後に開始する。 処理の流れを以下の表に示す。
1 2 3 4 5 6 7 8 9 タスク1 1件目の処理 3件目の処理 - タスク2 - 2件目の処理 4件目の処理
全ての処理が完了するのは 9 秒後である。 - 時間の差
タスクの多重度が 1 の場合は 16 秒、2 の場合は 9 秒で処理が完了する。 よって、処理時間の差は 16 秒 - 9 秒 = 7 秒 となる。