「AP過去問 令和6年度春期 午前 問17」の版間の差分

提供:yonewiki
(ページの作成:「AP過去問 令和6年度春期 午前 問題に戻る AP過去問 令和6年度春期 午前 問16AP過去問 令和6年度春期 午前 問18へ =='''問17(問題文)'''==   =='''回答・解説'''==   AP過去問 令和6年度春期 午前 問16AP過去問 令和6年度春期 午前 問18へ AP過去問 令和6年度春期 午前#問題|AP過去問 令和6年度春期 午…」)
 
編集の要約なし
 
(同じ利用者による、間の5版が非表示)
1行目: 1行目:
[[AP過去問 令和6年度春期 午前#問題|AP過去問 令和6年度春期 午前 問題]]に戻る
[[AP過去問 令和6年度春期 午前#問題|AP過去問 令和6年度春期 午前 問題]]に戻る


[[AP過去問 令和6年度春期 午前 問16]]
[[AP過去問 令和6年度春期 午前 問16]]前の問題へ


[[AP過去問 令和6年度春期 午前 問18]]
[[AP過去問 令和6年度春期 午前 問18]]次の問題へ
 
 


=='''問17(問題文)'''==
=='''問17(問題文)'''==
 三つの資源X~Zを占有して処理を行う四つのプロセスA~Dがある。各プロセスは処理の進行に伴い、表中の数値の順に資源を占有し、実行終了時に三つの資源を一括して解放する。プロセスAと同時にもう一つプロセスを動かした場合に、デッドロックを起こす可能性のあるプロセスはどれか。
<table border="2" style="border-collapse: collapse;border-style: solid">
<tr>
  <td align="center" rowspan="2" style="border: 2px solid; width: 5em;">プロセス</td>
  <td align="center" colspan="3" style="border: 2px solid;">資源の占有順序</td>
</tr>
<tr>
  <td align="center" style="border: 2px solid; width: 5em;">資源X</td>
  <td align="center" style="border: 2px solid; width: 5em;">資源Y</td>
  <td align="center" style="border: 2px solid; width: 5em;">資源Z</td>
</tr>
<tr>
  <td align="center" style="border: 2px solid;">A</td>
  <td align="center" style="border: 2px solid;">1</td>
  <td align="center" style="border: 2px solid;">2</td>
  <td align="center" style="border: 2px solid;">3</td>
</tr>
<tr>
  <td align="center" style="border: 2px solid;">B</td>
  <td align="center" style="border: 2px solid;">1</td>
  <td align="center" style="border: 2px solid;">2</td>
  <td align="center" style="border: 2px solid;">3</td>
</tr>
<tr>
  <td align="center" style="border: 2px solid;">C</td>
  <td align="center" style="border: 2px solid;">2</td>
  <td align="center" style="border: 2px solid;">3</td>
  <td align="center" style="border: 2px solid;">1</td>
</tr>
<tr>
  <td align="center" style="border: 2px solid;">D</td>
  <td align="center" style="border: 2px solid;">3</td>
  <td align="center" style="border: 2px solid;">2</td>
  <td align="center" style="border: 2px solid;">1</td>
</tr>
</table>
ア B、C、D


イ C、D
ウ Cだけ
エ Dだけ


 
 


=='''回答・解説'''==
=='''回答・解説'''==
*A(X → Y → Z) と C(Y → Z → X) を同時に動かすと…
:1.Aが X を確保
:2.Cが Y を確保
:3.Aは Yを待つが、Cが保持している → Aがブロック
:4.Cは Xを待つが、Aが保持している → Cがブロック
デッドロック発生!
*A(X → Y → Z) と D(Z → Y → X) を同時に動かすと…
:1.Aが X を確保
:2.Dが Z を確保
:3.Aは Yを待つが、Dが先に確保 → Aがブロック
:4.Dは Xを待つが、Aが保持している → Dがブロック
デッドロック発生!
 したがってCとDなので、




 
<span style = "background:linear-gradient(transparent 75%, #7fbfff 75%); font-weight:bold; ">
イ</span>
 
 
 が答えです。
 


[[AP過去問 令和6年度春期 午前 問16]]
[[AP過去問 令和6年度春期 午前 問16]]前の問題へ


[[AP過去問 令和6年度春期 午前 問18]]
[[AP過去問 令和6年度春期 午前 問18]]次の問題へ


[[AP過去問 令和6年度春期 午前#問題|AP過去問 令和6年度春期 午前 問題]]に戻る
[[AP過去問 令和6年度春期 午前#問題|AP過去問 令和6年度春期 午前 問題]]に戻る

2025年1月30日 (木) 01:12時点における最新版

AP過去問 令和6年度春期 午前 問題に戻る

AP過去問 令和6年度春期 午前 問16前の問題へ

AP過去問 令和6年度春期 午前 問18次の問題へ

 

問17(問題文)

 三つの資源X~Zを占有して処理を行う四つのプロセスA~Dがある。各プロセスは処理の進行に伴い、表中の数値の順に資源を占有し、実行終了時に三つの資源を一括して解放する。プロセスAと同時にもう一つプロセスを動かした場合に、デッドロックを起こす可能性のあるプロセスはどれか。


プロセス 資源の占有順序
資源X 資源Y 資源Z
A 1 2 3
B 1 2 3
C 2 3 1
D 3 2 1


ア B、C、D

イ C、D

ウ Cだけ

エ Dだけ

 

回答・解説

  • A(X → Y → Z) と C(Y → Z → X) を同時に動かすと…
1.Aが X を確保
2.Cが Y を確保
3.Aは Yを待つが、Cが保持している → Aがブロック
4.Cは Xを待つが、Aが保持している → Cがブロック

デッドロック発生!


  • A(X → Y → Z) と D(Z → Y → X) を同時に動かすと…
1.Aが X を確保
2.Dが Z を確保
3.Aは Yを待つが、Dが先に確保 → Aがブロック
4.Dは Xを待つが、Aが保持している → Dがブロック

デッドロック発生!


 したがってCとDなので、



 が答えです。


AP過去問 令和6年度春期 午前 問16前の問題へ

AP過去問 令和6年度春期 午前 問18次の問題へ

AP過去問 令和6年度春期 午前 問題に戻る