Dyskusja:C/malloc
Dodaj tematWygląd
Najnowszy komentarz napisał(a) 15 lat temu Kj
"Warto zauważyć, że w przypadku standardowych konfiguracji systemu GNU/Linux funkcje przydzielające pamięć nigdy nie zawodzą i nie zwracają wartości NULL (dla wartości parametru size większego od zera)."
mozna wiedziec skad autor wzial te rewelacje?
- Dobre pytanie, informacje dodał anonimowy IP-ek. Ja natomiast doszukałem się w man-ie źródła pomyłki. Możemy przeczytać:
"BUGS By default, Linux follows an optimistic memory allocation strategy. This means that when malloc() returns non-NULL there is no guarantee that the memory really is available. This is a really bad bug."
- Wynika z tego, że alokator pamięci Linuksa nie gwarantuje rzeczywistej dostępności przydzielonego obszaru pamięci pomimo zwrócenia przez malloc wartości różnej od NULL. Mało tego, zamiast zwrócić NULL w obliczu braku pamięci system po prostu zacznie zabijać procesy. Poprawiam i dziękuję za zwrócenie uwagi. --Kj 23:13, 24 lip 2009 (CEST)