マルチプロセッサでは、次のことを知っていlock inc mem
ます。ロックは、他の操作がアドレスにアクセスできないことを保証できますmem
。
ただし、1 つのプロセッサがmov eax,mem
最初に実行され、それが完了する前に、2 番目のプロセッサが実行されlock inc mem
ます。
結果はどうなりますか?
2 番目の命令 ( ) は 1 番目の命令 ( ) が完了
lock inc mem
するまで待機しますか?mov eax,mem
(結果として、最初に正しい値が得られます)両方の命令が同時に実行されます。(結果として、最初は予期しない値を取得する可能性があります)