moin,
Da ich es selber gerade gebraucht habe, ein kleines Tutorial zum Rechenlastmanagement unter Linux:
Das Problem:
Ein Prozess unter Linux läuft einfach nicht schnell genug oder das [lexicon]Rendern[/lexicon] nimmt einem sämtliche Ressouren weg und man kann nicht mehr im Internet surfen.
Eine Lösung:
Prozess-Prioritäten vergeben! Ein Linux Prozess kann die Prioritäten von -20 bis 19 erhalten und je kleiner die Zahl desto mehr [lexicon]CPU[/lexicon] Zeit bekommt der fragliche Prozess zugeteilt. Im Normalfall haben alle Prozesse eine Priorität von 0, was somit der neutrale Wert ist.
Soll nun ein Prozess schneller oder langsammer gemacht werden müssen wir zunächst seine Prozess-Id herausfinden. Dazu kan der Befehl
genutzt werden. Also zum Beispiel
um die PIDs der recordmydesktop Instanzen herauszufinden.
Alternativ dazu können wir den Befehl
in der Konsole nutzen. Das Ergebniss sieht ungefähr so aus:
Hier wurde recordmydesktop verlangsammt und Firefox beschleunigt.
Nachdem wir den für uns interessanten Prozess gefunden haben, merken wir uns seine PID und können nun mit folgendem Befehl die Priorität ändern:
Um Prozesse zu verlangsammen (Priorität > 0), werden keine Root-Recht benötigt, zum Beschleunigen (Priorität<0) werden Rootrechte benötigt.
Zusätzlich können die Festplattenzugriffe verlangsammt werden, indem der ähnliche Befehl
genutzt werden.
Beispiel:
Wenn wir dem Sound (pulseaudio) mehr Saft geben wollen und das [lexicon]Rendern[/lexicon] (recordmydesktop) in den Hintergrund packen wollen, wäre das in unserem Beispiel:
Und um in unserem Beispiel die Festplattenzugriffe von recordmydesktop niedriger zu priotisieren, müsste der Befehl
genutzt werden.
Anmerkung:
In den meisten Distributionen wird es einen Prozessmanager geben, über den man das auch machen kann. Diese Lösung funtioniert aber auch in den Fällen in denen das Bertriebsystem so überlastet ist, das außer der Konsole nichts mehr funktioniert