六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學習啦>知識大全>原因大全>

死鎖的原因是什么

時間: 曉賢752 分享

  雖然進程在運行過程中,可能發(fā)生死鎖,但死鎖的發(fā)生也有一定的原因。那么,死鎖的原因是什么?死鎖的處理方法是什么?下面就由學習啦小編告訴大家吧!

  死鎖的原因是什么

  1、系統(tǒng)資源不足

  2、進程推進順序非法

  必要條件:

  1、 互斥條件

  2、 不剝奪條件(非搶占)

  3、 占有并等待(部分分配)

  4、 環(huán)路條件

  產生死鎖的根本原因:

  產生死鎖的根本原因是系統(tǒng)能夠提供的資源個數(shù)比請求該資源的進程數(shù)要少。

  死鎖的處理方法

  在系統(tǒng)中已經出現(xiàn)死鎖后,應該及時檢測到死鎖的發(fā)生,并采取適當?shù)?a href='http://www.yishupeixun.net/fwn/cuoshi/' target='_blank'>措施來解除死鎖。目前處理死鎖的方法可歸結為以下四種:

  1)預防死鎖。

  這是一種較簡單和直觀的事先預防的方法。方法是通過設置某些限制條件,去破壞產生死鎖的四個必要條件中的一個或者幾個,來預防發(fā)生死鎖。預防死鎖是一種較易實現(xiàn)的方法,已被廣泛使用。但是由于所施加的限制條件往往太嚴格,可能會導致系統(tǒng)資源利用率和系統(tǒng)吞吐量降低。

  2)避免死鎖。

  該方法同樣是屬于事先預防的策略,但它并不須事先采取各種限制措施去破壞產生死鎖的的四個必要條件,而是在資源的動態(tài)分配過程中,用某種方法去防止系統(tǒng)進入不安全狀態(tài),從而避免發(fā)生死鎖。

  3)檢測死鎖。

  這種方法并不須事先采取任何限制性措施,也不必檢查系統(tǒng)是否已經進入不安全區(qū),此方法允許系統(tǒng)在運行過程中發(fā)生死鎖。但可通過系統(tǒng)所設置的檢測機構,及時地檢測出死鎖的發(fā)生,并精確地確定與死鎖有關的進程和資源,然后采取適當措施,從系統(tǒng)中將已發(fā)生的死鎖清除掉。

  檢測方法包括定時檢測、效率低時檢測、進程等待時檢測等。

  4)解除死鎖。

  這是與檢測死鎖相配套的一種措施。當檢測到系統(tǒng)中已發(fā)生死鎖時,須將進程從死鎖狀態(tài)中解脫出來。常用的實施方法是撤銷或掛起一些進程,以便回收一些資源,再將這些資源分配給已處于阻塞狀態(tài)的進程,使之轉為就緒狀態(tài),以繼續(xù)運行。死鎖的檢測和解除措施,有可能使系統(tǒng)獲得較好的資源利用率和吞吐量,但在實現(xiàn)上難度也最大。

死鎖的原因是什么

雖然進程在運行過程中,可能發(fā)生死鎖,但死鎖的發(fā)生也有一定的原因。那么,死鎖的原因是什么?死鎖的處理方法是什么?下面就由學習啦小編告訴大家吧! 死鎖的原因是什么 1、系統(tǒng)資源不足 2、進程推進順序非法 必要條件: 1、 互斥條件 2、
推薦度:
點擊下載文檔文檔為doc格式
819711