在上面的例子中,我們假設所有的進程只是CPU系結進程。但是也忽略了上下文切換時間。
然而,如果考慮排程器在上下文切換中花費的時間,則系統的平均等待時間將增加,這也影響系統的效率。
上下文切換始終是開銷。以下範例描述如果在系統中考慮上下文切換時間,效率將受到影響。
範例
在下面的例子中,假設有五個進程:P1
,P2
,P3
,P4
,P5
和P6
。 他們的到達時間和爆發時間如下。
進程ID | 到達時間 | 突發時間 |
---|---|---|
1 | 0 | 3 |
2 | 1 | 2 |
3 | 2 | 1 |
4 | 3 | 4 |
5 | 4 | 5 |
6 | 5 | 2 |
如果系統的上下文切換時間為1
個單位,那麼系統的甘特圖將按如下準備。
給定δ= 1
個單位;
在執行每個進程之後,系統將花費額外的1
個單位時間(開銷)來安排下一個過程。
Inefficiency= (6/23) X 100 %
Efficiency? = (1-6/23) X 100 %