動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)與實(shí)現(xiàn)_第1頁(yè)
動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)與實(shí)現(xiàn)_第2頁(yè)
動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)與實(shí)現(xiàn)_第3頁(yè)
動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)與實(shí)現(xiàn)_第4頁(yè)
動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)與實(shí)現(xiàn)本文從實(shí)時(shí)操作系統(tǒng)的調(diào)度功能入手,簡(jiǎn)單介紹了實(shí)時(shí)調(diào)度算法的分類和種類,并主要討論動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)和實(shí)現(xiàn)。接下來(lái)本文介紹了兩類動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法:截止時(shí)間優(yōu)先調(diào)度算法和最短空閑時(shí)間優(yōu)先調(diào)度算法的定義及實(shí)現(xiàn)方式。然后將靜態(tài)調(diào)度與動(dòng)態(tài)調(diào)度進(jìn)行比較,突出動(dòng)態(tài)優(yōu)先級(jí)調(diào)度的特點(diǎn),同時(shí)指出其可能導(dǎo)致的優(yōu)先級(jí)反轉(zhuǎn)、死鎖等不良后果。然后具體介紹了優(yōu)先級(jí)反轉(zhuǎn)的定義以及解決該問(wèn)題的兩種方案:采用優(yōu)先級(jí)繼承協(xié)議與采用優(yōu)先級(jí)天花板協(xié)議。在嵌入式的實(shí)時(shí)操作系統(tǒng)中,調(diào)度是一個(gè)非常重要的功能,用來(lái)確定多任務(wù)環(huán)境下任務(wù) 執(zhí)行的順序和在獲得 CPU資源后能夠執(zhí)行的時(shí)間長(zhǎng)度。操作系統(tǒng)通過(guò)一個(gè)調(diào)

2、度程序(Scheduler)來(lái)實(shí)現(xiàn)調(diào)度功能。調(diào)度程序以函數(shù)的形式存在,用來(lái)實(shí)現(xiàn)操作系統(tǒng)的調(diào)度算法。調(diào)度程序本身并不是一個(gè)任務(wù),而是一個(gè)函數(shù)調(diào)用,可在內(nèi)核的各個(gè)部分進(jìn)行調(diào)用。調(diào)度程序是影響系統(tǒng)性能(如吞吐率、延遲時(shí)間等)的重要部分。 在設(shè)計(jì)調(diào)度程序是、時(shí),通常要綜合考慮如下因素: CPU 的使用率(CUP utilization ); 輸入/輸出設(shè)備的吞吐率; 響應(yīng)時(shí)間(responsive time ); 公平性; 截止時(shí)間。這些因素之間具有一定的沖突性。比如可通過(guò)讓更多的任務(wù)處于就緒狀態(tài)來(lái)提高CPU的使用率,但這顯然會(huì)降低系統(tǒng)的響應(yīng)時(shí)間。因此,調(diào)度程序的設(shè)計(jì)需要優(yōu)先考慮最重要的需求,然后在各

3、種因素之間進(jìn)行折中處理。可以把一個(gè)調(diào)度算法(Scheduling Algorithms )描述為是在一個(gè)特定時(shí)刻用來(lái)確定將要 運(yùn)行的任務(wù)的一組規(guī)則。從1973年Liu和Layland開(kāi)始關(guān)于實(shí)時(shí)調(diào)度算法的研究工作以來(lái).范文范例學(xué)習(xí)參考指導(dǎo).(1973 年,Liu 和 Layland 發(fā)表了 一篇名為"Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment"的論文),相繼出現(xiàn)了許多調(diào)度算法和方法。對(duì)于大量的實(shí)時(shí)調(diào)度方法而言,存在著以下幾類主要的劃分方法:離線(off-line )和在

4、線(on-line )調(diào)度;搶占(preemptive )和非搶占(non-preemptive )調(diào)度;靜態(tài)(static)和動(dòng)態(tài)(dynamic)調(diào)度;最佳(optimal )和試探性(heuristic)調(diào)度。以下主要討論動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的特點(diǎn)和實(shí)現(xiàn)。一、動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的定義優(yōu)先級(jí)驅(qū)動(dòng)策略指按照任務(wù)的優(yōu)先級(jí)的高低確定任務(wù)的執(zhí)行順序。根據(jù)任務(wù)優(yōu)先級(jí)的確定時(shí)機(jī),調(diào)度算法分為靜態(tài)調(diào)度和動(dòng)態(tài)調(diào)度兩類。在靜態(tài)調(diào)度算法中,所有任務(wù)的優(yōu)先級(jí)在設(shè)計(jì)時(shí)就確定下來(lái)了,且在運(yùn)行過(guò)程中不會(huì)發(fā)生變化(如RMS)。在動(dòng)態(tài)調(diào)度算法中,任務(wù)的優(yōu)先級(jí)則在運(yùn)行過(guò)程中確定,并可能不斷地發(fā)生變化(如EDF)。靜態(tài)調(diào)度算法

5、適用于能夠完全把握系統(tǒng)中所有任務(wù)及其時(shí)間約束(如截止時(shí)間、運(yùn)行時(shí)間、優(yōu)先順序和運(yùn)行過(guò)程中的到達(dá)時(shí)間)特性的情況。靜態(tài)調(diào)度比較簡(jiǎn)單,但是缺乏靈活性,不利于系統(tǒng)擴(kuò)展;動(dòng)態(tài) 調(diào)度有足夠的靈活性來(lái)處理變化的系統(tǒng)情況,但是需要消耗更多的系統(tǒng)資源。在動(dòng)態(tài)調(diào)度中,任務(wù)的優(yōu)先級(jí)可根據(jù)需要進(jìn)行改變,也可能隨著時(shí)間按照一定的策略自動(dòng)發(fā)生變化。二、動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的分類1、截止時(shí)間優(yōu)先調(diào)度算法RMS調(diào)度算法(Rate-Monotonic Scheduling algorithm ,比率單調(diào)調(diào)度算法)的CPU使用率比較低,在任務(wù)比較多的情況下,可調(diào)度上限為68%。Liu和Layland又提出了一種采用動(dòng)態(tài)調(diào)度的、具

6、有更高CPU使用率的調(diào)度算法一一截止時(shí)間優(yōu)先調(diào)度算法EDF Earliest DeadlineFirst)。在EDF中,任務(wù)的優(yōu)先級(jí)根據(jù)任務(wù)的截止時(shí)間來(lái)確定。任務(wù)的絕對(duì)截止時(shí)間越近, 任務(wù)的優(yōu)先級(jí)越高;任務(wù)的絕對(duì)截止時(shí)間越遠(yuǎn),任務(wù)的優(yōu)先級(jí)越低。當(dāng)有新的任務(wù)處于就緒狀態(tài)時(shí),任務(wù)的優(yōu)先級(jí)就有可能需要進(jìn)行調(diào)整。同 RMS一樣,Liu和Layland對(duì)EDF算法的 分析也是在一系列假設(shè)的基礎(chǔ)上進(jìn)行的。在 Liu和Layland的分析中,EDF不要求任務(wù)為周 期任務(wù),其他假設(shè)條件與RMS相同。例如在系統(tǒng)中有3個(gè)進(jìn)程需要執(zhí)行,分別為P1、P2、P3,其執(zhí)行需花費(fèi)白時(shí)間各為 1、 2、1l,而執(zhí)行周期為3、

