Linux Kernel-Planung

8

Ich möchte wissen, wie Old Linux Scheduling-Algorithmus SJF (kürzeste Aufgabe zuerst) die Prozesslaufzeit berechnet?

    
Arpit 09.03.2010, 05:24
quelle

2 Antworten

5

Dieses Problem ist einer der Hauptgründe, warum es selten in normalen Umgebungen verwendet wird, da der SJF-Algorithmus eine genaue Schätzung der Laufzeit aller Prozesse erfordert, die nur in speziellen Umgebungen gegeben ist.

In allgemeinen Situationen können Sie nur eine geschätzte und ungenaue Länge der Prozesslaufzeit erhalten, indem Sie beispielsweise die Länge früherer CPU-Bursts desselben Prozesses aufzeichnen und mithilfe mathematischer Näherungsverfahren berechnen, wie lange das nächste Mal ausgeführt wird.

    
ZelluX 09.03.2010, 06:16
quelle
1

Wenn Sie eine Bandbreite zum Brennen haben, können Sie möglicherweise den tatsächlichen Code finden hier . Beginne bei 2.0, wo du es als experimentell empfindest.

SJF war (IIRC) extrem kurzlebig, für die genaue Gründe, die ZelluX festgestellt hat .

Ich glaube, Ihre einzige Hoffnung, die Methode hinter ihrem Wahnsinn zu verstehen, lebt an dieser Stelle im Code. Sie können in der Lage sein, es zu erstellen und es in einem Simulator starten zu lassen.

Bearbeiten:

Ich bin mir jetzt nicht ganz sicher, ob es jemals in die Mainline geschafft hat. Wenn du es nicht finden kannst, gib mir keine Vorwürfe:)

    
Tim Post 09.03.2010 09:50
quelle