ich habe Programme die unter Umst=E4nden gr=F6=DFer werden als der zur =
Verf=FCgung
stehende virtuelle Speicher (Memory + Swap Space). Diese Programme m=F6=
chte ich
gerne abbrechen, wenn sie eine bestimmte Gr=F6=DFe erreicht haben.
Die Suche bei Deja News hat ergeben, da=DF dies mit ulimit gehen m=FC=DF=
te. Nach
Begrenzung der maximalen Gr=F6=DFe des Datensegments eines Prozesses au=
f 128 kb
(ulimit -d 128) brechen einige Programme mit Fehlermeldung ab (gcc mit =
"cc1:
virtual memory exhausted" und nedit mit "Segmentation fault"). Leider w=
irkt
sich diese Speicherbegrenzung nicht immer aus. So l=E4uft z. B. das Pro=
gr=E4mmchen
void main()
{
char *c;
c =3D (char *)malloc( 16*1024*1024*sizeof(char) );
scanf("%c",c);
}
trotz der Gr=F6=DFe von =FCber 16 MB unbeeindruckt weiter. Aber genau s=
olche
Programme m=F6chte ich eigentlich abbrechen.
Wei=DF jemand Rat?
Gru=DF, Martin Str=F6er.
P.S.: Ich arbeite mit der DLD 5.3 und Kernel 2.0.33.=