Re: core dump
Andreas Pakulat <ap125@informatik.uni-rostock.de> writes:
> On 14.Aug 2003 - 15:29:09, Rainer Ellinger wrote:
>> entmoot@gmx.de schrieb:
>> > wie kriege ich es hin, daß Programme, die unvorhergesehen beendet
>> > werden (segmentation fault), einen core dump erstellen?
>>
>> Linux kennt keine Coredumps. Die Funktion gibt es nur als separaten
>> Patch der mit "crash" genutzt wird.
Also meins schon. Woher hast Du die Information?
> Würde mich dann aber doch wundern, habe ich nämlich schon selbst
>ausprobiert, ich weiss grad nicht mit welchem Prog.
>
>> > Ich habe es mit 'ulimit -c 8192' probiert, aber leider bekomme ich
>> > keinen core.
mit ulimit -c setzt Du die maximale Größe für Coredateien. 8192 Bytes
ist ziemlich klein. Das folgende kleine Progrämmchen z.B. erzeugt bei
mir eine Coredatei von rund 60kB:
/* coretest.c /*
int main(void) {
int *p = 0;
*p = 123;
return 0;
}
ich@schnecke:~$ gcc -o coretest coretest.c
ich@schnecke:~$ ./coretest
Speicherzugriffsfehler (core dumped)
ich@schnecke:~$ ls -l core
-rw------- 1 ich ich 61440 14. Aug 19:15 core
> Hmm, also ich hab ja nun nicht auf Anhieb mehr als die man 3 ulimit
> gefunden (naja man 2 ulimit, aber die scheint veraltet, zumindestens
> liefert mein ulimit 0 nicht -1)
>
> Ah ich sehe grad, das ist ein feature der bash, sprich die bildet das ab
> auf die jeweiligen C-Funktionen und da steht was von core-files. Selbst
> wenn es nur von der libc6 angeboten wird, dann gibts das im System, ich
> hab leider grad kein Programm zur Hand mit dem ich das Testen könnte.
Richtig, ulimit ist ein Bash - Builtin.
Grüße,
Daniel.
Reply to: