[LUGA] Mit freundlicher Unterstützung von:
OCG

Mail Thread Index


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [luga] crashes, forkbombs, etc



On 2000-06-04 23:51:55 +0200, Thomas Zehetbauer wrote:
> Ich fahre zwar auf einem single-user-system, habe aber im zusammenhang
> mit der newsreader-software PAN ein ähnliches problem:
> - Fahre ich ohne ulimits sterben einige daemons, dann der X-Server und mit ihm
>   der newsreader
> - Fahre ich mit ulimit -v <physical memory> -d <physical memory> beginnt der
>   kernel ganz extrem zu swappen bis schliesslich das system komplett
>   stehenbleibt (auch software watchdog reagiert nicht mehr)

Bei mir ist es genau umgekehrt. ulimit -v funktioniert. Wenn ich es
nicht setze, bringt ein kleines C-Programm, das malloct, solange es kann
und danach stirbt, das System zum stehen (Pan wollte ich mir vor einiger
Zeit ansehen, hatte aber zu alte Libraries).

> In der linux-kernel mailingliste wurde vor kurzem dasselbe problem diskutiert:
> - in einer Out Of Memory situation killt der kernel mehr oder weniger nach dem
>   zufallsprinzip solange prozesse, bis wieder genügend speicher verfügbar ist.

Zufallsprinzip heißt hier wohl: Der Prozess, der gerade eine Seite
anfordert, wenn keine mehr da ist, wird gekillt.

Das hat im Kernel 2.0 relativ gut funktioniert. Der schuldige Prozess
war meistens der, der am stärksten gewachsen ist und war daher bei
den ersten paar, die es erwischt hat. Danach war das System wieder
weitgehend benützbar (Pech war halt, wenn der sshd auch unschuldig zum
Handkuß kam und man sich nicht mehr einloggen konnte).

Der Kernel 2.2 verhält sich anders. Ich weiß nicht, was er genau macht,
aber es werden keine Prozesse gekillt, sondern das System wird immer
langsamer und langsamer und friert irgendwann ein. Für mich sieht das so
aus, als ob der Kernel Prozesse, denen er Memory versprochen hat, einfach
schlafen legt und hofft, daß er das Memory irgendwann später auftreiben
wird. Nur passiert das nicht, oder nicht in einer Zeit, die abzuwarten
bereit war.

> Nur ulimit -v (limit virtual memory size), das einzige, das in meinen
> versuchen wirklich etwas gebracht hat, ist bash-spezifisch

Die zsh kennt das auch. Andere Shells habe ich nicht getestet. Notfalls
müßte man einen kleinen Wrapper schreiben.

	hp

-- 
   _  | Peter J. Holzer      | ... Desinformation und Gerüchte,
|_|_) | Sysadmin WSR / LUGA  |  im Internet auch "flaming" genannt ...
| |   | hjp@wsr.ac.at        |
__/   | http://www.hjp.at/   |	   -- Telekom-Presse 2000-04-26    

Attachment: pgpG5tyNdNZkz.pgp
Description: PGP signature



powered by LINUX the choice of a gnu generation
linux user group austria;
Suche
Suche
Letzte Änderung:
webmaster@luga.at
September 2010