I 6 Prozesse wie folgt:Berechnung Wartezeit und Bearbeitungszeit in (non-preemptive) FCFS Warteschlange
-- P0 --
arrival time = 0
burst time = 10
-- P1 --
arrival time = 110
burst time = 210
-- P2 --
arrival time = 130
burst time = 70
-- P3 --
arrival time = 130
burst time = 70
-- P4 --
arrival time = 130
burst time = 90
-- P5 --
arrival time = 130
burst time = 50
Wie kann ich die Wartezeit und Laufzeit für jeden Prozess berechnen? Das System sollte nicht präemptiv sein (der Prozess erhält die CPU, bis sie fertig ist). Außerdem: In diesem System gibt es 4 logische Prozessoren.
Angenommen, SystemTime ist die aktuelle Systembetriebszeit, und arrivalTime ist relativ dazu. dh eine Ankunftszeit von 0 bedeutet, dass der Prozess startet, wenn das System dies tut; Eine Ankunftszeit von 130 bedeutet, dass der Prozess 130 Einheiten nach dem Systemstart gestartet wird.
Ist das richtig: waitingTime = (systemTime - arrivalTime)
?
Meine Argumentation für das Denken ist, dass systemTime - arrivalTime
ist die Zeit der Prozess in dem FCFS gewartet hat Warteschlange um die CPU verwenden
Und für Turnaround-Zeit, ich war wie etwas zu denken (oder ist das falsch?): turnaroundTime = burstTime + waitingTime
, da die Wartezeit und die Burst-Zeit die Gesamtzeit sein sollten, um den Vorgang abzuschließen. Obwohl ich wieder nicht weiß, ob meine Intuition korrekt ist.
Alle und alle Lesungen würden sehr geschätzt werden!
neben der Frage: Wie kann ich durchschnittliche CPU-Auslastung berechnen? –
Sorry, bin mir nicht sicher. – Max