「資格試験/情報処理技術者試験/高度共通午前1/過去問2013年春午前1/問3回答」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
#include(資格試験/情報処理技術者試験/高度共通午前1/過去問2013年春午前1/問3)
* 正解 ウ
* 解説
&ref(2013SPAM03_02.png)
&ref(2013SPAM03_03.png)
&ref(2013SPAM03_04.png)
&ref(2013SPAM03_05.png)
#include(資格試験/情報処理技術者試験/高度共通午前1/過去問2013年春午前1/問3)
* 正解 ウ
* 解説
この問題のキモは「二重線は並列処理の同期を表す」です。
BとCの下に二重線があるため、「Bが先に実行されるとCの実行を待つ、Cが先に実行された場合はBの実行を待つ」事が分かります。
** ステップ1
&ref(2013SPAM03_02.png)
まず、Aが実行され、続いてBまたはCが実行されます。
この図ではBを実行していますが、BCどちらが先に実行されるかの規定はありません。
** ステップ2
&ref(2013SPAM03_03.png)
Bが実行されたら、二重線のところでCの実行を待ち、Cが実行されたらBの実行を待ち、二重線の所で同期を取ります。
二重線の所で同期をとるため、BBBB・・・やCCCC・・・・と連続で実行されることはないのでエは不正解です。
** ステップ3
&ref(2013SPAM03_04.png)
&ref(2013SPAM03_05.png)
BC共に二重線まで到着したら、またBCのどちらかを先に実行し、残りの実行を待ち、またBCの・・・と繰り返しになります。
よって、ウが正解です。
また、この流れ図の中に「ロック」している箇所がないため「デッドロック」はありえません。
[[問4へ>資格試験/情報処理技術者試験/高度共通午前1/過去問2013年春午前1/問4]]
[[問2に戻る>資格試験/情報処理技術者試験/高度共通午前1/過去問2013年春午前1/問2]]