Table of Contents
優先相続プロトコルは、タスクスケジューリングの管理と優先反転の防止に、リアルタイムのオペレーティングシステム(RTOS)で使用されます。 これにより、優先タスクが一時的に高優先度に継承され、遅延を減らし、システム応答性を向上させることで、リソースを保持する低優先タスクが確実に実行されます。
優先的継承の基礎
RTOSでは、タスクは優先順位を割り当てられます。優先タスクが優先タスクの低いタスクで保持されるリソースを必要とする場合、優先度相続は優先順位の低いタスクの優先順位を一時的に上昇させます。これにより、優先順位が下落したタスクが優先されるのを防ぎ、リソースを早期に解放できます。
実用的な計算例
タスクA(優先度3)、タスクB(優先度2)、タスクC(優先度1)の3つのタスクを検討してください。タスクAはタスクCによって保持されるリソースを必要とします。優先的な継承がなければ、タスクCはタスクBによって優先される、タスクAを遅延させる可能性があります。優先順位で、タスクCの優先順位は3に上昇します。
タスクCは5msのリソースを保持し、タスクAが待機しています。この期間は、タスクBは優先的に2つ、通常はタスクCを優先します。ただし、優先的に継承すると、タスクCは優先順位3で実行され、タスクBがそれの優先順位を下げるのを防ぎます。これにより、タスクAはより早く進むことができます。
優先的継承の利点
優先継承を実装することで、優先度の高いタスクが優先タスクによってブロックされると、優先的に反転が低下します。これにより、システム予測性が向上し、リアルタイムアプリケーションでタイムリーなタスク実行が確実に向上します。
- 優先反転を防止
- システム応答性を高めて下さい
- タイムリーなタスクの完了を確実にする
- タスクブロック遅延を削減