No.92 図はマルチタスクで動作するコンピュータにおけるタスクの状態遷移を表したものである。
実行状態のタスクが実行可能状態に遷移するのはどの場合か。
実行状態のタスクが実行可能状態に遷移するのはどの場合か。
⭕️
❌
💾
🖊 | ☑️ |
⭕️ | [[ AnswerCalc[0] ]] % | A | [[ AnswerCalc[1] ]] |
|
|
|
|
タスクは、生成されてから消滅するまでに次の3つの状態のいずれかをとります。
- 実行可能状態(Ready)
- いつでも実行可能な状態にあり,CPU使用権が割り当てられるのを待っている状態。
- 実行状態(Run)
- CPU使用権が与えられ、タスクを実行している状態。
- 待ち状態(Wait)
- 入出力の完了待ちや、他のタスクとの同期のためにすぐにはタスクの実行ができない状態。
- 自分より優先度の高いタスクが実行可能状態になった。
正しい。優先度の高いタスクにCPU使用権が移るため、CPU使用権を失ったタスクは実行可能状態に遷移します。 - タスクが生成された。
新たに生成されたタスクは、実行可能状態タスクの待ち行列の最後尾に配置されます。優先度が現在実行中のタスクより低ければ、影響を与えることはありません。 - 入出力要求による処理が完了した。
通常、入出力要求を行ってるタスクは待ち状態をとります。この場合、待ち状態から実行可能状態に遷移することになります。 - 入出力要求を行った。
入出力の完了を待つため、タスクは実行状態から待ち状態に遷移します。
💾
✔️
[[ d.CommentTxt ]] |
< | > |
🥇 |