LPIC101/103.6 Prozess-Ausführungsprioritäten ändern: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 74: Zeile 74:
*Dabei zeigt top auch die Load der CPU, Speicherverbrauch, sowie etliche andere Informationen an,Um  die  tatsächliche  Priorität  eines  Prozesses  und  den  Wert  für nice zu  ermitteln,benötigen Sie das Programm top.
*Dabei zeigt top auch die Load der CPU, Speicherverbrauch, sowie etliche andere Informationen an,Um  die  tatsächliche  Priorität  eines  Prozesses  und  den  Wert  für nice zu  ermitteln,benötigen Sie das Programm top.


 
[[Category:Linux]]
 
[[Category:Linux:LPIC:101]]
[[ category:LPIC101 ]]

Version vom 19. November 2019, 21:18 Uhr

Allgemeines

  • Der Begriff Prozeß (engl. process) bezeichnet ein Programm, das gerade geladen ist und (meist) läuft.
  • Manchmal möchten Sie die Priorität eines Prozesses ändern. Ein Prozess, der für Sie sehr wichtig ist, kann z.B. ausgeführt werden und sie möchten Ihn schnell beenden.
  • Ein normaler Benutzer kann allerdings einem Prozess lediglich eine niedrigere Priorität zuordnen.
  • Damit soll verhindert werden, dass Benutzer, die ihre eigene Arbeit als besonders wichtig einstufen, das ganze System lahmlegen.

Liste wichtiger Dateien

nice

  • nice ist ein Befehl von Unix-ähnlichen Betriebssystemen.
  • Mit nice ist es möglich, ein Kommando mit einer bestimmten Priorität zu starten, sodass der dann ausgeführte Prozess im Gegensatz zu anderen Prozessen mehr oder weniger CPU-Zeit erhält.

Zum Beispiel haben wir den folgenden Prozess ausgeführt:

sleep 1000000000&

Und bestätigte die Priorität mit dem folgenden Befehl:

ps ax -o pid,ni,cmd | grep sleep
1522   0 sleep 1000000000
1547  12 sleep 1000000000
1574   0 sleep 1000000000
1576   0 grep sleep
michel@debian:~$ nice -n 10 sleep 1000000000&
  • In beiden Fällen wird der Editor nano mit einem positiven Nice-Wert von 10 gestartet.
  • Der Strich in der zweiten Zeile ist also kein Minus, sondern dient der Einleitung der Option.
  • Wenn Sie einen negativen Nice-Wert verwenden wollen, um die Ausführungspriorität eines Programms zu erhöhen, können Sie folgende Kommandos verwenden:
michel@debian:~$ nice -n -10 sleep 1000000000& oder:
michel@debian:~$ nice --10 sleep 1000000000&

Mit dem Kommando:

michel@debian:~$ ps ax -o pid,ni,cmd | grep sleep

sieht man ,dass das Prioritäts-Scheduling auf die zweite Spalte. In die erste Spalte steht die auführungsnummer(zum beispiel 1522) des Prozesses.

1522   0 sleep 1000000000
1547  12 sleep 1000000000
1574   0 sleep 1000000000
1577  10 sleep 1000000000
1579   0 grep sleep


Die zweite Zeile enthält jetzt zwei Striche. Der erste Strich leitet die Option ein, und der zweite ist diesmal ein Minuszeichen.

renice

  • renice ändert das Prioritäts-Scheduling eines oder mehrerer laufender Prozesse.
  • Das erste Argument ist der zu verwendende Prioritäts-Wert.
  • Die anderen Argumente werden als Prozesskennungen interpretiert (Vorgabe), Prozessgruppenkennungen, Benutzerkennungen oder Benutzernamen.
  • Das Anwenden von renice auf eine Prozessgruppe beeinflusst das Scheduling aller Prozesse in dieser Prozessgruppe gleichermaßen.
  • Das Anwenden von renice auf einen Benutzer ändert das Prioritäts-Scheduling aller Prozesse, die diesem Benutzer gehören.
michel@debian:~$ renice -n -7 1547 
1547 (process ID) old priority -7, new priority 12
  • Hier ist also der Strich ein Minus und keine Einleitung für eine Option.
  • Mit der Option -u (hier wiederum ist der Strich unabdingbar) können Sie alle Prozesseeines einzelnen Benutzers gleichzeitig beeinflussen.
  • Die Syntax ist ansonsten mit identisch, die man auch bei der Manipulation eines Prozesses benutzen würde.

top und ps

top und ps können die prioritäten überprüfen:

  • ps (für process status) ist ein Unix-Kommando, das eine Liste aller Prozesse, welche momentan laufen oder sich im Zombie-Status befinden, auf dem Bildschirm ausgibt.
michel@debian:~$ ps ax -o pid,ni,cmd | grep sleep
  • top ist ein Befehl in den meisten Unix-ähnlichen Betriebssystemen, der eine ständig aktualisierte Liste der aktuell laufenden Prozesse des Systems ausgibt.
  • Dabei zeigt top auch die Load der CPU, Speicherverbrauch, sowie etliche andere Informationen an,Um die tatsächliche Priorität eines Prozesses und den Wert für nice zu ermitteln,benötigen Sie das Programm top.