回覆列表
  • 1 # 使用者9283187531186

    在計算機作業系統中,PV操作是程序管理中的難點。 首先應弄清PV操作的含義:PV操作由P操作原語和V操作原語組成(原語是不可中斷的過程),對訊號量進行操作,具體定義如下: P(S):

    ①將訊號量S的值減1,即S=S-1;

    ②如果S?,則該程序繼續執行;否則該程序置為等待狀態,排入等待佇列。 V(S):①將訊號量S的值加1,即S=S+1; ②如果S>0,則該程序繼續執行;否則釋放佇列中第一個等待訊號量的程序。 PV操作的意義:我們用訊號量及PV操作來實現程序的同步和互斥。PV操作屬於程序的低階通訊。 什麼是訊號量?訊號量(semaphore)的資料結構為一個值和一個指標,指標指向等待該訊號量的下一個程序。訊號量的值與相應資源的使用情況有關。當它的值大於0時,表示當前可用資源的數量;當它的值小於0時,其絕對值表示等待使用該資源的程序個數。注意,訊號量的值僅能由PV操作來改變。 一般來說,訊號量S?時,S表示可用資源的數量。執行一次P操作意味著請求分配一個單位資源,因此S的值減1;當S<0時,表示已經沒有可用資源,請求者必須等待別的程序釋放該類資源,它才能執行下去。而執行一個V操作意味著釋放一個單位資源,因此S的值加1;若S?,表示有某些程序正在等待該資源,因此要喚醒一個等待狀態的程序,使之執行下去。

  • 中秋節和大豐收的關聯?
  • 油皮面的鞋用什麼清潔方式?