CPU-Scheduling : Finden Sie die burst-Zeit
In der FCFS-scheduling-Algorithmus der Nachteil ist, dass wenn ein Prozess P1 mit einer höheren burst-Zeit stammt, bevor einige Prozesse P2,P3... mit viel kleineren platzen dann mal die Durchschnittliche Wartezeit und die Durchschnittliche Zeit bis zur Fertigstellung ist ziemlich hoch.
Einer Lösung für dieses problem ist es, zu planen die Shortest Job First(SJF Algo).
Aber wie wird die burst-Zeit berechnet im Voraus? Hat der Entwickler eine Formel angeben, indem Sie das (nach den verfügbaren Mitteln) der burst-Zeit zur Durchführung einer Aufgabe berechnet im Voraus?
InformationsquelleAutor Dubby | 2014-07-20
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schätzung burst-Zeit eines Prozesses ist ein sehr großes Thema .
im Allgemeinen Planer schätzt die Länge des nächsten burst-aufgrund der Länge des letzten cpu-bursts. im Grunde, was wir tun, ist zu raten, die nächsten CPU-burst-Zeit von der Annahme, dass es mit letzten CPU-bursts des Prozesses .
Eine schnelle google-Suche führte mich zu diese Artikel, die Ihnen eine grundlegende Idee .
hier ist ein detaillierter Artikel
Dies kann über eine exponentielle Durchschnittliche Einschätzung Formel-
Geschätzte CPU-Burst-Zeit für (n+1) - te CPU-burst=(alpha)(Tatsächliche CPU-Burst-Zeit für den N-TEN CPU-Burst)+(1-alpha)(Geschätzte CPU-Burst-Zeit für den N-TEN CPU-Burst).
wo,
alpha=eine Konstante, variiert zwischen 0<=alpha<=1.
Tatsächliche CPU-Burst-Zeit für den N-TEN CPU-burst - = Es ist das neueste CPU-Burst-Zeit der Prozess/job.
Geschätzte CPU-Burst-Zeit für den N-TEN CPU-burst= Es gibt uns eine Vorstellung von der Geschichte des Prozesses/job, dh wie zuvor haben wir geschätzte CPU-Burst-Zeit.
Zum ersten mal in der Ausführung (alpha=1), haben wir die der Prozess ausführen/job einmal.
dies gibt uns die (Tatsächliche CPU-Burst-Zeit für den N-TEN CPU-Burst),
Jetzt können wir schätzen die kommende CPU-burst-Zeit-Werte durch Variation von alpha.