二元信号量
是最简单的一种锁,适合只能被唯一一个线程独占访问的资源;对于允许多个线程并发访问的资源,多元信号量简称信号量;
互斥量
和二元信号量很类似,资源仅同时允许一个线程访问,但和信号量不同的是,信号量在整个系统可以被任意线程获取并释放;也就是说哪个线程锁的,要哪个线程解锁。
临界区
是比互斥量更加严格的同步手段。在术语中,把临界区的获取称为进入临界区,而把锁的释放称为离开临界区。与互斥量和信号量的区别:
(1)互斥量和信号量字系统的任何进程都是可见的。
(2)临界区的作用范围仅限于本进程,其他进程无法获取该锁。