Ostatnio zauważyłem wzrost wielkości zrzutów rdzenia generowanych przez moją aplikację. Początkowo miały one rozmiar około 5 MB i zawierały około 5 ramek stosu, a teraz mam zrzuty rdzenia> 2 GB, a informacje w nich zawarte nie różnią się od mniejszych zrzutów.Zrzuty jądra Linuksa są zbyt duże!
Czy istnieje sposób kontrolowania rozmiaru generowanych zrzutów pamięci? Czy nie powinny one być co najmniej mniejsze niż same pliki binarne aplikacji?
Binaries są opracowywane w ten sposób:
- Zestawione w trybie uwolnienia z symbolami debugowania (czyli -g opcja kompilatora GCC w ).
- Symbole debugowania są kopiowane na osobny plik
i usuwane z pliku binarnego
. - Link do symboli debugowania GNU zostaje dodany do pliku binarnego .
Na początku stosowania, jest to wezwanie do setrlimit
który wyznacza granicę rdzenia do nieskończoności - Czy to problem?
Przerwij podawanie burritos aplikacji. – Pierreten