Windowsで割り込みを無効にすることで、クリティカルセクションのロックが可能になりましたか?そうであれば、スレッドはクリティカルセクションの途中にある間に先取りすることはできません。クリティカルセクションの途中でスレッドを先取りすることはできますか?
しかし、重要なセクションを実行している間にスレッドを先取りすることができない場合は、パルス全体をのパルスにすることは、クリティカルセクションの途中であってもCPUを退避させるよう求めました。
だから、私の本当の問題(s)は、次のとおりです。
どのモニターでは、Windowsに実装されていますか?
クリティカルセクションの途中でスレッドを先取りすることはできますか?
本当にありがとう。確かに、あなたが言っていることはたくさんの意味があります。私が間違って仮定していたのは、*ロックの取得と解放中に、ユーザーコードがどのOS APIでも 'CreateThread'や' ThreadFork'を実行したときと同じように、プロシージャはカーネルモードに入ります。スレッドはユーザーモードで実行されますが、*スレッドルート*にアクセスして、スタックからスタックにコピーしなければなりません。 –
しかし、ロックを取得して解放するためにカーネルに入ったとしても、ロックを解除することを忘れたり、クリティカルセクションの実行中に発生する例外を忘れる可能性が排除されない可能性があります。あなたが指摘しているように、システム全体の安全を危うくする。 –
あなたがリンクしているドキュメントを読んでいますが、次の質問について私の好奇心をすばやく満たしてくれますか? Windowsでのロックの取得はユーザーモードで実行されていますか? –