
操作系统是如何实现锁的?
首先要搞清楚一个概念,在硬件层面,CPU 提供了原子操作、关中断、锁内存总线的机制;OS 基于这几个 CPU 硬件机制,就能够实现锁;再基于锁,就能够实现各种各样的同步机制(信号量、消息、Barrier 等)在多线程编程中,为了保证数据操作的一致性,操作系统引入了锁机制,用于保证临界区代码的安全。通过锁机制,能够保证在多核多线程环境中,在某一个时间点上,只能有一个线程进入临界区代码,从而保证临界区中操作数据的一致性。锁机制的一个特点是它的同步原语都是原子操作操作系统之所以能构建锁之类的同步原语,是因为硬件已


















