O Ubuntu troca mesmo quando não há swap configurado?

1

No meu /etc/fstab , não há partição swap .

top exibe KiB Swap: 0 total, 0 free, 0 used

e swapon não mostram nada.

Portanto, parece que a troca está desativada. Mas quando o sistema fica sem memória física, ele começa a se comportar como se estivesse trocando: o sistema fica quase sem resposta, o indicador de acesso ao disco fica ligado o tempo todo; se eu conseguir fechar um processo pesado (ou se ele for morto, provavelmente por um killer sem memória), o sistema se tornará responsivo novamente.

O Ubuntu ainda troca em tal caso?

O sistema é o Ubuntu 16.04.

    
por Roman Puchkovskiy 13.04.2018 / 20:44

1 resposta

8

A resposta curta:

Se não houver swap, o Ubuntu não irá trocar.

A resposta longa:

O que acontece é que o gerenciador de memória do kernel Linux (não o próprio Ubuntu) primeiro tentará consolidar a memória em partes que pode alocar para os aplicativos que solicitam a memória (a lentidão que você está vendo) e, se não puder, esses aplicativos irá travar, liberando assim sua memória para os aplicativos mais bem comportados que não travaram.

O Killer OOM do Kernel ¹ só é invocado se e somente se não houver outra maneira de fazer isso < um href="https://lwn.net/Articles/668126/#reaper/"> ² e olhando para o seu uso de disco alto, você está correndo para o muito pequeno para falhar a regra de alocação de memória . A seção relevante declara:

In other words, the allocating process cannot proceed because it is waiting for its allocation call to return. That call cannot return until memory is freed, which requires the victim process to exit. The OOM killer will also wait for the victim to exit before (possibly) choosing a second process to kill.

O discurso:

Quando eu era criança e a única qualificação que você precisava para começar na indústria de TI era a capacidade de ler manuais e 32K era a norma e 64K era " wow ", usamos para verificar cada alocação de memória e exibir" Memória insuficiente "quando não conseguimos alocar memória em um nível de aplicativo, que os programadores atuais kids não fazem mais como eles estão estragados com múltiplos monitores, enormes SSDs e sistemas que são geralmente melhores que os sistemas que seu software realmente roda em eles não estão acostumados a ter sistemas ficando sem memória mais ...

; -)

    
por Fabby 14.04.2018 / 01:43