オペレーティングシステム(全131問中52問目)
No.52解説へ
プリエンプション方式のタスクスケジューリングにおいて,タスクBの実行中にプリエンプションが発生する契機となるのはどれか。ここで,タスクの優先度は,タスクAが最も高く,タスクA>タスクB=タスクC>タスクDの関係とする。
出典:平成27年秋期 問16
- タスクAが実行可能状態になった。
- タスクBが待ち状態になった。
- タスクCが実行可能状態になった。
- タスクDが実行可能状態になった。
正解 ア問題へ
広告
解説
プリエンプション方式は、OSがCPUやシステム資源を管理し、CPU使用時間や優先度などによって複数のタスクを実行状態や実行可能状態へ切替えながら実行していくマルチタスクの方式です。
プリエンプション(Preemption)とは、実行状態にあるタスクがCPUの使用権を奪われ実行可能状態に移されることをいい、以下のいずれかの状態になったときに起こります。
プリエンプション(Preemption)とは、実行状態にあるタスクがCPUの使用権を奪われ実行可能状態に移されることをいい、以下のいずれかの状態になったときに起こります。
- 実行状態のタスクより優先度の高いタスクが実行可能状態になる
- 実行状態のタスクに割り当てられたCPU使用時間が満了する
- 正しい。タスクBより優先度の高いタスクAが実行可能状態になると、OSはタスクAを実行状態に移します。これに伴い、実行状態だったタスクBは実行可能状態に移されます(プリエンプションの発生)。
- 実行状態から待ち状態になることをプリエンプションとはいいません。
- タスクCはタスクBと同じ優先度なので、タスクCが実行可能状態になっただけではプリエンプションは発生しません。
- タスクDはタスクBより優先度が低いためプリエンプションは発生しません。
広告