日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【学习笔记】第二章——信号量机制 用信号量实现互斥、同步

發布時間:2024/7/23 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【学习笔记】第二章——信号量机制 用信号量实现互斥、同步 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一. 信號量機制
      • 整型信號量
      • 記錄型信號量
          • 例子:
      • 總結
  • 二. 用信號量實現互斥、同步
      • 互斥
      • 同步
      • 前驅
      • 總結

一. 信號量機制

  • 信號量:一個用于表示系統中某種資源的數量的變量(整數 or 記錄型變量)
  • 一對原語:wait(S) 和 signal(S),S為參數。簡稱P、V操作,因此也可寫成 P(S)、V(S)

整型信號量

  • 三種操作:初始化、P操作、V操作
  • 原子性避免并發、異步導致的問題
  • 問題:不滿足“讓權等待”,會發生“忙等

記錄型信號量

  • 結構體取代整型,加入等待隊列
  • block 原語:把進程從運行態 => 阻塞態,并掛入信號量的等待隊列
  • wakeup原語:把進程從“阻塞態 => 就緒態”,從信號量的等待隊列中喚醒
例子:
  • 圖文不便描述。建議還是看視頻,走一遍流程便于理解。p21的20分鐘附近
  • S.value 表示 系統某種資源的數目
  • 不會出現忙等情況,遵循讓權等待原則

總結

二. 用信號量實現互斥、同步

互斥

  • 不同臨界資源,設置不同互斥信號量
  • P、V 操作成對出現:缺P不能保證互斥訪問,缺V會導致資源永遠不被釋放

同步

  • 前操作之后,執行 V
  • 后操作之前,執行 P(要取,保證在【前操作存之后】才能跑)

前驅

  • 每一對前驅關系設置一個同步變量
  • 在此基礎上走上面的【同步】的 PV 設定方式

總結

  • 互斥:信號量初值1
  • 同步:信號量初值0
  • 前驅:本質上就是更復雜的同步問題

總結

以上是生活随笔為你收集整理的【学习笔记】第二章——信号量机制 用信号量实现互斥、同步的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。