strex专题

使用LDREX和STREX在多处理器和共享内存系统中实现进程间通信

出于性能的考虑,请使对应的LDREX和STREX指令之间的指令数量最少。 举例:spin_lock源码(arm架构) static inline void arch_spin_lock(arch_spinlock_t *lock){unsigned long tmp;u32 newval;arch_spinlock_t lockval;prefetchw(&lock->slock); /