2017-06-30 29 views

答えて

1

プリエンプションのポイントは、スケジュールされた間隔で他のタスクを確実に実行することです。

runnablesはタスクのコンテキスト内で実行され、タスクは優先されるため、runnables自体を先取りすることができます。もう1つの結果は、ランナブルは他のタスク(または割り込み)でランナブルによってのみプリエンプトできることです。したがって、同じタスクでランナブルAとBを実行している場合、AはBによって先取りされることはありません。その逆もあります。AとBは互いに原子的です。

さらに、Autosarは、専用領域をサポートしています。これは本質的にクリティカルセクションです。複数の実行可能ファイルは同じ排他領域を使用でき、1つの実行可能ファイルがRte_Enterの排他領域に入った場合、最初のファイルがRte_Exitのままになるまで、他の実行可能領域は同じ排他領域に入ることができません。

0

上記の回答に加えて、AutosarにCooperative runnable placementというコンセプトを追加したいと思います。コンセプトによれば、データアクセスの制約を有するランブルは、 "Cooperative Runnables"とグループ化され、このグループのランナップは互いに先取りされないが、このグループに属していないランナブルによって先取りされる可能性がある。

また、実行可能ファイルはタスクのコンテキストで実行されます。タスクがプリエンプト可能な場合は、実行可能ファイルもタスクに属します。

関連する問題