Por que não é “(ulimit -d 1000; firefox) &” funcionando?

1

Estou tentando limitar o uso de memória de firefox para impedir que ele pare todo o sistema com sites problemáticos.

Eu tentei, em bash :

(ulimit -d 1000; firefox) &

Isso deve limitar o uso de memória a 1000kB. Então eu abri o YouTube, e notei, em top , que firefox está usando 2,6% da memória, ou cerca de 200MB, e não falhando. Claramente, o limite está sendo ignorado. Por que isso e como posso aplicá-lo corretamente?

    
por MaxB 24.08.2014 / 02:42

1 resposta

3

Use ulimit -v.

Explicação:

As atuais implementações de libc redimensionam o segmento de dados apenas para mallocs pequenos; mallocs grandes usam mmap anônimos (); assim, a única maneira de realmente limitar o programa é limitar a memória virtual (-v switch).

Espero que isso ajude.

PS: Eu sei que esta pergunta é muito antiga, mas não conseguiu encontrar uma solução com o Google, então decidi responder de qualquer maneira.

    
por 28.04.2015 / 18:50