2.當(dāng)一個(gè)時(shí)間片用完時(shí),定時(shí)器中斷處理程序被激活,很難找到答案:時(shí)間片輪轉(zhuǎn)method主要是分時(shí)系統(tǒng)中使用的一種調(diào)度算法,在輪轉(zhuǎn)方法中,時(shí)間片長(zhǎng)度的選擇非常重要,會(huì)直接影響系統(tǒng)開(kāi)銷(xiāo)和響應(yīng)時(shí)間,時(shí)間片輪轉(zhuǎn)method的基本思想是將CPU的處理時(shí)間劃分為時(shí)間片,就緒隊(duì)列中的每個(gè)進(jìn)程依次運(yùn)行一個(gè)時(shí)間片。
看了n次片子,感覺(jué)都是模糊的。其實(shí)時(shí)間片輪次有兩種;1是指CPU分配給每個(gè)任務(wù)的固定執(zhí)行時(shí)間,該時(shí)間是這樣的,即無(wú)論任務(wù)是否完成都必須退出該任務(wù)。這是操作系統(tǒng)的想法,要保護(hù)現(xiàn)場(chǎng)。2是指CPU完成一次每個(gè)任務(wù)的執(zhí)行所分配的時(shí)間,不同的任務(wù)分配不同的執(zhí)行時(shí)間,不需要保護(hù)場(chǎng)景。
很難找到答案:時(shí)間片輪轉(zhuǎn) method主要是分時(shí)系統(tǒng)中使用的一種調(diào)度算法。時(shí)間片輪轉(zhuǎn) method的基本思想是將CPU的處理時(shí)間劃分為時(shí)間片,就緒隊(duì)列中的每個(gè)進(jìn)程依次運(yùn)行一個(gè)時(shí)間片。當(dāng)時(shí)間片結(jié)束時(shí),正在運(yùn)行的進(jìn)程被迫放棄CPU,進(jìn)程進(jìn)入就緒隊(duì)列等待下一個(gè)調(diào)度。同時(shí),進(jìn)程調(diào)度程序在就緒隊(duì)列中選擇一個(gè)進(jìn)程,并為它分配一個(gè)時(shí)間片來(lái)投入運(yùn)行。在輪轉(zhuǎn)方法中,時(shí)間片長(zhǎng)度的選擇非常重要,會(huì)直接影響系統(tǒng)開(kāi)銷(xiāo)和響應(yīng)時(shí)間。如果時(shí)間片長(zhǎng)度很小,調(diào)度器會(huì)頻繁剝奪處理器,增加系統(tǒng)開(kāi)銷(xiāo)。相反,如果時(shí)間片長(zhǎng)度太長(zhǎng),比如一個(gè)時(shí)間片就可以保證就緒隊(duì)列中的所有進(jìn)程都完成,那么輪轉(zhuǎn)方法就會(huì)退化為FIFO算法。影響時(shí)間片大小設(shè)置的主要因素有:系統(tǒng)響應(yīng)時(shí)間、就緒進(jìn)程數(shù)(終端數(shù))和計(jì)算機(jī)處理能力。
在RR調(diào)度算法中,何時(shí)切換進(jìn)程可以分為兩種情況:1。如果時(shí)間片尚未用完,并且正在運(yùn)行的進(jìn)程已經(jīng)完成,請(qǐng)立即激活調(diào)度程序,將其從就緒隊(duì)列中刪除,然后調(diào)度就緒隊(duì)列中的第一個(gè)進(jìn)程運(yùn)行并啟動(dòng)時(shí)間片。2.當(dāng)一個(gè)時(shí)間片用完時(shí),定時(shí)器中斷處理程序被激活。如果程序沒(méi)有完成運(yùn)行,調(diào)度程序?qū)阉偷骄途w隊(duì)列的末尾。
{3。