( apal | 2015. 02. 03., k – 13:33 )

Ezt hogy kezeled le? Es az miert x alkalmazas hibaja, ha az oom killer pont ot oli meg?
Van 1.5 giga ram a gepben ami elott most ulok:


apal@laptop:~$ free
             total       used       free     shared    buffers     cached
Mem:       1545144     942916     602228          0      72708     528408
-/+ buffers/cache:     341800    1203344
Swap:      1935356          0    1935356
apal@laptop:~$ arch
i686

Allokaljunk 2 giga't:


apal@laptop:~$ cat x.c
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
 void   *p;
 p=malloc(2000*(1024*1024));
 fprintf(stderr,"p=%p\n",p);
 free(p);
 return(0);
}
apal@laptop:~$ gcc -Wall -pedantic -ansi -O3 -D_GNU_SOURCE -fPIC -o x x.c

Parhuzamosan (masik terminal, rootkent) jatszunk a /proc/sys/vm/overcommit_memory beallitasaival:


laptop:~# echo 0 > /proc/sys/vm/overcommit_memory
apal@laptop:~$ cat /proc/sys/vm/overcommit_memory
0
apal@laptop:~$ ./x
p=0x3a654008
laptop:~# echo 2 > /proc/sys/vm/overcommit_memory
apal@laptop:~$ cat /proc/sys/vm/overcommit_memory
2
apal@laptop:~$ ./x
p=(nil)
apal@laptop:~$ 

Meg lehet csinalni, nem oly' veszes az. Me'g "szaralinux" alatt is megy ez. Csak akarni kellene.