【正文】
me:到達(dá)時(shí)間 int f:優(yōu)先權(quán)(靜態(tài))QueueOfAll:儲(chǔ)存所有進(jìn)程PCB PCB_Node[]:PCB結(jié)點(diǎn)的數(shù)組,用以保存所有進(jìn)程信息 int length:總的進(jìn)程數(shù)QueueOfCurrent:就緒進(jìn)程隊(duì)列PCB PCB_Node[]:PCB結(jié)點(diǎn)的數(shù)組,用以保存所有進(jìn)入就緒隊(duì)列的進(jìn)程信息int front:指向當(dāng)前隊(duì)頭的前一位int rear:指向當(dāng)前隊(duì)尾 int length:總的進(jìn)程數(shù) int current:當(dāng)前在執(zhí)行的進(jìn)程指針 int cut:該隊(duì)列的時(shí)間片長(zhǎng)度FIFO,短進(jìn)程優(yōu)先,優(yōu)先級(jí)調(diào)度算法示意流程圖:結(jié)束開始比較各進(jìn)程的到達(dá)時(shí)間和系統(tǒng)當(dāng)前時(shí)間,將未進(jìn)入就緒隊(duì)列的進(jìn)程插入到就緒隊(duì)列中。把就緒隊(duì)列的隊(duì)首進(jìn)程進(jìn)行調(diào)度并運(yùn)行該進(jìn)程進(jìn)程運(yùn)行完畢,將其出隊(duì),并更新系統(tǒng)時(shí)間。隊(duì)列是否為空系統(tǒng)時(shí)間加1全部進(jìn)程是否已調(diào)度完畢。NYYN按FCFS、SPF、FPF算法分別對(duì)就緒隊(duì)列中的進(jìn)程進(jìn)行排序時(shí)間片輪轉(zhuǎn)調(diào)度算法示意流程圖:Serveredtime[current]cutServeredtime[current]cut開始初始化個(gè)進(jìn)程的PCB,輸入進(jìn)程信息初始化就緒隊(duì)列CurrentPCB的信息,front=rear=1,current=0,length=0;系統(tǒng)運(yùn)行時(shí)間systemtime=0;數(shù)組serveredtime[]記錄程序所需時(shí)間;SreachPCB();將0時(shí)刻到達(dá)的程序插入就緒隊(duì)列;