Подтвердить что ты не робот

Сколько памяти может использовать vm

Я прочитал документ Общие сведения о виртуальной памяти, и он сказал, что один из способов изменения настраиваемых параметров в виртуальной машине Linux команда:

sysctl -w vm.max_map_count=65535

Я хочу знать, что означает номер 65535 и сколько памяти может использовать vm при настройке.

4b9b3361

Ответ 1

Из документации ядра Linux:

max_map_count:

Этот файл содержит максимальное количество областей карты памяти в процессе можно иметь. Области карты памяти используются как побочный эффект вызова malloc, непосредственно с помощью mmap и mprotect, а также при загрузке совместно используемых библиотеки.

В то время как для большинства приложений требуется менее тысячи карт, некоторые программы, в частности отладчики malloc, могут потреблять множество из них, например, до одной или двух карт на выделение.

Значение по умолчанию - 65536.

Нижняя строка: этот параметр ограничивает количество дискретных отображаемых областей памяти - сам по себе он не накладывает ограничений на размер этих областей или на память, которая может использоваться процессом.

И да, это:

sysctl -w vm.max_map_count=65535

- это лучший способ написать это:

echo 65535 > /proc/sys/vm/max_map_count

Ответ 2

echo 'vm.max_map_count = 262144' → /etc/sysctl.conf

sysctl -p