Page 18 - ePC11111_資訊科技_課本PDF
P. 18
1-1-3 程序運作週期
在系統平台運作中,最重要的就是工作排程與資源分配。工作排程是為了讓 CPU
的使用更有效率,避免程序閒置或等待太久,而資源分配則是因為系統的記憶體有限,
必須合理的分配,才能滿足每個程序的需求。
如果要執行程式,必須先將指令、程式與所需資料先載入至記憶體中,而程序即是指
已經載入至記憶體中,正在使用或等待 CPU 的程式。由於作業系統會同時執行多個程式,
此時就需要記錄每個程序的狀態與進度。程序狀態轉換的過程(圖 1-1.11),說明如下:
圖 1-1.11 程序狀態轉換
1. 建立(New):當程序產生時,此時的狀態處於「建立」狀態,必須等待作業系統的
允許,才能進入記憶體。
2. 就緒(Ready):等待作業系統將程序載入記憶體後,便進入「就緒」狀態,就緒狀
態都是可以立刻被執行的,只是在等待著 CPU 執行。
3. 排程(Scheduling):接著作業系統會從就緒狀態中的程序,選擇下一個可以使用
CPU 的程序,這個過程也就是所謂的「排程」。
4. 執行(Running):當程序正在使用 CPU 時,該程序屬於「執行」狀態,這時作業
系統會再決定從就緒 狀態中,選擇哪個程序可以被執行,等到 CPU 一被釋放,CPU
就會接著執行下一個程序。
5. 等待(Waiting):程序執行中,可能需要「等待」I/O 裝置,此時程序就會進入「等
待」狀態,另一種情形則是使用時間配額到期,被強制「中斷」,該程序就會重新進
入「就緒」狀態。
6. 結束(Terminated):當所有程序已執行完畢時,就會進入「結束」狀態,作業系
統將不再維護其資訊。
8 資訊科技 INFORMATION TECHNOLOGY