Почему не стоит отказываться от свопа в Linux даже при наличии избытка ОЗУ

Во время установки Linux при самостоятельной разбивке диска мастер попросит выделить пространство для свопа или попросту раздела подкачки. Если же вы откажетесь от ручного режима, Swap будет создан автоматически. То есть Linux считает, что своп необходим, тем не менее, всё больше пользователей склоняется к мысли, что выделение места под своп является сегодня излишним. Он необходим, когда объемы оперативной памяти на ПК были еще малы.

Полагают они, — сегодня, когда размер ОЗУ на среднем ПК составляет 8 Гб или даже больше, в подкачке более нет нужды. Но так ли это на самом деле?

GParted

Это удивительно, но многие пользователи Linux, даже те из них, которые проработали с этой операционной системой много лет, плохо понимают назначение свопа, причем сейчас мы не касаемся непосредственно форм свопинга, одна из которых представлена разделом, а другая файлом по типу pagefile.sys в Windows. Так или иначе, большинство пользователей Linux видят в Swap лишь временную дополнительную память, в которую сбрасываются не помещающиеся в ОЗУ данные. На самом деле всё немного и сложнее, и иначе.

Как уверяют инженеры, Swap в Линукс необходим не столько для моментального получения дополнительной памяти, сколько для ее управления, правильного распределения и высвобождения. Следует начать с того, что в Linux имеется несколько типов памяти, причем каждая из них обладает своими особенностями. Есть блоки памяти, которые хранят код процессов системы и приложений; есть блоки памяти, в которых сохраняются данные кэшей; существуют также страницы, в задачи которых входит распределение памяти внутри кода, и такие страницы условно называются анонимными.

С типами памяти тесно связано понятие высвобождения памяти, то есть удаление страниц конкретного типа из физической памяти без утраты информации. Так вот, сделать это можно не для всех страниц, например, для упомянутых выше анонимных страниц хранилищем является сама память, никакого иного хранилища, в которое данные можно было временно записать, для них изначально не предусмотрено. Высвобождение таких страниц из памяти было бы равносильным полной потери всего, что в них содержится. Для этого как раз и придуман своп, позволяющий высвобождать такие «невысвобождаемые» страницы. Таким образом, Swap способствует более равномерному распределению ресурсов, часть которых в противном случае была бы вынуждена находиться в памяти, оказывая не самое лучшее влияние на производительность.

Сколько свопа нужно мне?

Всё зависит от того, какой объем анонимных страниц, привязанных к пространству памяти, нуждается в высвобождении. В любом случае больший размер свопа лучше, чем меньший. Если желаете больше конкретики, рекомендуем посетить официальную страницу руководства по выделению свопа в Linux Ubuntu help.ubuntu.com/community/SwapFaq, на которой приводится таблица оптимального соотношения размера свопа и диска с использованием гибернации и без оной.

Swap Linux

Краткий итог

Некорректное понимание назначения Swap в Линукс привело к негативному его восприятию многими пользователями, ошибочно полагающими, что отключение свопа при достаточном объеме ОЗУ и физической памяти позволит им снизить количество дисковых операций ввода/вывода при конкуренции за память. На самом деле отключение свопа приведет лишь к перемещению дискового IOPS с анонимных страниц на файловые, уменьшив объем пула доступных для высвобождения страниц, что в конечном итоге вряд ли положительно скажется на производительности.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...

Рекомендуемые публикации:

1 комментарий

  • Арсений:

    Постоянно надо не запамятовать об, самом ключевом,: всякая различная информация должна приносить полезность желающему. И на этом месте это в целом есть. Молодчины

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *