版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
調(diào)度算法目錄Linux內(nèi)核的三種調(diào)度策略
SHCED_RRSCHED_FIFO的異同2調(diào)度方式詳解Linux內(nèi)核的三種常用調(diào)度策略31,SCHED_OTHER
分時(shí)調(diào)度策略,
2,SCHED_FIFO實(shí)時(shí)調(diào)度策略,先到先服務(wù)
3,SCHED_RR實(shí)時(shí)調(diào)度策略,時(shí)間片輪轉(zhuǎn)實(shí)時(shí)進(jìn)程將得到優(yōu)先調(diào)用,實(shí)時(shí)進(jìn)程根據(jù)實(shí)時(shí)優(yōu)先級(jí)決定調(diào)度權(quán)值。分時(shí)進(jìn)程則通過(guò)nice和counter值決定權(quán)值,nice越小,counter越大,被調(diào)度的概率越大,也就是曾經(jīng)使用了cpu最少的進(jìn)程將會(huì)得到優(yōu)先調(diào)度。
SHCED_RR與SCHED_FIFO的異同4SHCED_RR和SCHED_FIFO的不同:
當(dāng)采用SHCED_RR策略的進(jìn)程的時(shí)間片用完,系統(tǒng)將重新分配時(shí)間片,并置于就緒隊(duì)列尾。放在隊(duì)列尾保證了所有具有相同優(yōu)先級(jí)的RR任務(wù)的調(diào)度公平。
SCHED_FIFO一旦占用cpu則一直運(yùn)行。一直運(yùn)行直到有更高優(yōu)先級(jí)任務(wù)到達(dá)或自己放棄。
如果有相同優(yōu)先級(jí)的實(shí)時(shí)進(jìn)程(根據(jù)優(yōu)先級(jí)計(jì)算的調(diào)度權(quán)值是一樣的)已經(jīng)準(zhǔn)備好,F(xiàn)IFO時(shí)必須等待該進(jìn)程主動(dòng)放棄后才可以運(yùn)行這個(gè)優(yōu)先級(jí)相同的任務(wù)。而RR可以讓每個(gè)任務(wù)都執(zhí)行一段時(shí)間。SHCED_RR與SCHED_FIFO的異同5相同點(diǎn):
RR和FIFO都只用于實(shí)時(shí)任務(wù)。
創(chuàng)建時(shí)優(yōu)先級(jí)大于0(1-99)。
按照可搶占優(yōu)先級(jí)調(diào)度算法進(jìn)行。
就緒態(tài)的實(shí)時(shí)任務(wù)立即搶占非實(shí)時(shí)任務(wù)調(diào)度方式詳解6所有任務(wù)都采用linux分時(shí)調(diào)度策略(SCHED_OTHER)時(shí):1,創(chuàng)建任務(wù)指定采用分時(shí)調(diào)度策略,并指定優(yōu)先級(jí)nice值(-20~19)。2,將根據(jù)每個(gè)任務(wù)的nice值確定在cpu上的執(zhí)行時(shí)間(counter)。3,如果沒有等待資源,則將該任務(wù)加入到就緒隊(duì)列中。74,調(diào)度程序遍歷就緒隊(duì)列中的任務(wù),通過(guò)對(duì)每個(gè)任務(wù)動(dòng)態(tài)優(yōu)先級(jí)的計(jì)算權(quán)值(counter+20-nice)結(jié)果,選擇計(jì)算結(jié)果最大的一個(gè)去運(yùn)行,當(dāng)這個(gè)時(shí)間片用完后(counter減至0)或者主動(dòng)放棄cpu時(shí),該任務(wù)將被放在就緒隊(duì)列末尾(時(shí)間片用完)或等待隊(duì)列(因等待資源而放棄cpu)中。5,此時(shí)調(diào)度程序重復(fù)上面計(jì)算過(guò)程,轉(zhuǎn)到第4步。6,當(dāng)調(diào)度程序發(fā)現(xiàn)所有就緒任務(wù)計(jì)算所得的權(quán)值都為不大于0時(shí),重復(fù)第2步。調(diào)度方式詳解8所有任務(wù)都采用實(shí)時(shí)調(diào)度算法FIFO時(shí):1,創(chuàng)建進(jìn)程時(shí)指定采用FIFO,并設(shè)置實(shí)時(shí)優(yōu)先級(jí)rt_priority(1-99)。2,如果沒有等待資源,則將該任務(wù)加入到就緒隊(duì)列中。3,調(diào)度程序遍歷就緒隊(duì)列,根據(jù)實(shí)時(shí)優(yōu)先級(jí)計(jì)算調(diào)度權(quán)值(1000+rt_priority),選擇權(quán)值最高的任務(wù)使用cpu,該FIFO任務(wù)將一直占有cpu直到有優(yōu)先級(jí)更高的任務(wù)就緒(即使優(yōu)先級(jí)相同也不行)或者主動(dòng)放棄(等待資源)。
94,調(diào)度程序發(fā)現(xiàn)有優(yōu)先級(jí)更高的任務(wù)到達(dá)(高優(yōu)先級(jí)任務(wù)可能被中斷或定時(shí)器任務(wù)喚醒,再或被當(dāng)前運(yùn)行的任務(wù)喚醒,等等),則調(diào)度程序立即在當(dāng)前任務(wù)堆棧中保存當(dāng)前cpu寄存器的所有數(shù)據(jù),重新從高優(yōu)先級(jí)任務(wù)的堆棧中加載寄存器數(shù)據(jù)到cpu,此時(shí)高優(yōu)先級(jí)的任務(wù)開始運(yùn)行。重復(fù)第3步。5,如果當(dāng)前任務(wù)因等待資源而主動(dòng)放棄cpu使用權(quán),則該任務(wù)將從就緒隊(duì)列中刪除,加入等待隊(duì)列,此時(shí)重復(fù)第3步。
調(diào)度方式詳解10所有任務(wù)都采用RR實(shí)時(shí)調(diào)度策略時(shí):1,創(chuàng)建任務(wù)時(shí)指定調(diào)度參數(shù)為RR,并設(shè)置任務(wù)的實(shí)時(shí)優(yōu)先級(jí)和nice值(nice值將會(huì)轉(zhuǎn)換為該任務(wù)的時(shí)間片的長(zhǎng)度)。2,如果沒有等待資源,則將該任務(wù)加入到就緒隊(duì)列中。3,調(diào)度程序遍歷就緒隊(duì)列,根據(jù)實(shí)時(shí)優(yōu)先級(jí)計(jì)算調(diào)度權(quán)值(1000+rt_priority),選擇權(quán)值最高的任務(wù)使用cpu。4,如果就緒隊(duì)列中的RR任務(wù)時(shí)間片為0,則會(huì)根據(jù)nice值設(shè)置該任務(wù)的時(shí)間片,同時(shí)將該任務(wù)放入就緒隊(duì)列的末尾。重復(fù)步驟3。5,當(dāng)前任務(wù)由于等待資源而主動(dòng)退出cpu,則其加入等待隊(duì)列中。重復(fù)步驟3。調(diào)度方式詳解11系統(tǒng)中既有分時(shí)調(diào)度,又有時(shí)間片輪轉(zhuǎn)調(diào)度和先進(jìn)先出調(diào)度:
1,RR調(diào)度和FIFO調(diào)度的進(jìn)程屬于實(shí)時(shí)進(jìn)程,以分時(shí)調(diào)度的進(jìn)程是非實(shí)時(shí)進(jìn)程。2,當(dāng)實(shí)時(shí)進(jìn)程準(zhǔn)備就緒后,如果當(dāng)前cpu正在運(yùn)行非實(shí)時(shí)進(jìn)程,則實(shí)時(shí)進(jìn)程立即搶占非實(shí)時(shí)進(jìn)程。3,RR進(jìn)程和FIFO進(jìn)程都采用實(shí)時(shí)優(yōu)先級(jí)做為調(diào)度的權(quán)值標(biāo)準(zhǔn),RR是FIFO的一個(gè)延伸。FIFO時(shí),如果兩個(gè)進(jìn)程的優(yōu)先級(jí)一樣,則這兩個(gè)優(yōu)先級(jí)一樣的進(jìn)程具體執(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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 西藏大學(xué)《建筑設(shè)備自動(dòng)化B》2023-2024學(xué)年第二學(xué)期期末試卷
- 沈陽(yáng)師范大學(xué)《土地整治學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 銅陵學(xué)院《國(guó)際企業(yè)戰(zhàn)略管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶外語(yǔ)外事學(xué)院《溶劑萃取與離子交換》2023-2024學(xué)年第二學(xué)期期末試卷
- 沈陽(yáng)科技學(xué)院《認(rèn)知智能與智能通信技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 西安外國(guó)語(yǔ)大學(xué)《廣告學(xué)理論與實(shí)務(wù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 福州理工學(xué)院《機(jī)械制圖基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 養(yǎng)老服務(wù)職業(yè)資格制度
- 工業(yè)互聯(lián)網(wǎng)標(biāo)識(shí)解析技術(shù)規(guī)范協(xié)議2025
- 關(guān)于生育全程服務(wù)相關(guān)制度
- 2026廣東東莞市厚街鎮(zhèn)第一次招聘編外聘用人員12人考試備考試題及答案解析
- 2026年智能燃?xì)鈭?bào)警器項(xiàng)目營(yíng)銷方案
- 中科宇航招聘筆試題庫(kù)2026
- 醫(yī)院物資采購(gòu)流程及管理規(guī)范手冊(cè)
- 2026年低空管控系統(tǒng)項(xiàng)目投資計(jì)劃書
- 預(yù)制空心板梁架設(shè)專項(xiàng)施工方案
- 護(hù)理職業(yè)素養(yǎng)與形象
- 農(nóng)村供水題庫(kù)及答案
- 足球隊(duì)組成介紹
- 地震公路交通設(shè)施損壞事件應(yīng)急預(yù)案
- 溝通管理溝通計(jì)劃表
評(píng)論
0/150
提交評(píng)論