2.3.2 訊號量機制——作業系統筆記
1. 訊號量機制
使用者程式可以通過使用作業系統提供的一對原語來對訊號量進行操作。
訊號量其實就是一個變數(可以是一個整數,也可以是更復雜的記錄型變數),可以用一個訊號量來表示系統中某種資源的數量。
一對原語:wait(S)和signal(S),簡稱為P、V操作。
-
整型訊號量
-
記錄型訊號量
整型訊號量的缺陷是存在“忙等”問題,記錄型訊號量用記錄型資料結構表示的訊號量
2. 訊號量機制實現程式互斥
-
分析併發程式的關鍵活動,劃定臨界區
-
設定互斥訊號量mutex,初值為1
-
在進入區P(mutex) 申請資源
-
在退出區V(mutex) 釋放資源
semaphore mutex=1; P1(){ ... P(mutex); //使用臨界資源前需要加鎖 臨界區程式碼段... V(mutex); //使用臨界資源後需要解鎖 ... } P2(){ ... P(mutex); 臨界區程式碼段... V(mutex); ... }
3. 訊號量機制實現程式同步
程式同步:要讓各併發程式按要求有序地推進
- 分析在什麼地方需要實現“同步關係”,即必須保證“一前一後”執行的兩個操作
- 設定同步訊號量S,初始為0
- 在“前操作”之後執行V(S)
- 在“後操作”之前執行P(S)
4. 訊號量機制實現前驅關係
相關文章
- 作業系統 訊號量vs互斥鎖作業系統
- 作業系統筆記作業系統筆記
- 作業系統實驗6之訊號量的實現與應用作業系統
- 作業系統:x86下記憶體分頁機制 (1)作業系統記憶體
- 作業系統——記憶體管理學習筆記作業系統記憶體筆記
- 作業系統筆記(八)程式同步附加篇作業系統筆記
- 作業系統學習筆記:裝置管理作業系統筆記
- ORACLE在各作業系統訊號量與共享記憶體的維護Oracle作業系統記憶體
- 高薪祕訣,跟著AliOS Things輕鬆入門作業系統:互斥訊號量高薪iOS作業系統
- linux 訊號機制Linux
- 第二章 作業系統的執行機制作業系統
- 計算機作業系統|作業系統引論計算機作業系統
- 作業系統學習筆記-1:基礎概念作業系統筆記
- 清華大學ucore作業系統課筆記作業系統筆記
- Linux訊號(signal)機制Linux
- [轉帖]System Performance 讀書筆記 - 作業系統(1)ORM筆記作業系統
- 2.4.1 死鎖的基本概念——作業系統筆記作業系統筆記
- 408 知識點筆記——作業系統(檔案系統、裝置管理)筆記作業系統
- 學習筆記 作業系統Linux-Ubuntu 之初次新增系統呼叫筆記作業系統LinuxUbuntu
- 作業系統綜合題之“用記錄型訊號量機制的wait操作和signal操作寫出三個程序的同步程式碼(水果進框問題-程式碼補充)”作業系統AI
- rt-thread學習筆記——8、建立訊號量thread筆記
- 計算機作業系統計算機作業系統
- 作業系統學習筆記之初識程式和程式控制作業系統筆記
- 現代作業系統-原理與實現【讀書筆記】作業系統筆記
- RT-Thread學習筆記2-互斥量與訊號量thread筆記
- 作業系統-記憶體管理作業系統記憶體
- 作業系統——記憶體管理作業系統記憶體
- 【Linux入門教程】4 使用者管理、系統效能分析、系統日誌及日誌分析、訊號機制與訊號處理Linux
- linux查詢作業系統資訊(CPU、記憶體、硬碟)Linux作業系統記憶體硬碟
- GVM回收機制-筆記筆記
- 作業系統(1)——作業系統概述作業系統
- 作業系統(一):作業系統概述作業系統
- 計算機的作業系統計算機作業系統
- ucore作業系統學習筆記(一) ucore lab1系統啟動流程分析作業系統筆記
- 視訊開源作業系統VideoOS作業系統IDE
- 獲取windows 作業系統下的硬體或作業系統資訊等Windows作業系統
- 作業系統:計算機的生態系統作業系統計算機
- Webots R2019和ROS使用筆記(機器人模擬軟體與作業系統)WebROS筆記機器人作業系統