Configuração de memória de overcommit do Linux

0

De acordo com este documento: link , se eu definir "vm.overcommit_memory" como " 2 ", em seguida," O total de espaço de endereço confirmado para o sistema não pode ultrapassar o swap + um valor configurável (o padrão é 50%) da RAM física. " Além disso, "O valor de supercomprometimento pode ser definido por meio de 'vm.overcommit_ratio' (porcentagem) ou 'vm.overcommit_kbytes' (valor absoluto)."

A minha pergunta é, o "vm.overcommit_ratio" e "vm.overcommit_kbytes" limitam a soma total de confirmação de memória por todos os processos, ou apenas limitam cada processo?

Eu acho que deveria ser o último, porque não faz sentido limitar o sistema a usar apenas metade da memória física no total, mas a descrição no documento sugere que ele está limitando globalmente.

    
por Sam 13.03.2017 / 20:42

2 respostas

2

É global. O objetivo da configuração é garantir que você não consiga usar todo a memória e fazer com que o OOM killer comece a matar processos.

    
por 13.03.2017 / 20:51
2

I think it should be the latter,

É o primeiro.

because it makes no sense to limit the system to use only half of physical memory in total, but the description in the document suggests it is limiting globally.

Concordado. Mas isso não é um limite para a quantidade de memória física usada. Como se diz, isso limita o espaço de endereçamento comprometido, não o uso de memória física. Claro que o sistema vai usar praticamente toda a sua memória RAM.

    
por 13.03.2017 / 20:56

Tags