7、5、4,在時(shí)間單位4時(shí),因?yàn)镻1的執(zhí)行時(shí)限為6, P2的執(zhí)行時(shí)限 為10, P3的執(zhí)行時(shí)限為8,所以P1的優(yōu)先級(jí)最高,進(jìn)程切換到 P1:在時(shí)間單位6時(shí),因 為P1的執(zhí)行時(shí)限為9, P2的執(zhí)行時(shí)限為10, P3的執(zhí)行時(shí)限為12,所以P1的優(yōu)先級(jí)最高,進(jìn)程又再次切換到 P1,而非P2:在時(shí)間單位7時(shí),因?yàn)镻1的執(zhí)行時(shí)限為12, P2的執(zhí)行時(shí) 限為10, P3的執(zhí)行時(shí)限為12,所以P2的優(yōu)先級(jí)最高,進(jìn)程切換到P2。后續(xù)流程以此類推。叫口口 I ri r( 051015EDF算法是最優(yōu)的單處理器動(dòng)態(tài)調(diào)度算法,其可調(diào)度上限為100%。在EDF調(diào)度算法下,對(duì)于給定的一組任務(wù),任務(wù)可調(diào)度的充分必要條件為對(duì)于

8、給定的一組任務(wù),如果EDF不能滿足其調(diào)度性要求,則沒(méi)有其他調(diào)度算法能夠滿足這組任務(wù)的調(diào)度性要求。同基于固定優(yōu)先級(jí)的靜態(tài)調(diào)度性比,采用基于動(dòng)態(tài)優(yōu)先級(jí)調(diào)度的EDF算法的顯著優(yōu)點(diǎn)在于EDF的可調(diào)度上限為100%,使CPU的計(jì)算能力能夠被充分利用起來(lái)。EDF也存在不足之處,在實(shí)時(shí)系統(tǒng)中不容易實(shí)現(xiàn),并且,同 RMS相比,EDF具有更大的調(diào)度開(kāi)銷,需要在 系統(tǒng)運(yùn)行的過(guò)程中動(dòng)態(tài)地計(jì)算確定任務(wù)的優(yōu)先級(jí)。另外,在系統(tǒng)出現(xiàn)臨時(shí)過(guò)載的情況下,EDF算法不能確定哪個(gè)任務(wù)的截止時(shí)間會(huì)得不到滿足。為此,Liu和Layland提出了一種混合的調(diào)度算法,即大多數(shù)任務(wù)都采用RMS進(jìn)行調(diào)度,只有少量任務(wù)采用EDF調(diào)度算法。盡管混

9、合的調(diào)度算法不能達(dá)到 100%的CUP使用率,大確實(shí)綜合了 EDF和RMS調(diào)度算法的優(yōu)點(diǎn),使 這個(gè)調(diào)度比較容易實(shí)現(xiàn)。2、最短空閑時(shí)間優(yōu)先調(diào)度算法在最短空閑時(shí)間優(yōu)先調(diào)度算法(least-laxity-first scheduling )中,任務(wù)的優(yōu)先級(jí)根據(jù)任務(wù) 的空閑時(shí)間進(jìn)行動(dòng)態(tài)分配。任務(wù)的空閑時(shí)間越短,任務(wù)的優(yōu)先級(jí)越高;任務(wù)的空閑時(shí)間越長(zhǎng), 任務(wù)的優(yōu)先級(jí)越低。任務(wù)的空閑時(shí)間可通過(guò)下式來(lái)表示,即任務(wù)的空閑時(shí)間=任務(wù)的絕對(duì)截止時(shí)間一當(dāng)前時(shí)間一任務(wù)的剩余時(shí)間四、靜態(tài)調(diào)度與動(dòng)態(tài)調(diào)度之間的比較動(dòng)態(tài)調(diào)度的出現(xiàn)時(shí)為了確保低優(yōu)先級(jí)任務(wù)也能被調(diào)度。這種公平性對(duì)于所有任務(wù)都同等重要的系統(tǒng)比較合適,對(duì)于需要絕對(duì)可預(yù)

10、測(cè)性的系統(tǒng)一般不使用動(dòng)態(tài)調(diào)度。這些系統(tǒng)中,在出現(xiàn)臨時(shí)過(guò)載的情況下,要求調(diào)度算法能夠選擇最緊急的任務(wù)執(zhí)行,而放棄那些不太緊急的任務(wù)。而動(dòng)態(tài)調(diào)度的優(yōu)先級(jí)只反映了任務(wù)的時(shí)間特性,沒(méi)有把任務(wù)的緊急程度體現(xiàn)到優(yōu)先級(jí)中去。動(dòng)態(tài)調(diào)度的調(diào)度代價(jià)通常都比靜態(tài)調(diào)度高,這主要是由于在每一個(gè)調(diào)度點(diǎn)都需要對(duì)任務(wù)的優(yōu)先級(jí)進(jìn)行重新計(jì)算,而靜態(tài)調(diào)度中任務(wù)的優(yōu)先級(jí)則始終保持不變,不需要進(jìn)行計(jì)算。然而,要注意,動(dòng)態(tài)優(yōu)先級(jí)調(diào)度算法的濫用會(huì)導(dǎo)致優(yōu)先級(jí)反轉(zhuǎn)、死鎖,甚至系統(tǒng)崩潰。五、優(yōu)先級(jí)反轉(zhuǎn)優(yōu)先級(jí)反轉(zhuǎn)是指由于資源競(jìng)爭(zhēng),低優(yōu)先級(jí)的任務(wù)在執(zhí)行,而高優(yōu)先級(jí)的任務(wù)在等待的現(xiàn) 象。當(dāng)具有不同優(yōu)先級(jí)的任務(wù)中存在相互依賴關(guān)系時(shí),就可能發(fā)生優(yōu)先級(jí)反轉(zhuǎn)

11、。例如當(dāng)系統(tǒng)內(nèi)低優(yōu)先級(jí)的任務(wù) C占用著高優(yōu)先級(jí)任務(wù) A要使用的資源時(shí),任務(wù) A只好 等待任務(wù)C執(zhí)行完畢,并釋放該資源后才能被調(diào)度執(zhí)行。這時(shí),如果有中優(yōu)先級(jí)任務(wù)B進(jìn)入就緒,剝奪了任務(wù) C的CPU使用權(quán),使得系統(tǒng)只有先讓B運(yùn)行完畢,且任務(wù) C重新運(yùn)行結(jié)束并釋放資源后,任務(wù) A才能運(yùn)行。這樣,任務(wù) A和B的優(yōu)先級(jí)發(fā)生了顛倒。在這種情 況下,高優(yōu)先級(jí)的任務(wù)的優(yōu)先級(jí)實(shí)際上已經(jīng)降到了低優(yōu)先級(jí)的水平,從而發(fā)生優(yōu)先級(jí)反轉(zhuǎn)現(xiàn)象,中優(yōu)先級(jí)的任務(wù)搶占低優(yōu)先級(jí)的任務(wù),時(shí)間可能不確定,因此稱為無(wú)界優(yōu)先級(jí)反轉(zhuǎn)。類似地,當(dāng)一個(gè)較高優(yōu)先級(jí)的任務(wù)請(qǐng)求一個(gè)較低優(yōu)先級(jí)任務(wù)占有的資源時(shí),較低優(yōu)先級(jí)的任務(wù)卻鎖住了該資源, 即使較高優(yōu)先

12、級(jí)的任務(wù)就緒,它也必須等待低優(yōu)先級(jí)的任務(wù)釋放資源后才能繼續(xù)運(yùn)行。 在這種情況下,低優(yōu)先級(jí)的任務(wù)占用資源的時(shí)間是已知的,因此稱為有界優(yōu)先級(jí)反轉(zhuǎn)。有界優(yōu)先級(jí)反轉(zhuǎn)實(shí)例當(dāng)優(yōu)先級(jí)發(fā)生反轉(zhuǎn)時(shí),某些任務(wù)的執(zhí)行時(shí)間減少, 同時(shí)其他任務(wù)的執(zhí)行時(shí)間延長(zhǎng),導(dǎo)致任務(wù)錯(cuò)失時(shí)限,進(jìn)而引起時(shí)序反常。優(yōu)先級(jí)反轉(zhuǎn)是由不同優(yōu)先級(jí)任務(wù)間的資源同步引起的,在實(shí)際應(yīng)用中是不可避免的, 但可以使用資源控制協(xié)議將其降到最低限度。 解決優(yōu)先級(jí)反轉(zhuǎn)問(wèn)題的常用方法主要有兩種: 采 用優(yōu)先級(jí)繼承協(xié)議與采用優(yōu)先級(jí)天花板協(xié)議。1.優(yōu)先級(jí)繼承協(xié)議為防止發(fā)生優(yōu)先級(jí)的反轉(zhuǎn),多任務(wù)內(nèi)核應(yīng)允許動(dòng)態(tài)地改變?nèi)蝿?wù)的優(yōu)先級(jí)。如果一個(gè)任務(wù)占有被高優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源,

