1、 :編寫并調(diào)試一個(gè)模擬的進(jìn)程調(diào)度程序,采用“最高優(yōu)先數(shù)優(yōu)先”調(diào)度算法對(duì)進(jìn)程進(jìn)行調(diào)度。 “最高優(yōu)先數(shù)優(yōu)先調(diào)度算法的基本思想是把CPU分配給就緒隊(duì)列中優(yōu)先數(shù)最高的進(jìn)程。嘗試靜態(tài)優(yōu)先數(shù)與動(dòng)態(tài)優(yōu)先數(shù)兩種方法:
a) 靜態(tài)優(yōu)先數(shù)是指優(yōu)先數(shù)在整個(gè)進(jìn)程運(yùn)行期間不再改變。優(yōu)先數(shù)可以在數(shù)據(jù)輸入時(shí)指定,也可以根據(jù)到達(dá)順序、運(yùn)行時(shí)間確定。
b) 動(dòng)態(tài)優(yōu)先數(shù)是指進(jìn)程的優(yōu)先數(shù)在創(chuàng)建進(jìn)程時(shí)可以給定一個(gè)初始值,并且可以按一定原則修改優(yōu)先數(shù)。例如進(jìn)程獲得一次CPU后就將其優(yōu)先數(shù)減少1。或者進(jìn)程等待的時(shí)間超過某一時(shí)限時(shí)增加其優(yōu)先數(shù)的值。
2、 編寫并調(diào)試一個(gè)模擬的進(jìn)程調(diào)度程序,模擬實(shí)現(xiàn)多級(jí)反饋隊(duì)列調(diào)度算法。
3、 編寫并調(diào)試一個(gè)模擬的進(jìn)程調(diào)度程序,模擬實(shí)現(xiàn)最低松弛度優(yōu)先算法。
4、 程序與報(bào)告要求:
a) 對(duì)上述要求1、2、3,至少要完成一項(xiàng),鼓勵(lì)嘗試多種算法。
b) 輸出結(jié)果要盡量詳細(xì)清晰,能夠反映調(diào)度后隊(duì)列變化,PCB內(nèi)部變化。
c) 可以選擇在Windows或Linux環(huán)境下編寫、運(yùn)行程序
d) 鼓勵(lì)使用不同的開發(fā)工具在不同平臺(tái)環(huán)境上進(jìn)行開發(fā)比較。
e) 在實(shí)驗(yàn)報(bào)告中,一方面可以對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析,一方面可以對(duì)各種算法進(jìn)行比較,分析它們的優(yōu)劣,說明各種算法適用于哪些情況下的調(diào)度。