◆ 輪轉(zhuǎn)法
進程調(diào)度
1.進程調(diào)度的三個級別一般來說,處理機調(diào)度可分為三個級別,分別是高級調(diào)度、中級調(diào)度和低級調(diào)度。高級調(diào)度又稱作業(yè)調(diào)度,作業(yè)就是用戶程序及其所需的數(shù)據(jù)和命令的集合,作業(yè)管理就是對作業(yè)的執(zhí)行情況進行系統(tǒng)管理的程序的集合。作業(yè)調(diào)度程序的主要功能是審查系統(tǒng)是否能滿足用戶作業(yè)的資源要求以及按照一定的算法來選取作業(yè)。引入中級調(diào)度的主要目的是為了提高內(nèi)存的利用率和系統(tǒng)吞吐量,使得暫時不運行的進程從內(nèi)存對換到外存上。低級調(diào)度又稱進程調(diào)度,其主要功能是根據(jù)一定的算法將CPU分派給就緒隊列中的一個進程。進程調(diào)度是操作系統(tǒng)中最基本的一種調(diào)度,其調(diào)度策略的優(yōu)劣直接影響整個系統(tǒng)的性能。
2.進程調(diào)度的職責(zé)按選定的進程調(diào)度算法從就緒隊列中選擇一個進程,讓它占用處理器。
3.選擇進程調(diào)度算法的幾個準則:
·提高處理器利用率
·增大吞吐量
·減少等待時間
·縮短響應(yīng)時間
4.進程調(diào)度的常用算法
1)先來先服務(wù)調(diào)度算法:按進程進入就緒隊列的先后次序選擇可以占用處理器的進程。
2)優(yōu)先級調(diào)度算法:對每個進程確定一個優(yōu)先數(shù),該算法總是讓優(yōu)先數(shù)最高的進程先使用處理器。對具有相同優(yōu)先數(shù)的進程,再采用先來先服務(wù)的次序分配處理器。系統(tǒng)常以任務(wù)的緊迫性和系統(tǒng)效率等因素確定進程的優(yōu)先數(shù)。進程的優(yōu)先數(shù)可以固定的,也可隨進程執(zhí)行過程動態(tài)變化。 一個高優(yōu)先數(shù)的進程占用處理器后,系統(tǒng)處理該進程時有兩種方法,一是“非搶占式”,另一種是“可搶占式”。前者是此進程占用處理器后一直運行到結(jié)束,除非本身主動讓出處理器,后者則是嚴格保證任何時刻總是讓優(yōu)先數(shù)最高的進程在處理器上運行。
3)時間片輪轉(zhuǎn)調(diào)度法:把規(guī)定進程一次使用處理器的最長時間稱為“時間片”。時間片輪轉(zhuǎn)調(diào)度算法讓就緒進程按就緒的先后次序排成隊列,每次總選擇該隊列中第一個進程占用處理器,但規(guī)定只能使用一個時間片,如該進程尚未完成,則排入隊尾,等待下一個供它使用的時間片。各個進程就這樣輪轉(zhuǎn)運行。時間片輪轉(zhuǎn)算法經(jīng)常用于分時操作系統(tǒng)中。
4)多級反饋調(diào)度:由系統(tǒng)設(shè)置多個就緒隊列,每個就緒隊列中的進程按時間片輪轉(zhuǎn)法占用處理器。
5.進程的切換進程調(diào)度將從就緒隊列中另選一個進程占用處理器,使一個進程讓出處理器,由另一個進程占用處理器的過程稱“進程切換”。若有一個進程從運行態(tài)變成等待態(tài),或完成工作后就撤消,則必定會發(fā)生進程切換。若一個進程從運行態(tài)或等待態(tài)變成就緒態(tài),則不一定發(fā)生進程切換。
相關(guān)推薦:
2012年軟考系統(tǒng)分析師考試60天完美復(fù)習(xí)計劃
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |