程序排程演算法實現(自己寫的)

2021-04-13 01:54:22 字數 1366 閱讀 6665

//

//資料:程序,佇列結構

//處理流程:

//1 初始化--程序佇列結構(包括:就緒佇列,等待佇列,執行佇列)等必要的資料結構 init();

//2 進入無限迴圈,反覆排程佇列

/#define max 5

#include

#include

int total_time=20;

int time_slice=3;

typedef struct process process;

//typedef struct process process;

process * in_queue(process *head,process *p);  //宣告

process *init()   //程序初始化

while((inext=null;

}else

// printf("the process insert into the mothball queue :/n");

return  head;}/

/*void new_queue()  //後備佇列  先來先服務方式進入就緒

*/process *fcfs_process()

}q->waittime--;

if(q->waittime==0)   //如果等待時間為0則把該程序從後備佇列中移除

return q;   //選擇等待時間最久的)

}//就緒佇列,入口函式為就緒佇列的頭指標/

int count=0;

process *ready_queue(process *head)   //就緒佇列  優先順序進入執行 4道

return head;

}//insert_ready()  //

process *high_priority(process *p)  //選擇優先順序最高的程序

return q;

}process *pick_ready(process *a)   //從就緒佇列中選擇程序執行

void run(process *a)   //執行乙個時間片

a->priority--;

total_time--;

/*if(a->runtime>0)

return a;

else return null;*/

}void main()

run(p);

time_slice=3;}}

//注意的點:

//(1)pedef struct process process;  c++ 可以直接用process 定義,但是c 不可以

//(2)返回值一致,process *mm()

//指標用.  鍊錶用-> 

程序排程演算法(程序排程策略)

程序排程演算法 排程演算法是指 根據系統的資源分配策略所規定的資源分配演算法。一 先來先服務和短作業 程序 優先排程演算法 1.先來先服務排程演算法。先來先服務 fcfs 排程演算法是一種最簡單的排程演算法,該演算法既可用於作業排程,也可用於程序排程。fcfs演算法比較有利於長作業 程序 而不利於短...

程序的排程演算法

大家都知道作業系統管理了系統的有限資源,當有多個程序 或多個程序發出的請求 要使用這些資源時,因為資源的有限性,必須按照一定的原則選擇程序 請求 來占用資源,這就是排程。簡單來說排程就是一種資源分配。而排程演算法是根據系統的資源分配策略所規定的資源分配演算法。目前存在的多種排程演算法中,有的演算法適...

程序排程演算法模擬與實現

程序管理是作業系統中的重要功能,用來建立程序 撤消程序 實現程序狀態轉換,它提供了在可執行的程序之間復用cpu的方法。在程序管理中,程序排程是核心,因為在採用多道程式設計的系統中,往往有若干個程序同時處於就緒狀態,當就緒程序個數大於處理器數目時,就必須依照某種策略決定哪些程序優先占用處理器。編寫允許...