2012-03-18 902 views

回答

17

甘特圖是錯誤的... 第一個進程P3已經到來,因此將首先執行。由於P3的爆發時間是P3完成後的3秒,因此處理P2,P4和P5已經到達。 在P2,P4和P5中,P2的最短突發時間爲1秒,所以P2將在下一次執行。然後P4和P5。最後P1會被執行。

甘特圖爲此QUES將是:

| P3 | P2 | P4 | P5 | P1 | 

1 4 5 7 11 14 

平均等待時間=(0 + 2 + 2 + 3 + 3)/ 5 = 2

平均週轉時間=(3 + 3 + 4 + 7 + 6)/5=4.6

+1

如何計算相同的響應時間? – 2016-12-06 09:49:05

2

Hifzan和Raja給出的甘特圖是FCFS算法。

使用SJF算法,可以中斷進程。也就是說,每個過程不一定是在給定的突發時間內直接執行。

P3 | P2 | P4 | P3 | P5 | P1 | P5

1 | 2 | 3 | 5 | 7 | 8 | 11 | 14

P3到達1毫秒,然後由P2中斷和P4,因爲它們都具有較小的突發時間,然後P3重新開始。 P5開始執行下一個,然後由於P1的突發時間小於P5而被P1中斷。您必須注意到達時間並小心。這些問題比第一眼看起來更棘手。

編輯:這隻適用於搶先SJF算法。普通的SJF算法是非搶先式的,這意味着它不會中斷一個過程。

+1

如果兩個過程的突發時間相同,那麼將遵循FCFS算法。 甘特圖將是(用於先發制人) p3 - p2 - p3 - p4 - p5 - p1 || 1 - 2 - 3 - 5 - 7 - 11 – 2015-12-12 06:27:12

+0

@ErfanAhmedEmon p3-p2-p3-p4-p5-p1它會是1-2-3-5-7-8-11?對? – Dayz 2017-11-01 14:19:23

+0

@Dayz我很久以前就研究過這些。我的道歉,現在無法根據我微弱的記憶來回答你。 – 2017-11-01 14:51:44

7

SJF兩種類型 - ⅰ)非搶佔SJFⅱ)搶佔SJF

根據到達時間我已重新排列的處理。 這裏是非搶佔SJF

A.T =到達時間

B.T =脈衝串時間

C.T =完成時間

TT =週轉時間= CT - AT

WT =等待時間= TT - BT

enter image description here

這裏是搶佔水井坊 注:每個進程會搶佔在新的過程到達時,然後它將比較突發時間並分配具有最短突發時間的過程。但是,如果兩個進程具有相同的突發時間,那麼將首先分配的進程就像FCFS一樣。

enter image description here