硬件底层实现同步机制
cpu中断
cpu中断只适用于单核cpu,在多核cpu的情况下要锁总线
中断处理过程
1.产生中断
2.执行中断程序
3.执行完中断返回继续执行原来程序
每一个中断都有一个对应的中断处理程序
原语
原语是一个程序段
原语的执行过程中不会被cpu打断
运行在内核态
原语执行的原子性底层实现是靠关中断和开中断两条指令来实现的
关中断
不再响应其它任何中断请求
开中断
在关中断和开中断之间不会引发cpu的线程调度
TS/TSL指令
TS指令中的检测和赋值的一系列操作是原子性操作,不会被中断
Swap指令
信号量操作
原语
wait和signal
原语
block和wakeup
信号量机制不仅可以实现线程之间的互斥也可以实现线程之间的同步
本文来自博客园,作者:不懂123,转载请注明原文链接:https://www.cnblogs.com/yxh168/articles/16285285.html