0

RTOS に関連するクエリが 1 つあります。Nucleus RTOS を使用しています。しかし、私のクエリはジェネリックです。タスクが実行中で、プリエンプションが無効になっている場合、タスクは本質的にアトミックになっているとしますか? ここで質問したいのは、タスクのプリエンプションが無効になると、ISR ルーチン割り込みがタスクに割り込むことができるかということです。タスクのプリエンプションを無効にすると、実行中の特定のタスクに他のすべてのタスクが割り込むことができなくなります。では、この状況で ISR が中断を引き起こす可能性はありますか? そして、プリエンプションを無効にするということは、ISRも無効にするという意味ですか??

4

1 に答える 1

1

スレッド プリエンプションの無効化は、割り込みの無効化を意味するものではなく、単に再スケジューリングが発生しないことを意味します。ただし、割り込みを無効にすると、両方が無効になります。

これについては、RTOS のドキュメントで明確に説明されているはずです。スケジューラをロックするために使用している呼び出しについては、ドキュメントを参照してください。

于 2013-12-09T22:42:51.913 に答える