0
freeRTOSタスクスケジューラについて少し質問:FreeRTOSのコンテキスト・スイッチ - xQueueSend
がxQueueSend関数内と呼ばれるタスクスケジューラですか、それはダニ次のシステムで呼び出していますか?
freeRTOSタスクスケジューラについて少し質問:FreeRTOSのコンテキスト・スイッチ - xQueueSend
がxQueueSend関数内と呼ばれるタスクスケジューラですか、それはダニ次のシステムで呼び出していますか?
FreeRTOSは、実行可能な最も優先度の高いタスクを常に実行します。つまり、別のタスクがブロックを解除し、ブロック解除されたタスクの優先度が実行中のタスクよりも高くなるように、キュー、セマフォ、ダイレクト・タスク通知、イベント・グループ、ミューテックスなどを使用すると、スケジューラはブロックされていないタスクに切り替えます。例外は、アプリケーションライターがvTaskSuspendAll()を呼び出してスケジューラをロックした場合です。この場合、ブロックされていないタスクは、アプリケーションライターがxTaskResumeAll()を呼び出すまで保留されます。 runは(xTaskResumeAll()の呼び出しが偶数を返す前に)直ちに実行を開始します。
複数の場所で同じ質問に答えるのが嫌いです。私の前の回答へのリンクを投稿します。https://sourceforge.net/p/freertos/discussion/382005/thread/f0cb1a73/([サポートフォーラムのアーカイブ](http://www.freertos.org/FreeRTOS_Support_Forum_Archive/freertos_support_forum_archive_index.html)をご覧ください)。 – Richard