1. 程式人生 > >臨界資源和臨界區

臨界資源和臨界區

臨界資源:

       各程序採取互斥的方式,實現共享的資源稱作臨界資源。屬於臨界資源的硬體有印表機、磁帶機等,軟體有訊息緩衝佇列、變數、陣列、緩衝區等。 諸程序間應採取互斥方式,實現對這種資源的共享。

 

臨界區:

       每個程序中訪問臨界資源的那段程式碼稱為臨界區。顯然,若能保證諸程序互斥地進入自己的臨界區,便可實現諸程序對臨界資源的互斥訪問。為此,每個程序在進入臨界區之前,應先對欲訪問的臨界資源進行檢查,看它是否正被訪問。如果此刻該臨界資源未被訪問,程序便可進入臨界區對該資源進行訪問,並設定它正被訪問的標誌;如果此刻該臨界資源正被某程序訪問,則本程序不能進入

臨界區

 

       在作業系統中,有臨界區的概念。臨界區內放的一般是被1個以上的程序或執行緒(以下只說程序)共用的資料。

       臨界區內的資料一次只能同時被一個程序使用,當一個程序使用臨界區內的資料時,其他需要使用臨界區資料的程序進入等待狀態。

       作業系統需要合理的分配臨界區以達到多程序的同步和互斥關係,如果協調不好,就容易使系統處於不安全狀態,甚至出現死鎖現象。