Am Donnerstag, 22. Februar 2001 09:23 schrieb Andre Schulze:
Nicht desto trotz: ein user level Programm darf keinen kernel aus dem Tritt bringen. Eine etwas unangenehme Nebenerscheinung ist auch, das bei extremen Speichermangel _beliebige_ Prozesse gekillt werden.
Richtig. Der Kernel hat dafür zu sorgen, daß "seine" Kinderchen (genauer gesagt die von init) ihm nichts anhaben können. Das macht Linux als Gesamtsystem ja auch stabiler als Windows, weil Leute, die mal eben was programmieren, nicht viel anrichten können (und deshalb mag ich diesen Kernel :))
Das mit den beliebigen Prozessen sehe ich mittlerweile auch von dieser Seite her. Rein theoretisch kann man aber hier Abhilfe schaffen, wenn ein root-Daemon (von dem optimistischerweise angenommen wird daß er stabil läuft) alle Prozesse beobachtet und über ihr Verhalten Buch führt. Tanzt einer aus der Reihe wird er gekillt.
Leider ist auch das nicht so einfach: - Prozessorlast: Dann kann man kein "make" mehr eingeben. - Speicherverbrauch: Dann kann man den gimp keine großen Bilder mehr öffnen lassen.
Deswegen muß so ein Tool schon im Userspace als Ergänzung laufen, damit man es konfigurieren kann. Meinetwegen erst "allow" und dann "deny", d.h. alles was nicht soll darf auch nicht. Beispiel: order allow,deny allow gimp mem=512M allow gcc1 proc=90% deny the ugly rest
Und es würde mich sehr wundern wenn es sowas nicht schon gibt, als Frontend zu ulimit und Konsorten...
Josef Spillner (tja, keine Ahnung vom Kernelinnenleben, deshalb dieser Vorschlag)