訊號量(semaphore)是乙個整數,包含兩個操作p()和v()。其中p()操作導致sem-1,如果sem<0執行緒等待,否則繼續。v()操作導致sem+1,如果sem<=0,喚醒乙個等待的執行緒。
訊號量是被保護的變數
訊號量的型別
訊號量的實現
可重複使用的資源
使用資源
死鎖產生的條件
死鎖可能出現如果四個條件同時成立
死鎖處理方法
死鎖預防
無搶占迴圈等待
死鎖避免
銀行家演算法
死鎖檢測
死鎖恢復
如果p和q想通訊,需要
通訊鏈路的實現
直接通訊
通訊鏈路的屬性
間接通訊
通訊鏈路的屬性
訊息佇列可以是阻塞的和非阻塞的。
佇列的訊息被附加到鏈路;可以是以下三種方式之一
有限容量 -n messages的有限長度
無限容量 - 無限長度
(1) 訊號
不足
(2) 管道
(3) 訊息佇列
(4) 共享記憶體
不足
作業系統之程序的同步機制
二.程序同步與互斥關係 四.軟體和硬體同步方法 五.訊號量機制 六.linux中的訊號量 多個程序 執行緒 在執行次序上的協調關係的機制稱為程序同步機制。由於作業系統中的程序是併發的,因此當協同程序對共享資料進行訪問時,可能會造成資料的不一致性問題。為了保證資料的一致性,那麼我們就需要一種有效地機制...
作業系統 程序同步機制相關解釋
先介紹幾個概念 臨界資源 各程序採取互斥的方式,實現共享的資源稱作臨界資源。屬於臨界資源的硬體有印表機 磁帶機等,軟體有訊息緩衝佇列 變數 陣列 緩衝區等。諸程序間應採取互斥方式,實現對這種資源的共享。臨界區 不論是硬體臨界資源還是軟體臨界資源,多個程序必須互斥的對他進行訪問。人們把每個程序中訪問臨...
作業系統學習
看了幾天的資料,今天終於有時間把測試環境搭建起來。模擬機bochs nasm ultraiso 模擬機bochs的設定不難,在網上搜了些資料和參考了bochs的說明檔案,基本上就可以組建並執行起來。在網上下了個dos的映象,執行bochs從a盤啟動,之後把硬碟分割槽格式化,乙個最基礎的測試環境就完成...