O que acontece quando o sistema operacional Linux fora da memória RAM e sem troca

19

O que acontece quando o sistema operacional Linux está sem memória RAM e não há troca disponível?

    
por qwe123wsx 16.01.2013 / 02:25

1 resposta

34

Quando o sistema operacional está sem RAM e não tem swap, ele descarta páginas limpas. Não pode descartar páginas sujas porque teria que escrevê-las em algum lugar primeiro. Isso causa problemas e desempenho ruim se houver RAM insuficiente para manter o conjunto de trabalho. Essa é uma das principais razões pelas quais você realmente quer trocar - para que o sistema operacional possa tomar uma decisão melhor sobre quais páginas serão despejadas.

Sem troca, o sistema ficará sem memória virtual (estritamente falando, RAM + troca) assim que não tiver mais páginas limpas a serem removidas. Então terá que matar processos.

A falta de memória RAM é completamente normal. É apenas um giro negativo em usando RAM. Não ficar sem RAM poderia igualmente ser descrito como "desperdiçar RAM". Uma vez que toda a RAM está em uso, o sistema operacional toma decisões inteligentes sobre o que manter na RAM e o que não fazer. Sem qualquer troca, tem menos opções.

Com ou sem swap, quando a remoção de páginas não é suficiente, o sistema operacional começará recusando-se a permitir operações que requeiram que a memória (como mmap e fork ) seja bem-sucedida. No entanto, às vezes isso não é suficiente e os processos precisam ser eliminados.

    
por 16.01.2013 / 03:31