Linux: не создавать раздел подкачки?

Мне было интересно, так как я слышал, что своп используется, когда вы находитесь вне или оперативной памяти и и замена слишком много плохо, так как у меня много оперативной памяти (8 ГБ)....

Что делать, если я не создаю раздел подкачки?

кроме того, мне это нужно для гибернации или это не обязательно?

12
задан Mihai Bratulescu
12.01.2023 1:16 Количество просмотров материала 3051
Распечатать страницу

6 ответов

современные операционные системы требуют подкачки для эффективного использования оперативной памяти. Даже если ваша система имеет достаточно памяти, теряя результаты ОЗУ меньшего буфера кэша, что означает увеличение дискового ввода-вывода. поэтому независимо от того, сколько оперативной памяти вы имеете, вы все еще хотите использовать его эффективно. Использование его эффективно означает получение вещей из оперативной памяти, которые крайне вряд ли когда-либо будут доступны.

при запуске обычной системы запускается большое количество служб. Запуск программ код инициализации и изменить частные сопоставления памяти в процессе. Ряд таких услуг будет никогда снова запустить. Многие из них не будут работать в течение нескольких часов. Без swap у ОС нет выбора, кроме как навсегда сохранить измененные частные сопоставления памяти, связанные с этими службами в оперативной памяти. Это оперативная память, которая никогда не может быть использована в качестве дискового кэша.

Итак, вы хотите поменять, нужно ли вам это или нет.

12
отвечен David Schwartz 2023-01-13 09:04

Я работал на настольной системе без подкачки в течение нескольких лет, и это было здорово! Есть несколько моделей поведения, которые отличаются; некоторые из них выгодны, а некоторые могут причинить вам вред. Все зависит от того, что ты делаешь.

одно из основных различий заключается в том, как ведет себя система, когда заканчивается память:

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

Если есть is раздел подкачки, ядро помещает содержимое памяти в раздел подкачки. Ошибочный процесс может продолжить выделение памяти. Это происходит до тех пор, пока не закончится swap, который может составлять от десяти минут до часа, если у вас большой раздел подкачки. Пока он делает это, ваша система замедляется. Становится невозможно открыть терминал и убить процесс. Я обычно отключаю шнур питания когда это произойдет.

Итак, так как я собираюсь потерять свои данные в любом случае когда система OOMs, я предпочитаю первый вариант, по крайней мере, иметь (высокий) шанс на восстановление.

11
отвечен Jeff Taylor 2023-01-13 11:21

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

5
отвечен psusi 2023-01-13 13:38

Это распространенное заблуждение думать, что наличие области подкачки отрицательно влияет на производительность. То, что сильно влияет на производительность, не имеет достаточного объема оперативной памяти. Сама по себе область подкачки не оказывает негативного влияния на производительность, если вы не заботитесь о надежности. Он может иметь положительное влияние на производительность, даже если вы думаете, что у вас достаточно оперативной памяти (и нет нехватки оперативной памяти не сообщается).

существуют три случая, чтобы рассмотреть:

  • 1: Достаточно оперативной памяти для нужд внутреннего ядра, для всех ваших приложений, чтобы их рабочий набор страниц оперативной памяти, а еще есть "свободной" ОЗУ для буфера для хранения файлов данных системы.

  • 2: то же, что и выше, за исключением того, что у вас недостаточно свободной оперативной памяти для буферного кэша, чтобы быть полностью эффективным.

  • 3: недостаточно оперативной памяти даже для хранения используемых страниц приложений.

в случае 1, что должно быть нормой для рабочей машины, наличие области подкачки или нет ничего не меняет (по крайней мере, на ОС на базе Linux и других ОС, которые чрезмерно фиксируют память).

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

в случае, если 3, имея область подкачки позволяет приложению продолжать работать за счет снижение производительности из-за разбиения на страницы. С другой стороны, отсутствие области подкачки (или достаточно большой) приведет к случайному сбою приложений. Кроме того, в зависимости от настроек ОС, убийца OOM может также решить убить большинство голодных приложений памяти, если есть сильный спрос на оперативную память, даже не давая им возможности сохранить свои (ваши) критические данные.

Это последний случай, с которым вы должны сделать выбор. Есть, конечно, некоторые случаи использования, где процессы убивают является предпочтительным вариантом, как системы, где время отклика имеет решающее значение и где потерять сделку / процесс не имеет большого значения.

тем не менее, я склонен верить в большинстве ситуаций, лучше, чтобы иметь возможность позволить шанс для пользователя/администратора, чтобы заметить нехватку оперативной памяти и действовать соответствующим образом, не рискуя потерять данные.

2
отвечен jlliagre 2023-01-13 15:55

Если вы не хотите использовать раздел подкачки, вы можете использовать файл подкачки: образ файловой системы, хранящийся в обычном файле и используемый в качестве пространства подкачки.

в следующих статьях подробно объясняется, как это сделать:

0
отвечен Joseph R. 2023-01-13 18:12

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

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

некоторые программы настаивают на выделении (но не используя) пространство подкачки, некоторые из них являются программами баз данных, если я помню. Опять же, не имея пространства подкачки, вы можете ограничить программы, которые могут быть запущены.

наконец, посмотрите своп дешево в том, что вам не нужно делать резервную копию области. (Я надеюсь, что вы один из этих прекрасных выдающихся системных администраторов, которые делают резервные копии своих систем).

Так создайте его.

мое эмпирическое правило было 2 * размер памяти.....но теперь adays я в порядке во многих случаях с 1 * размером памяти но обычно используют 1.5*(размер памяти). Вам не нужно создавать такую большую сумму, но я бы это сделал...особенно, если есть какой-либо производственный тип работы, которую вы делаете.

Ах да, и для спящего режима, своп требуется провести общий образ памяти. И, таким образом, размер, если вы рассматриваете h8ibernation, должен быть не менее (1*memory-size)+100 МБ..100 МБ для возможных издержек, необходимых в процессе.

0
отвечен mdpc 2023-01-13 20:29

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх