Концепция виртуальной памяти в Linux не слишком отличается от таковой в операционной системе Windows. Когда в Windows заканчивается свободная память, начинает использоваться файл подкачки (page file). Виртуальная память является относительно недорогим способом увеличить производительность в те моменты, когда система использует максимально возможный объем оперативной памяти.
Область подкачки Linux
Виртуальная память Linux размещается в «файловой системе» подкачки. Эта дисковая файловая система должна иметь типswap
. Для получения информации об использовании системной области подкачки можно использовать несколько инструментов командной строки (а также графические инструменты):
free
top
vmstat
sar
Команда free -m
позволяет увидеть статистику использования памяти, включая область подкачки. Команда top
выводит в реальном времени список процессов, а также статистику загрузки ЦП и оперативной памяти. Команда vmstat
помимо информации о загрузке системной памяти и ЦП выводит информацию о блочном вводе/выводе. Помимо этих команд я обнаружил набор инструментов sar
, похожий на монитор производительности Windows и предназначенный для анализа использования области подкачки сервером:
$ sar -w $ sar -B
В этом примере команда sar -w
выводит статистику использования области подкачки, а команда sar -d
– информацию об операциях чтения и записи в раздел SWAP. Для получения информации о настройке sar
обратитесь к документации sar
.
Создание нового пространства подкачки
Если вам необходимо больше пространства подкачки, то у вас есть два пути: создать раздел подкачки или создать область подкачки в существующем разделе. Если имеется свободное дисковое пространство, то рекомендуется выделить некоторую его часть для создания отдельного раздела подкачки. Тем не менее, можно создать область подкачки необходимого размера и на уже имеющемся рабочем разделе, например на разделе с файловой системой ext3.
Если вы создаете новую область подкачки, например, расширяя имеющийся раздел или добавляя новый жесткий диск, то следует создать файловую систему специального типа с помощью команды mkswap
. Для создания нового пространства подкачки выполните следующие действия:
- Создайте раздел с помощью команды
fdisk
и укажите для него тип82
(область подкачки Linux). - Создайте том подкачки с помощью команды
mkswap
. - Задействуйте область подкачки с помощью команды
swapon -a
. - Добавьте новую точку монтирования области подкачки в файле /etc/fstab.
- Перезагрузите компьютер и проверьте доступность новой области подкачки с помощью команды
swapon -s
.