引用:
作者marsea
CPU Schedulingg是對什麼Scheduling?
progam 與 process 有何差別?
process在執行時program又扮演什麼角色?
這兩個架構又有何不同?
小弟講的題目是 CPU Scheduling
...
|
以下是小弟能提供的一點點概念
希望對你有些幫助
(若有錯誤還請版上朋友指正或補充)
CPU Scheduling...
比較正規的講法應該叫process Scheduling (程式排程或叫程式排班)
簡單說...在一個CPU只能負責run一支process的工作環境架構(性能條件)下...
當有多支process已經等待執行時~
OS必須依照某個法則...挑選某一支process來工作
(因為一次只能服務單支程式所以選其中一者)
而這個
法則就叫做排程(process scheduling)
你可以想像成有很多人參加演講
(很多process)
可是一個講台
(CPU)上只能讓一個人表演(CPU只服務單一process)
所以大會人員
(OS)就安排一個
順序讓這些參賽者依序上演講台
這個就是scheduling
而process Scheduling又分成很多種類(可以制定很多種順序)
1.FCFS
2.SJF
3.Priority
4.RunRobin
等等...
program可視為還沒執行的程式(比方說你寫了一個c++的小遊戲燒在光碟中)
process可視為已經執行(正在執行或等待執行的程式:你把這個小遊戲啟動來玩)
如果你有一些OS方面的書籍...
可以查詢一下
程式狀態變遷圖有助於建立這方面的概念
(因為是你的作業,我點到為止,不便詳細說明還請見諒

)
=========================================================
另外可以請教一件事情嗎??
樓主目前是研究生還是大學生呢??
因為小弟也是資電方面的學生...
想知道這是研究所還是大學部負責的作業~
沒別的意思...方便的話能透漏嗎
