|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Vitaly E. Lavrov <lve@cit.aanet.ru> 14 Sep 2005 17:16:02 To : Vadim Goncharov Subject : Re: malloc() overcommit bug -------------------------------------------------------------------------------- > Мне тут сказали, что во фре всех версий и линуксе с ядрами версий менее > 2.6 есть дефект VM: при попытке использования выделенной > malloc()/calloc() памяти приложение может быть убито по segfault, хотя > malloc() вернул не NULL. > Hа винде, солярке, HPUX такой проблемы, как говорят, нет. > Hа ядрах 2.6 и выше линукса это можно отключить установкой > /proc/sys/vm/overcommit_memory в 2. a что делать VM после кода p=malloc(много); много+много > больше доступной памяти, а много < больше доступной памяти bzero(p); fork(); bzero(p); память честно выделена и проинициализирована, а после fork() она должна быть у каждого проуесса своя. -- Vitaliy E. Lavrov | nic-hdl: VEL1-RIPN --- FIDOGATE 4.3.6-snp8 * Origin: St. Petersburg State University of Aerospace Instrume (2:5030/580.0) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/314064c719386.html, оценка из 5, голосов 10
|