13、那么,該任務(wù)的優(yōu)先級(jí)會(huì)暫時(shí)提升到與被該任務(wù)阻塞的所有任務(wù)中優(yōu)先級(jí)最高的任務(wù)同樣的優(yōu)先級(jí)水平,當(dāng)該任務(wù)退出臨界區(qū)時(shí), 再恢復(fù)到最初的優(yōu)先級(jí),這種方法稱為優(yōu)先級(jí)繼承。目前,很多商業(yè)內(nèi)核都具有優(yōu)先級(jí)繼承的功能。優(yōu)先級(jí)繼承協(xié)議規(guī)則如下表所示。優(yōu)先級(jí)繼承協(xié)議規(guī)則協(xié)議規(guī)則號(hào)描述1 如果資源R在使用,則任務(wù)T被阻塞;如果資源 R是空閑的,則資源 R被分配給任務(wù)T2 當(dāng)較高優(yōu)先級(jí)的任務(wù) T,請(qǐng)求資源R時(shí),任務(wù)T的優(yōu)先級(jí)被提升到 T'的優(yōu)先級(jí)等級(jí)3 當(dāng)任務(wù)T釋放資源R后,返回到先前的優(yōu)先級(jí)優(yōu)先級(jí)繼承的例子如下:任務(wù)A是高優(yōu)先級(jí)的,任務(wù) C是低優(yōu)先級(jí)的。任務(wù) C首先獲得共享資源S,而任務(wù)A也請(qǐng)求該資源,優(yōu)

