国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 基礎(chǔ)常識(shí) > 正文

系統(tǒng)進(jìn)程死鎖產(chǎn)生的原因

2019-10-30 20:42:19
字體:
供稿:網(wǎng)友

   1.有限資源的競(jìng)爭(zhēng)引起進(jìn)程死鎖

  當(dāng)系統(tǒng)中為多個(gè)進(jìn)程所共享的資源不能同吋滿足它們的需求時(shí),引起它們對(duì)資源的競(jìng)爭(zhēng)而產(chǎn)生死鎖。在通常情況下,系統(tǒng)中的資源分為可剝奪、非剝奪和臨時(shí)性資源,不同類型的資源在發(fā)生死鎖時(shí)的處理方式不同。

  (1)可剝奪資源如CPU和主存等,在系統(tǒng)中優(yōu)先權(quán)高的進(jìn)程可剝奪優(yōu)先權(quán)低的進(jìn)程對(duì)這些資源的占用。

  (2)非剝奪資源如打印機(jī)、讀卡機(jī)和磁帶機(jī)等是屬于吋順序重復(fù)使用的資源。這類資源的特點(diǎn)是,當(dāng)系統(tǒng)把某資源分配給某進(jìn)程后,不能再強(qiáng)行收回,只能在進(jìn)程用完后自動(dòng)釋放。圖1所示是多個(gè)進(jìn)程因爭(zhēng)奪非剝奪資源產(chǎn)生死鎖的典型例子。具體地說,如果有一組進(jìn)程P1,P2,...,Pn,其中P1,P2,...,Pn分別占有資源R1,R2,...,Rn,P1同時(shí)又申請(qǐng)資源R2,P2同時(shí)又申請(qǐng)資源R3,…,Pn-1同時(shí)又申請(qǐng)Rn,Pn占有資源Rn同時(shí)再申請(qǐng)資源R1。此時(shí),這組進(jìn)程都因資源得不到滿足而進(jìn)人了互相等待的阻塞狀態(tài),永遠(yuǎn)也不可能前進(jìn)并到達(dá)終點(diǎn),這時(shí)就說系統(tǒng)中出現(xiàn)了死鎖現(xiàn)象,P1,P2,...,Pn這組進(jìn)程處于死鎖狀態(tài)。

系統(tǒng)進(jìn)程死鎖產(chǎn)生的原因   三聯(lián)

  (3)臨時(shí)性資源是指由進(jìn)程產(chǎn)生、使用后無用的資源。如進(jìn)程通信時(shí)使用的信件,如果對(duì)信件的發(fā)送和接收不加限制的話,則可能引起死鎖。如圖2所示,S1、S2和S3是臨時(shí)性資源,分別由進(jìn)程P1、P2和P3產(chǎn)生,進(jìn)程之間的通信情況是:P1要求從P3接收信件,P3要求從P2接收信件,P2要求從P1接收信件。而實(shí)際的操作過程是:進(jìn)程P1等待進(jìn)程P3的信件S3來到后再向進(jìn)程P2發(fā)送信件S1,P2又要等待P1的信件S1來到后再向P3發(fā)送信件S2,而P3也要等待P2的信件S2來到后才能發(fā)出信件S3。在這種情況下就形成了循環(huán)等待,發(fā)生死鎖。

系統(tǒng)進(jìn)程死鎖產(chǎn)生的原因

  由此可見,多個(gè)進(jìn)程競(jìng)爭(zhēng)使用資源,而系統(tǒng)提供的資源數(shù)不能完全滿足進(jìn)程的需求,所以資源不足是引起死鎖的主要原因。但需要注意的是,并不是多個(gè)進(jìn)程要求使用多個(gè)資源就一定會(huì)產(chǎn)生死鎖,上例還表明,進(jìn)程在運(yùn)行中對(duì)資源要求在時(shí)間上的沖突也是產(chǎn)生死鎖的一個(gè)原因。

  2.進(jìn)程推進(jìn)的順序不當(dāng)引起死鎖

  由于進(jìn)程的調(diào)度是獨(dú)立的,因此它們對(duì)資源的請(qǐng)求和釋放操作也存在多種序列,其中有些序列是不安全的,如上面提到的對(duì)臨時(shí)性資源的占用情況;而有些序列是安全的,例如進(jìn)程P1、P2都需要資源R1、R2,如果兩個(gè)進(jìn)程的推進(jìn)順序是,進(jìn)程P1占有資源R1,申請(qǐng)R2時(shí),進(jìn)程P2還未占有R2,這樣就不會(huì)發(fā)生死鎖。這說明死鎖是一種與時(shí)間有關(guān)的錯(cuò)誤,它和各進(jìn)程推進(jìn)的速度以及對(duì)資源清求的順序有關(guān)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 霍城县| 海林市| 方山县| 华安县| 女性| 定州市| 博罗县| 彝良县| 阜阳市| 格尔木市| 神池县| 卓资县| 萝北县| 鄂尔多斯市| 尼木县| 东兰县| 宁城县| 左权县| 红河县| 万宁市| 北宁市| 安丘市| 乌拉特后旗| 孝义市| 冕宁县| 哈巴河县| 枣庄市| 比如县| 鹤山市| 绥江县| 石渠县| 周至县| 岳阳县| 保靖县| 常宁市| 嵊州市| 会东县| 黄平县| 自贡市| 达孜县| 伊川县|