DSB SY:数据屏障指令,多核数据同步问题,主要解决内存数据还未写入,就被乱序的指令读取的问题。 - dsb(sy) 会等待其他核的广播应答后,才算完成
ISB:指令屏障,清空 ISB 后面的指令,并把还没执行的指令丢掉,重新取值(比如让CPU重新读取寄存器状态)。ISB 不会管TLB缓存是否一致,只管指令状态,所以只用 ISB 会存在缓存一致性问题。 - ISB不会等广播应答
DSB SY:数据屏障指令,多核数据同步问题,主要解决内存数据还未写入,就被乱序的指令读取的问题。 - dsb(sy) 会等待其他核的广播应答后,才算完成
ISB:指令屏障,清空 ISB 后面的指令,并把还没执行的指令丢掉,重新取值(比如让CPU重新读取寄存器状态)。ISB 不会管TLB缓存是否一致,只管指令状态,所以只用 ISB 会存在缓存一致性问题。 - ISB不会等广播应答
Author:AkiraZheng
Link:https://akirazheng.github.io/2025/11/04/ARM64%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86/
Publish date:November 4th 2025, 10:31:15 am
Update date:November 23rd 2025, 2:47:28 am
License:本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可