14、先級(jí)繼承協(xié)議要求任務(wù) C以任務(wù)A的優(yōu)先級(jí)執(zhí)行 臨界區(qū),這樣,任務(wù) C在執(zhí)行臨界區(qū)時(shí),其優(yōu)先級(jí)比它本身的優(yōu)先級(jí)高,這時(shí),中優(yōu)先級(jí)的 任務(wù)B不能搶占任務(wù) C了,當(dāng)任務(wù)C退出臨界區(qū)時(shí),又恢復(fù)到原來(lái)的優(yōu)先級(jí),使任務(wù) A仍 為最高優(yōu)先級(jí)的任務(wù),這樣,任務(wù)A便不會(huì)被中優(yōu)先級(jí)的任務(wù)無(wú)限期阻塞了。在優(yōu)先級(jí)繼承協(xié)議中, 任務(wù)T進(jìn)入臨界區(qū)而阻塞了更高優(yōu)先級(jí)的任務(wù),則任務(wù)T將繼承被阻塞任務(wù)的優(yōu)先級(jí),直到任務(wù)T退出臨界區(qū)。優(yōu)先級(jí)繼承協(xié)議是動(dòng)態(tài)的,一個(gè)不相關(guān)的較 高優(yōu)先級(jí)任務(wù)仍可進(jìn)行任務(wù)搶占,這是基于優(yōu)先級(jí)可搶占調(diào)度模式的本性,并且任務(wù)優(yōu)先級(jí)在反轉(zhuǎn)期間,被提升優(yōu)先級(jí)的任務(wù)的優(yōu)先級(jí)可以繼續(xù)被提升,即優(yōu)先級(jí)繼承具有傳遞性。

15、雖然在優(yōu)先級(jí)繼承協(xié)議中, 任務(wù)的阻塞時(shí)問(wèn)是有界的, 但可能出現(xiàn)阻塞鏈, 從而會(huì)加長(zhǎng)阻塞時(shí) 間,甚至造成死鎖。2 .天花板優(yōu)先級(jí)協(xié)議優(yōu)先級(jí)繼承協(xié)議具有死鎖和阻塞鏈問(wèn)題,而天花板優(yōu)先級(jí)(CeilingPriority)協(xié)議可以解決這些問(wèn)題。如果每個(gè)任務(wù)的優(yōu)先級(jí)是已知的,對(duì)于給定資源(或控制該資源訪問(wèn)的信號(hào)量 ),其優(yōu)先級(jí)天花板是所有可能需要該資源的任務(wù)中最高的優(yōu)先級(jí)。例如,資源R被三個(gè)任務(wù)A,B和C所需要,任務(wù) A具有優(yōu)先級(jí)5,任務(wù)B具有優(yōu)先級(jí)7,任務(wù)C具有優(yōu)先級(jí)10,那么資 源R的優(yōu)先級(jí)天花板為10。當(dāng)一個(gè)任務(wù)T請(qǐng)求資源R時(shí),其遵循的天花板優(yōu)先級(jí)協(xié)議如下表所示。天花板優(yōu)先級(jí)協(xié)議規(guī)則協(xié)議規(guī)則號(hào)描述

