2016-05-16 15 views
-1

Guten Tag,Verwirrung mit FCFS nicht-preemtive

Ich bin ein wenig verwirrt und hoffen, dass es der richtige Ort ist, um die Frage zu klären:

So habe ich die folgenden Prozesse Ankunftszeit (AT) und ihre Servicezeit (ST):

P1 AT = 0, ST = 25

P2 AT = 1, ST = 5

P3 AT = 2, ST = 4

Wenn ich analysieren, um die Art und Weise die durchschnittliche Durchlaufzeit durch diese berechnet: Calculating Waiting Time and Turnaround Time in (non-preemptive) FCFS queue die Antwort kommt von 19,6 zu sein (6) (Wenn ich es richtig verstanden habe), aber wenn ich auf diesem Screenshot sehen ist es eine andere Antwort:

Welcher Weg ist richtig, um die durchschnittliche Bearbeitungszeit zu berechnen? und wie nachher die durchschnittliche Wartezeit dafür zu berechnen? Wie würden Sie berechnen, wenn die erste Ankunftszeit nicht 0 wäre? Bitte geben Sie Beispiele und klare Erklärungen an.

Vielen Dank

Antwort

1

Es scheint, die tatsächlich in dem Screenshot es die durchschnittliche Wartezeit gewesen ist, die berechnet wurde. Und ich tat es völlig falsch für das folgende Beispiel:

Durchschnittliche Wartezeit = 0 (wie der erste Prozess nicht wartet) + (25-1 der Prozess kam 1 Sekunde später an und begann nur bei 25) + (30-2 der letzte Prozess kam 2 Sekunden später und startete erst bei 30) = 52/3 = 17,3 (3)

Also grundsätzlich Wartezeit für einen einzelnen Prozess = startTimeOfTheProcess - arrivalTime.

Durchschnittliche Bearbeitungszeit ist im Grunde die Zeiten, die Zusammenstellung, wie viel die einzelnen Prozesse laufen so in diesem Fall ist es: 25 + 29 + 32 = 86/3 = 28,6 (6)

Hoffe, dass es jemand anders helfen auch.