1、二值信號燈:
**簡單的信號燈形式,信號燈的值只能取0或1,類似于互斥鎖。
雖然二值信號燈能夠實現互斥鎖的功能,但兩者的關注內容不同。信號燈強調共享資源,只要共享資源可用,其他進程同樣可以修改信號燈的值;互斥鎖更強調進程,占用資源的進程使用完資源后,必須由進程本身來解鎖。
2、計數信號燈:
信號燈的值可以取任意非負值(當然受內核本身的約束),用來統計資源,其值就代表可用資源的個數。