16、1 如果資源R在使用,則任務(wù) T被阻塞2 如果資源R是空閑的,則資源 R被分配給任務(wù)To如果資源R的優(yōu)先級(jí)天花板比任務(wù)T的優(yōu)先級(jí)高,則任務(wù) T的優(yōu)先級(jí)被提升到資源 R的優(yōu)先級(jí)天花板 等級(jí)。在任意給定時(shí)間,任務(wù)T的執(zhí)行優(yōu)先級(jí)等于所有它占有的資源中最高優(yōu)先級(jí)天花板3 當(dāng)具有最高優(yōu)先級(jí)天花板的資源被釋放時(shí),將任務(wù)T所占有資源的最高優(yōu)先級(jí)天花板分配給它4 當(dāng)具有最高優(yōu)先級(jí)天花板的資源被釋放時(shí),將任務(wù)T所占有資源的最高優(yōu)先級(jí)天花板分配給它使用天花板優(yōu)先級(jí)協(xié)議時(shí), 一旦某任務(wù)獲得該資源或暫無(wú)其他較高優(yōu)先級(jí)的任務(wù)競(jìng)爭(zhēng)同 樣資源時(shí),則此任務(wù)便繼承該資源的優(yōu)先級(jí)天花板,即使沒(méi)有其他較高優(yōu)先級(jí)的任務(wù)競(jìng)爭(zhēng)同樣的資源

17、,也要繼承該資源的優(yōu)先級(jí)天花板。這意味著訪問(wèn)某臨界資源的所有任務(wù)的臨界區(qū)具有同樣的天花板等級(jí)。3 .優(yōu)先級(jí)天花板協(xié)議優(yōu)先級(jí)天花板是指控制訪問(wèn)臨界資源的信號(hào)量的優(yōu)先級(jí)天花板(簡(jiǎn)單的說(shuō),就是某個(gè)臨界資源的優(yōu)先級(jí)天花板),信號(hào)量的優(yōu)先級(jí)天花板是所有使用該信號(hào)量的任務(wù)中具有最高優(yōu) 先級(jí)的任務(wù)的優(yōu)先級(jí)。在任意時(shí)刻,一個(gè)運(yùn)行系統(tǒng)的當(dāng)前優(yōu)先級(jí)天花板(priority ceiling)是此時(shí)所有正在使用的資源中具有最高優(yōu)先級(jí)的優(yōu)先級(jí)天花板。例如,系統(tǒng)中有3個(gè)資源正在使用,資源R1的優(yōu)先級(jí)天花板為 4,資源R2的優(yōu)先級(jí)天花板為 6,資源R3的優(yōu)先級(jí)天花板 為9,則系統(tǒng)當(dāng)前的優(yōu)先級(jí)天花板為9。在優(yōu)先級(jí)天花板協(xié)議下

18、,一個(gè)請(qǐng)求任務(wù)只可以被一個(gè)任務(wù)阻塞,不會(huì)發(fā)生傳遞阻塞(即產(chǎn)生阻塞鏈),也不會(huì)發(fā)生死鎖。當(dāng)一個(gè)任務(wù)T請(qǐng)求資源R時(shí),其訪問(wèn)控制協(xié)議規(guī)則如下表所示。優(yōu)先級(jí)天花板協(xié)議規(guī)則協(xié)議規(guī)則號(hào)描述1 如果資源R在使用,任務(wù)T不能獲得所申請(qǐng)的資源 R,則任務(wù)T被阻塞2 如果資源R空閑且任務(wù)T的優(yōu)先級(jí)比當(dāng)前優(yōu)先級(jí)天花板的高,即任務(wù) T的優(yōu) 先級(jí)高于所有當(dāng)前被其他任務(wù)所獲取的資源的優(yōu)先級(jí)天花板,則資源R分配給任務(wù)T;當(dāng)任務(wù)T的優(yōu)先級(jí)低于當(dāng)前優(yōu)先級(jí)天花板時(shí),即使請(qǐng)求的資源R空閑時(shí),任務(wù)T仍會(huì)被阻塞,即優(yōu)先級(jí)天花板阻塞3 如果當(dāng)前天花板屬于任務(wù) T當(dāng)前保持的資源之一,則空閑資源 R分配給任務(wù)T;反之,任務(wù)T被阻塞4 任務(wù)T將按被分配的優(yōu)先級(jí)執(zhí)行

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論