精解PV操作之訊號量

2021-08-26 18:32:02 字數 958 閱讀 5047

今天,

我們來學習一下

pv操作的訊號量!

我們知道任何事物的誕生都有它的生活原型,

pv操作也不例外,那麼

pv操作來自**呢?正是來自於我們日常的交通工具——火車!

我們都知道去年

7.23

動車事故讓乙個名詞火了一把,那就是閉塞系統。所謂閉塞系統,本文簡單說一下它的功能,它就是保證在一段時間內,一條鐵軌的某一段距離內,只能有一輛火車在開動。而為了保證閉塞系統的實現,這裡面就用到了訊號燈,這個訊號燈就是通過火車傾軋鐵軌的時候來開啟和關閉的。而作業系統中

pv所用到的「訊號量」正是源於此。好了知道了訊號量的**,我們再來深化一下這個概念,

訊號量就是標識和限定

pv操作中資源狀態的乙個變數。

我們知道

pv操作一般涉及兩種訊號量,即

同步訊號量和互斥訊號量。

要了解「同步訊號量」的概念,我們可以通過乙個簡單的例項來說明,例如:有一隊士兵在徒步行軍的過程中,每個士兵之間一般會有間距,而這個間距的範圍是多少呢

?我們可以想象一下,這個間距必須是合理的,不能太大,也不能太小,否則就會出現碰撞和掉隊。那麼我們如何來控制這個間距呢?這時我們就可以用兩個變數來標識,分別是最大間距和最小間距。也就是說我們用兩個變數來保證間距,而這個時候的變數就是所謂的「同步訊號量」,因為是同時起作用的。

了解「同步訊號量」之後我們再來講一下「互斥訊號量」

,同樣,我們也舉個例子:比如還是那一隊士兵,在行進的過程中需要經過乙個橋,但是這個橋的承重只能保證乙個士兵通過,兩個人以上就會導致橋的塌陷,這個時候我們也可以用乙個變數來標識正在通過的士兵,很顯然這個正在通過的士兵是乙個而不是乙個集合,那麼士兵之間在過橋的時間和順序上就是互斥的,而這個標識正在通過的士兵就就是所謂的「互斥訊號量」。

理解了訊號量的概念之後相信,對於

pv操作,讀者一定會有乙個新的認識,那就是

pv操作不過是乙個合理的時候來更改訊號量而已。

精解PV操作之訊號量

今天,我們來學習一下 pv操作的訊號量!我們知道任何事物的誕生都有它的生活原型,pv操作也不例外,那麼 pv操作來自 呢?正是來自於我們日常的交通工具 火車!我們都知道去年 7.23 動車事故讓乙個名詞火了一把,那就是閉塞系統。所謂閉塞系統,本文簡單說一下它的功能,它就是保證在一段時間內,一條鐵軌的...

精解PV操作之訊號量

今天,我們來學習一下 pv操作的訊號量!我們知道任何事物的誕生都有它的生活原型,pv操作也不例外,那麼 pv操作來自 呢?正是來自於我們日常的交通工具 火車!我們都知道去年 7.23 動車事故讓乙個名詞火了一把,那就是閉塞系統。所謂閉塞系統,本文簡單說一下它的功能,它就是保證在一段時間內,一條鐵軌的...

訊號量,PV操作

它從整型訊號量 記錄型訊號量,進而發展為 訊號量集 機制 訊號量集,就是訊號量的集合 現在要用的是記錄型訊號量 1,訊號量幹嘛用的?訊號量 解決程序間同步與互斥問題 2.訊號量的組成 訊號量 分很多種,在此寫記錄型訊號量 record semaphore 訊號量組成 每個訊號量s除乙個整數值s.va...