Главная страница


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)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: malloc() overcommit bug   Vitaly E. Lavrov    14 Sep 2005 17:16:02 
Архивное /ru.unix.bsd/314064c719386.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional