在关键区域内,Linux内核通过自旋锁禁用内核抢占,单处理器系统中自旋锁仅影响内核抢占的启用与禁用。
本文讨论了原子操作和支持原子操作的指令集,单处理器系统中可在一条指令中完成,多处理器系统中需使用特定指令前缀或指令保证原子性。X86架构可使用lock指令前缀实现,ARM架构早期版本使用SWP指令,后来版本使用LDREX和STREX指令。这些指令保证内存访问的原子性。
完成下面两步后,将自动完成登录并继续当前操作。