理解“lock”在 x86 汇编中的作用
“lock”指令是 x86 汇编中一个有趣的元素,以其CPU 调节总线使用的能力。本文深入探讨了这个神秘命令的复杂性,回答了两个关键问题:释放总线的时机和加法的实现。
CPU 在“锁定”指令后何时释放总线?
与流行的看法相反,“lock”并不充当独立指令,而是充当后续指令的前缀。通常,该指令是在内存上执行读取-修改-写入操作的指令,例如“incl”或“cmpxchg”。
遇到“lock”前缀时,CPU 会对相应的指令进行不可分割的控制。操作期间的缓存行。这种排他性通常是通过总线锁的断言来实现的,尽管处理器会在可行的情况下寻求绕过此方法。需要注意的是,此总线锁定仅在锁定指令的持续时间内保持有效。
“锁定”代码如何实现加法?
在提供的代码片段:
认识到此代码执行增量而不是加法至关重要。
以上是x86 汇编中'lock”前缀的复杂性是什么?它如何影响总线使用和内存操作?的详细内容。更多信息请关注PHP中文网其他相关文章!