• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦 > 學習電腦 > 操作系統 > 操作系統基礎知識 > 操作系統鎖

    操作系統鎖

    時間: 佳洲1085 分享

    操作系統鎖

      操作系統的鎖機制能夠保證多線程平穩運行。下面由學習啦小編為大家整理了操作系統的鎖的相關知識,希望對大家有幫助!

      操作系統鎖機制說明

      在多線程編程中,操作系統引入了鎖機制。通過鎖機制,能夠保證在多核多線程環境中,在某一個時間點上,只能有一個線程進入臨界區代碼,從而保證臨界區中操作數據的一致性。

      所謂的鎖,可以理解為內存中的一個整型數,擁有兩種狀態:空閑狀態和上鎖狀態。加鎖時,判斷鎖是否空閑,如果空閑,修改為上鎖狀態,返回成功;如果已經上鎖,則返回失敗。解鎖時,則把鎖狀態修改為空閑狀態。

      加鎖過程用如下偽碼表示:

      1、read lock;

      2、判斷lock狀態;

      3、如果已經加鎖,失敗返回;

      4、把鎖狀態設置為上鎖;

      5、返回成功。

      雖然每一步是原子性的,但是每一步之間卻是可以中斷的。比如進程A在執行完2后發生中斷,中斷中進程B也執行了加鎖過程,返回中斷后就會發生兩個進程都會加鎖。

      對于這個問題,計算機已經解決,方法是采用原子級匯編指令test and set 和swap。

      參考:操作系統死鎖的相關知識

      死鎖的概念.

      死鎖: 是指兩個或兩個以上的進程在執行過程中,因爭奪資源而造成的一種互相等待的現象,若無外力作用,它們都將無法推進下去.此時稱系統處于死鎖狀態或系統產生了死鎖,這些永遠在互相等待的進程稱為死鎖進程.

      比如 兩只羊過獨木橋。進程比作羊,資源比作橋。若兩只羊互不相讓,爭著過橋,就產生死鎖。

      死鎖的原因.

      主要原因(1) 因為系統資源不足。(2) 進程運行推進的順序不合適,保證有先后順序。(3) 資源分配不當等。

      死鎖的必要條件.

      產生死鎖的四個必要條件:

      (1) 互斥條件:一個資源每次只能被一個進程使用。

      (2) 請求與保持條件:一個進程因請求資源而阻塞時,對已獲得的資源保持不放。

      (3) 不剝奪條件: 進程已獲得的資源,在末使用完之前,不能強行剝奪。

      (4) 循環等待條件:若干進程之間形成一種頭尾相接的循環等待資源關系。存在一個進程等待序列{P1,P2,…,Pn},其中P1等待P2所占有的某一資源,P2等待P3所占有的某一 源,……,而Pn等待P1所占有的的某一資源,形成一個進程循環等待環。

      這四個條件是死鎖的必要條件,只要系統發生死鎖,這些條件必然成立,而只要上述條件之一不滿足,就不會發生死鎖。

      解決死鎖的四個方式.

      1)忽略該問題。例如鴕鳥算法,該算法可以應用在極少發生死鎖的的情況下。為什么叫鴕鳥算法呢,(鴕鳥策略)

      2)檢測死鎖并且恢復。(檢測與解除策略)

      3)仔細地對資源進行動態分配,以避免死鎖。(避免策略)

      4)通過破除死鎖四個必要條件之一,來防止死鎖產生。(預防策略)

      C++多線程開發中,容易出現死鎖導致程序掛起的現象。

      解決步驟分為三步:

      1、檢測死鎖線程。

      2、打印線程信息。

      3、修改死鎖程序。

    熱門文章

    3626755 主站蜘蛛池模板: 色综合天天综合中文网 | 三级台湾电影在线| 福利片福利一区二区三区| 女人18毛片a级毛片一区二区| 人人妻人人澡人人爽人人dvd| flstingextreme头交| 欧美日韩精品久久久免费观看| 国产福利在线小视频| 久久国产热这里只有精品| 美女被免网站在线视频| 无码一区二区三区在线观看| 兽皇videos极品另类| 91精品国产色综合久久| 最近免费高清版电影在线观看| 国产乱子经典视频在线观看| 一区二区电影网| 澳门皇冠8x8华人永久免费| 国产男靠女免费视频网站| 主播福利在线观看| 激情五月激情综合网| 国产禁女女网站免费看| 中文字幕亚洲一区二区三区| 浪荡女天天不停挨cao日常视频| 国产日韩综合一区二区性色av| 中文字幕一区二区精品区| 永久免费无内鬼放心开车| 国产成人亚洲精品无码青青草原| 中文字幕一区二区三区久久网站 | 狼群视频在线观看www| 天堂资源最新版在线官网| 亚洲美女黄视频| 84pao国产成视频免费播放| 欧美帅老头oldmangay| 国产极品视觉盛宴| 丰满岳乱妇在线观看中字无码 | 免费a级毛片永久免费| 91精品国产品国语在线不卡| 欧美18www| 又粗又大又硬又爽的免费视频| 99久久亚洲精品无码毛片| 橘子没熟svk|