2011年3月31日 星期四

Linux Process 排程-1

       所謂的process 排程,就是指CPU 的資源作有效的安排  ("which next process" 、”when" and "how long").

       多工執行的系統有分為preemptive multitasking and cooperative multitasking. Linux 使用的是前者,preemptive multitasking. 而preemptive 簡單說就是執行中的task(Process ),可以非自願式在執行未結束的過程中,被scheduler 將其使用的CPU 的資源交給另一個優先權較高的task. 反之cooperative multitasking 則是由佔有CPU資源的程式執行到特定段落時,將CPU 資源交出時,才作重新排程,這也就是協調多工。(除了Win3.1及MAC OS 9使用cooperative multitasking 外,多數都是採用preemptive multitasking).

在preemptive multitasking  中,有個名詞叫作timeslice,指的是每個process 能執行的時間片段。

沒有留言:

張貼留言