令和元年度 秋期 午前 問17
ソフトウェア
バッファサイズLを表す関係式
図の送信タスクから受信タスクに T 秒間連続してデータを送信する。1秒当たりの送信量を S,1秒当たりの受信量を R としたとき,バッファがオーバフローしないバッファサイズ L を表す関係式として適切なものはどれか。ここで,受信タスクよりも送信タスクの方が転送速度は速く,次の転送開始までの時間間隔は十分にあるものとする。
図(箱と矢印の図):
送信タスク ──S──▶ バッファ(サイズ:L) ──R──▶ 受信タスク
- アL<(R−S)×T
- イL<(S−R)×T
- ウL≧(R−S)×T
- エL≧(S−R)×T
答えと解説を見る
✓ これが正解エL≧(S−R)×T
解説
バッファは、たまる速さと時間の積以上あれば足ります。
送る側のほうが受け取る側より速いので、その差のぶんが途中のバッファにたまっていきます。一秒あたりにたまる量は、送る量から受け取る量を引いたものです。これがT秒のあいだ続くので、たまる合計はその差にTを掛けた大きさになります。オーバフローを起こさないためには、バッファの大きさがこの合計以上であればよいわけです。ちょうど同じ大きさのときも、あふれずに収まります。ですから不等号は、等号を含んだ形でなければなりません。引き算の向きにも注意が必要です。送る側から受け取る側を引かないと、たまる量が負の値になってしまい、大きさを比べる条件として意味を持ちません。次の転送までに十分な間隔があるので、この一区間だけを考えれば足ります。ちょうどの場合を考えれば、等号を含めるかどうかは決まります。
ほかの選択肢はなぜ違うのか
- アL<(R−S)×T:引き算の向きが逆で、しかもバッファのほうが小さいという条件になっています。向きが逆なら値は負になるため、大きさの比較として成り立ちません。どちらが速いかを最初に確かめておけば、この形は選ばずに済みます。速さの前提は設問にあります。
- イL<(S−R)×T:たまる量の求め方は合っていますが、バッファのほうが小さいと述べています。それでは、たまりきる前に耐えられなくなってしまいます。不等号の向きだけが違う肢は、意味を言葉に直すと見分けが付きます。言葉に直してから当てはめます。
- ウL≧(R−S)×T:引き算の向きが逆になっています。受け取る側から送る側を引くと負の値になり、バッファの大きさとは比べられません。等号を含めている点は正しいので、向きだけがそのまま分かれ道です。等号の有無と向きは別々に見ます。
出典:令和元年度 秋期 基本情報技術者試験 午前 問17
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)