RTOS 共有リソース保護 - デーモン タスクによる共有リソース保護

ガーディアンタスク(ゲートキーパー、デーモンタスク)による共有リソース保護を実現

概要

優先順位の逆転とその解決戦略に関する章では、ガーディアン タスクの使用によって共有リソースの保護も実現でき、優先順位逆転の影響を改善できることを学びました。

ガードタスク(ゲートキーパー、デーモンタスク) は、共有リソースへのアクセスを保護するための専用タスクであり、このタスクは関連する共有リソースへの唯一のアクセス権を持ちます。他のタスクが対応する共有リソースにアクセスしたい場合は、ガーディアン タスクに適用して共有リソースを間接的に使用する必要があります。

ここに画像の説明を挿入

通常、ガーディアンタスクはブロッキング状態になり、共有リソースを使用しているタスクが通知信号を送信するのを待ちます。通知信号があると、共有リソースへのアクセスを開始できます。

ガーディアンタスクは優先順位逆転の問題をどのように改善しますか?

優先度逆転の問題が発生するシナリオでは、共有リソースへのアクセス不足により、主に優先度の高いタスクがブロックされます。ガード タスクを使用する場合、ガード タスクの優先度が十分に高い場合、共有リソースへのアクセスは常に迅速に解決され、優先度の高いタスクがブロックされる時間が短縮されます。

要件と機能の分析

この例は、依然として前の例、つまり Task1、Tas に基づいています。

おすすめ

転載: blog.csdn.net/wangyx1234/article/details/128120560