Нужно ли отключать файл подкачки для ssd: Ssd и файл подкачки — Вопросы на DTF
Содержание
Стоит ли отключать файл подкачки Windows 10 и что об этом нужно знать
Плюсы и минусы > IT > Стоит ли отключать файл подкачки Windows 10 и что об этом нужно знать
Файл подкачки Windows — это специальный файл, который используется как дополнительная RAM-память в виде данных на жестком диске. Многие пользователи предлагают отключить его при условии, если на компьютере используется большой объем оперативной памяти. Однако действительно ли это хорошая идея?
Файл подкачки, также известный как SWAP, является файлом по умолчанию, расположенным по пути «C:\pagefile.sys» (его невозможно увидеть, пока не включить отображение скрытых файлов). Он занимает несколько гигабайт и расширяет RAM-память компьютера. Таким образом, данные, которые не помещаются в ОЗУ, передаются в этот файл.
В результате, мнение, что с большим объемом оперативной памяти можно свободно удалить файл подкачки, прочно укрепилось в головах пользователей. Однако для того, чтобы можно было однозначно ответить на этот вопрос, необходимо понять механизм работы ОЗУ и его взаимодействие со SWAP.
Как работает ОЗУ?
Данные на любом компьютере хранятся на жестком диске. Однако после запуска программы некоторые из этих данных переносятся в ОЗУ, поскольку они в ней обрабатываются намного быстрее. Благодаря этому программа работает намного лучше, чем если бы она считывалась непосредственно с диска.
Например, во время запуска браузер Chrome сначала загружается с накопителя, а затем часть его данных помещается в оперативную память. Благодаря этому, при запуске программы компьютер использует несколько копий Chrome в оперативной памяти, вместо того, чтобы перечитывать дополнительные файлы с гораздо более медленного жесткого диска.
Во время работы Chrome генерирует различные временные данные, необходимые для правильной работы – эти данные также хранятся в оперативной памяти. Например во время просмотра видео на YouTube кэшируется и временно сохраняется в оперативной памяти. При этом данные в ОЗУ не хранятся постоянно – вся помещенная в нее информация удаляется после перезагрузки компьютера.
Роль SWAP-раздела
Оперативная память не бесконечна и при ее заполнении во время работы Windows 10 (например, пришлось запустить слишком много программ), система передает часть этих данных обратно на диск в так называемую виртуальную память, работающую на основе одного файла. Им и является «pagefile.sys», который занимает несколько гигабайт, хотя его объем можно изменить на свое усмотрение.
Windows передает данные из оперативной памяти в pagefile.sys, даже если те не используются. Если в Windows запущена программа в фоновом режиме и долгое время свернута, ОЗУ освобождается для активных процессов, а эти данные переносятся в файл подкачки.
Последующий вызов такой программы будет более медленным. Так, часто можно увидеть, как некоторое время окно может оставаться белым, поскольку содержимое считывается из виртуальной памяти на жестком диске. В противном случае, ОЗУ быстро бы заполнилась и в случае переполнения перестала полностью работать.
Нужно ли его отключать?
Существует мнение, что при большом объеме оперативной памяти (8 Гб +) можно отключить файл подкачки. К нему пользователи пришли не случайно – SWAP-раздел на диске действительно работает медленнее, чем ОЗУ. Следовательно, его проще отключить и полагаться только на более быструю память. Вдобавок, большой объем RAM-памяти заполнит вряд ли удастся, поэтому тратить лишние гигабайты не имеет смысла.
Это не совсем так. Многие пользователи тестировали работу операционных систем без виртуальной памяти. И если ОС могла работать без нее, то ускорения практически не было.
Более того, отключение файла подкачки может вызвать различные проблемы. Заполнив доступную ОЗУ, запустив много программ, те могут начать отключаться или отображать ошибки. Проблемы могут также возникнуть в ситуациях, при работе с виртуальными машинами. Некоторые игры или программы могут вообще не запускаться.
В итоге, при желании увеличить производительность путем отключения pagefile.sys не получится ничего. Так что лучше оставить его без изменений. Тем более, его отсутствие может вызвать проблемы со стабильностью.
Впрочем, есть два исключения, в которых имеет смысл его отключить или переместить:
В случае использования носителя SSD. Если Windows установлена на SSD, стоит переместить файл подкачки с него. Это позволит минимизировать процессы записи на диск, продлить срок службы SSD и таким образом ускорить работу системы.
При наличии небольшого системного раздела. Если на системном диске заканчивается место, могут возникнуть проблемы связанные с быстродействием системы. Тогда его лучше переместить на другой раздел.
Преимущества pagefile.sys
- При малом объеме ОЗУ можно увеличить стабильность работы операционной системы.
- В случае необходимости из него можно извлечь потерянные данные, если произошло отключение компьютера или возникла какая-либо аварийная ситуация.
- Есть возможность выделить место на диске для записи отладочной информации.
- Позволяет запускать больше программ, чем при использовании одной оперативной памяти.
- Занимается равномерным распределением данных, которые затем переходят в ОЗУ для последующей переработки.
- Благодаря вышеуказанной оптимизации системных процессов, производительность Windows 10 только увеличится.
- Можно запускать игры и тяжелые программы, для которых требуется больший объем ОЗУ, чем установлено на компьютере.
Недостатки
- Скорость считывания данных жесткого диска в несколько раз ниже по сравнению с RAM-памятью.
- При слишком высокой фрагментации pagefile.sys производительность компьютера существенно снижается.
- Для использования файла подкачки скорость работы дискового накопителя не должна быть низкой.
- Рекомендуемый оптимальный размер SWAP составляет – около 2 Гб, что может оказаться критичным в случае с не слишком емкими накопителями.
- В некоторых случаях может потребоваться трудоемкая оптимизация pagefile.sys, занимающая много времени.
Заключение
Файл подкачки в Windows 10 на самом деле не стоит отключать, даже если объем ОЗУ достаточно высокий. При правильной его настройке производительность операционной системы может существенно увеличиться. Если же рассчитывать на более высокую скорость работы ОС за счет его отключения – прирост может оказаться незначительным, а количество проблем – вырастет.
Нужен ли файл подкачки на SSD?
Всем привет! Сегодня давайте разберем, нужен ли файл подкачки на SSD, нужно ли его отключать или можно оставить, как включить если отключен, сколько ставить, чтобы было достаточно. О том, нужна или не нужна дефрагментация твердотельного накопителя, рекомендую прочитать здесь.
Зачем нужен файл подкачки
Pagesys.sys — своеобразная виртуальная память, куда операционная система отправляет неиспользуемые на текущий момент промежуточные данные. ОЗУ не всегда бывает достаточно, что при 4 Гб, что при 8 Гб, что при 16 Gb на борту — все зависит от текущих задач, которые ставит юзер.
Самыми «прожорливыми» по потреблению оперативки являются видео игры (особенно ААА класса), обработка видео и звука. В этом случае запас в виде файла подкачки совсем не будет лишним, иначе при пиковых нагрузках компьютер сможет подлагивать.
Архитектура ОС остается неизменной: так было при ХР, так работала Виндовс 7 и сейчас работает Windows 10. Разница с годами только в системных требованиях приложений и растущем количестве ОЗУ на борту современного мощного компьютера.
Стоит ли делать Pagesys.sys на SSD диске
Некоторые опасения вызывает тот факт, что твердотельный накопитель имеет ограниченное количество циклов перезаписи. Однако стоит учитывать, что чтение из файла подкачки происходит в 40 раз чаще, чем перезапись данных.
Данные считываются малыми блоками — большинство объемом не превышает 16 Кб. При записи же блоки больше и могут достигать 1 Мб. По скорости работы ОЗУ и ССД идеально сочетается — эффективность такой сборки гораздо выше, чем Pagesys.sys на обычном винчестере.
Тем не менее, все же перезапись данных сокращает срок жизни SSD. Имеем классическую палку о двух концах: с одной стороны увеличение срока эксплуатации девайса, с другой повышение производительности системы. Что лучше, это уже решать вам.
Но могу дать очень ценный совет: если оперативки на вашем компе достаточно, лучше отключите файл подкачки вообще, в том числе и на винчестере. Если при пиковых нагрузках начинаются лаги, тогда и включайте.
Как включить файл подкачки
Алгоритм следующий:
- Нажмите кнопку «Пуск»;
- Кликните ПКМ по значку «Компьютер» и выберите «Свойства»;
- В меню слева перейдите в «Дополнительные параметры системы»;
- Во вкладке «Дополнительно» в разделе «параметры» нажмите кнопку «Параметры»;
- Во вкладке «Дополнительно» в разделе «Виртуальная память» нажмите кнопку «Изменить»;
- Выделите диск ССД и переставьте переключатель в положение «Указать размер»;
- Введите необходимое количество в мегабайтах и нажмите кнопку «ОК».
Изменения вступят в силу после перезагрузки компьютера. Размер Pagesys.sys рекомендуется установить такой же, сколько объем ОЗУ на компе.
Также советую почитать «Как включить режим AHCI в Windows 10» и «Виды RAID массивов». Буду признателен, если вы поделитесь этим постом в социальных сетях. До скорой встречи!
С уважением, автор блога Андрей Андреев.
Файл подкачки
— Зачем компьютеру нужен файл подкачки?
спросил
Изменено
1 год, 10 месяцев назад
Просмотрено
484 раза
Я искал «Зачем мне файл подкачки?» и «Зачем компьютеру файл подкачки/», и первая страница результатов не сообщила мне ничего технического. Скорее отключить его или не использовать в условиях большого объема оперативной памяти или как его включить.
Однажды мне сказали, что для Windows-машины программы занимают большие участки памяти, и с большим количеством процессов компьютеру нужен файл подкачки, поскольку все или многие из этих процессов запрашивают у системы большие объемы памяти, но в конце концов не используют это очень. Например, вся веб-страница в оперативной памяти для браузера и около 100 открытых вкладок.
Но чую немного не правильно и даже не так.
Может ли кто-нибудь объяснить мне, почему компьютеру — и я надеюсь, что это будет ответ компьютера с Windows или Linux — нужен файл подкачки?
Моя система только что снова уменьшилась до 125 МБ и стала работать медленнее, и теперь я включил своп, и теперь он просто работает? Как это возможно? Проверка top
говорит, что у меня теперь есть подкачка 8 ГБ (раздел), и мне нужно было killall
, мой браузер (много много вкладок) включил подкачку с включенной подкачкой, перезапустил браузер, снова открыл все вкладки, но не замедлился? Кроме того, сверху (процесс) говорится, что компьютер использует подкачку 0 КБ?
- файл подкачки
3
Нет. Однако то, что вы прочитали, на самом деле верно: программы могут резервировать больше памяти, чем им нужно. Насколько больше они используют (если вообще используют), сильно различаются. Файл подкачки (в Windows) — это механизм резервирования этих резервов из пространства жесткого диска/твердотельного накопителя вместо того, чтобы тратить на них физическую оперативную память.
Windows и Linux по-разному обрабатывают виртуальную память. В Linux можно «перезагрузить»: зарезервировать больше памяти, чем доступно. В Windows это невозможно. После того, как вся физическая оперативная память и пространство файла подкачки будут зарезервированы, дальнейшее резервирование будет невозможно.
В Windows, если у вас нет файла подкачки, все резервирования должны поддерживаться физической оперативной памятью. Особенно, если у вас не так много оперативной памяти (сегодня 16 ГиБ+), вы быстро столкнетесь с нехваткой памяти. Я только что загрузился 2 часа назад, немного просматривал и смотрел фильм, и уже программное обеспечение зарезервировало более 8 ГБ или памяти на моем ПК. (На самом деле активно чуть более 5 ГиБ.)
Я не могу точно прокомментировать ситуацию с вашим браузером, но одно можно сказать наверняка: перезапустив браузер, вы, по сути, удостоверились, что все оставшиеся резервирования были удалены, а использование памяти сведено к минимуму. Он будет расти снова по мере того, как вы продолжаете его использовать.
Если вы хотите продолжить изучение этой темы, вам придется прочитать о том, как работает виртуальная память. (Одна вещь, которую следует иметь в виду, это то, что виртуальная память является неотъемлемой частью современных вычислений и не может быть отключена в высокоуровневых операционных системах. Часто вы можете встретить что-то вроде «отключение файла подкачки отключает виртуальную память». Это совершенно неправильно.)
1
Современные процессоры имеют способность под названием стр. .
ЦП, которые могут выполнять пейджинг, имеют компонент, называемый MMU, который может переназначать ОЗУ, а также иметь «сбои страниц».
Механизм подкачки разбивает ОЗУ на небольшие разделы, называемые страницами (обычно 4 Кбайт). В сочетании с ошибками страниц это позволяет следующее:
Это позволяет операционной системе назначать страницы процессам и упорядочивать страницы так, чтобы процесс думал, что он имеет непрерывный раздел памяти (хотя на самом деле он может быть повсюду).
Это также позволяет сбою страницы происходить при доступе к странице по разным причинам. Ошибка страницы — это «исключение ЦП», которое немедленно передает управление ОС. Одной из очень распространенных причин является контроль объема оперативной памяти, который может использовать процесс. Если процесс пытается получить доступ к странице, которая «больше», чем память, предоставленная ему ОС, произойдет ошибка страницы, и ОС может затем завершить этот процесс за попытку доступа к памяти, которая ему не принадлежит.
Итак, третья возможность — ОС может сделать следующее:
Сохранить страницу, которая может принадлежать процессу, не используемому на диске, и пометить ее как на диске.
Когда процесс по какой-либо причине вызывается обратно, происходит страничная ошибка, и ЦП может вернуть сохраненное содержимое с диска. Затем управление возвращается процессу, и он даже не знает, что он был «выгружен» на диск.
Для этого существует файл подкачки, или файл подкачки, как его еще называют.
Это позволяет вашей операционной системе работать более эффективно, перемещая процессы, которые давно не использовались, из ОЗУ, чтобы освободить больше ОЗУ для программ, которые вы фактически используете.
Это также может дать некоторый буфер (ваш компьютер будет замедляться вместо того, чтобы программы отказывались запускаться), если у вас больше активных процессов + запросов памяти, чем у вас на самом деле есть ОЗУ.
Вам действительно не нужен файл подкачки/файл подкачки, если вы точно знаете, что все, что вы когда-либо захотите сделать со всеми программами, которые вы будете запускать одновременно, поместится в ОЗУ, но трудно знать это наверняка.
Возможно, вы не «подкачиваете» данные в файл подкачки, но он обеспечивает дополнительное резервное хранилище на случай, если вы могли бы .
Проблема в том, что программы часто перераспределяют ОЗУ, предполагая, что у вас действительно есть файл подкачки. Одна особенность/проблема Windows заключается в том, что, позволяя программам выделять больше, чем они фактически используют, они могут иметь другое количество фактической (рабочей) памяти по сравнению с тем, что система обязана предоставить.
У вас может быть рабочий набор из 4 ГБ для всех ваших программ, но поскольку все процессы перераспределяют память, фактическая плата за фиксацию может составлять 8 или даже 16 ГБ. При чтении больших файлов обычной практикой является указание операционной системе просто «отобразить» весь файл в ваше собственное адресное пространство (см. Ввод-вывод с отображением памяти), и это эффективно отображается в пространстве памяти ваших процессов. Это пространство требует «обязательства» в системе виртуальной памяти, и это обязательство должно быть подкреплено хранилищем в системе на случай, если вы начнете писать в эту память, но не в сам файл.
Значительная часть выделенной оперативной памяти вполне может быть «пустой», но Windows хочет знать , что она может выполнить это обязательство. В результате вы достигаете невидимого предела памяти, но при этом память остается «свободной». Эта неспособность выделить больше виртуальной памяти (отличной от ОЗУ) является причиной ошибки, которую вы получаете.
Файл подкачки позволяет Windows сказать: «Ну, если программам нужно больше памяти, тогда я могу вытолкнуть часть на диск» и позволяет большему количеству программ перераспределять ОЗУ, чтобы лучше использовать то, что у вас есть на самом деле.
Хотя рабочий набор по-прежнему меньше вашего общего объема ОЗУ, Windows или Linux, скорее всего, , а не , отправят данные в файл подкачки, но они знают, что если нужно, то могут .
Отключая файл подкачки, вы ограничиваете память компьютера, даже если это не так.
Очевидно, что Linux должна разрешать чрезмерное выделение памяти, но Windows гораздо менее склонна к этому.
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя электронную почту и пароль
Опубликовать как гость
Электронная почта
Обязательно, но не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.
linux — Гибернация без подкачки включена
Отключение подкачки, когда вы уже знаете, что ваша система может дойти до точки, когда ей не хватит памяти, — это плохая идея . Прямо в тот момент, когда у ядра не будет памяти для выделения, ваша система, вероятно, будет очень-очень не отвечать или просто зависнет, поэтому вам придется ее перезагрузить. Зависания могут привести к потере данных, а иногда и к повреждению файловой системы. В зависимости от файловой системы это может быть исправлено автоматически (семейство ext*, семейство fat, btrfs и некоторые другие), но не все ФС поддерживают эту функцию. Бьюсь об заклад, вам, вероятно, не понравится запускать
fsck
в однопользовательском режиме каждый раз при повреждении…Ядро не настолько глупо, чтобы просто записывать все, что хочет, на ваш SSD, оно ведет себя по-другому по сравнению с жесткими дисками и пытается сделать как можно меньше записей, используя такие вещи, как TRIM. Ваш драйв не так уж и вреден, как вы думаете.
- Спящий режим
— это встроенная в ядро подсистема , работающая на низком уровне. Он по-прежнему должен иметь отдельный раздел размером ≥ размера ОЗУ, что позволит ему просто сделать полный снимок вашей памяти. Здесь вы можете прочитать, как Linux управляет гибернацией. Если нет места для постоянного хранения образа памяти, гибернация не работает. Вы не можете хранить данные в воздухе. Нет постоянного физического хранилища = нет гибернации. Так что это также ответ на ваш вопрос: вы не можете использовать гибернацию без свопа в Linux .
Итак, я хочу сказать, что вы, конечно, можете жить без свопа и включать его только для гибернации, но только в том случае, если вы уверены, что 99,9% времени, когда система находится на нем, памяти на все хватает. Если это не ваш случай, вы должны использовать своп.
Теперь о возможном решении:
При запуске systemctl hibernate
systemd запускает службу с именем systemd-hibernate. service . Юнит-файл, из которых обычно находится /usr/lib/systemd/system/ каталог
В Debian это выглядит так:
# SPDX-License-Identifier: LGPL-2.1+ # # Этот файл является частью systemd. # # systemd — бесплатное программное обеспечение; вы можете распространять его и/или модифицировать # в соответствии с условиями Стандартной общественной лицензии ограниченного применения GNU, опубликованной # Фонд свободного программного обеспечения; либо версии 2.1 Лицензии, либо # (на ваш выбор) любая более поздняя версия. [Единица] Описание=Спящий режим Документация=man:systemd-suspend.service(8) DefaultDependencies=нет Требует=sleep.target После=сон.цель [Услуга] Тип = ваншот ExecStart=/lib/systemd/systemd-спящий спящий режим
Как видите, есть варианты Требуется и После . Мы можем написать еще один модуль, который будет разрешать своп, и добавить его имя в эти поля. Мы назовем его swap-on.service и поместим его в каталог /etc/systemd/system/
. Наш файл будет выглядеть примерно так: пропусти это
[Единица]
Description=Включить раздел подкачки
[Услуга]
# Эта строка означает, что сервис будет запущен только один раз и сразу же остановится, когда
# swapon включает своп на /dev/sda3
Тип = ваншот
# Измените /dev/sda3 на устройство, названное в честь вашего раздела подкачки
# например /dev/sdb3 или /dev/nvme0n1p3
# Используйте lsblk для определения вашего раздела подкачки (раздел с [SWAP] в качестве точки монтирования)
# Конечно, вы можете придумать более сложное решение, например запуск внешнего скрипта
# который автоматически определяет ваш раздел подкачки каждый раз, когда запускается служба
# но пока я использую простой /dev/sda3
ExecStart=/sbin/swapon /dev/sda3
Теперь мы должны изменить нашу систему systemd-hibernate.service :
# SPDX-License-Identifier: LGPL-2.1+ # # Этот файл является частью systemd. # # systemd — бесплатное программное обеспечение; вы можете распространять его и/или модифицировать # в соответствии с условиями Стандартной общественной лицензии ограниченного применения GNU, опубликованной # Фонд свободного программного обеспечения; либо версии 2. 1 Лицензии, либо # (на ваш выбор) любая более поздняя версия. [Единица] Описание=Спящий режим Документация=man:systemd-suspend.service(8) DefaultDependencies=нет Requires=sleep.target swap-on.service <-- After=sleep.target swap-on.service <-- [Услуга] Тип = ваншот ExecStart=/lib/systemd/systemd-спящий спящий режим
Мы дублируем swap-on.service в After, чтобы убедиться, что systemd переходит в спящий режим после , своп включен, а не наоборот, и в Required, чтобы убедиться, что systemd не попытается перейти в спящий режим, если swap- on.service не удалось.
Теперь, когда мы запускаем systemctl hibernate
, systemd запускает наш модифицированный systemd-hibernate.service , который запускает swap-on.service , который включает своп. Когда своп включен и оба поля Required и After удовлетворены, systemd может, наконец, перевести нашу систему в спящий режим.
Чтобы заставить systemd отключить подкачку после выхода из спящего режима, нам не нужно создавать другой служебный файл с именем swap-off. service , который будет делать то же самое, что и наш swap-on.service , поместите его в тот же каталог. как «включенная» служба (/etc/systemd/system/). Единственное отличие состоит в том, что эта служба будет запускать swapoff вместо swapon :
[Unit] Description=Отключить раздел подкачки [Услуга] Тип = ваншот # снова измените /dev/sda3 на ваш раздел подкачки /dev файл ExecStart=/sbin/swapoff /dev/sda3 <--
Следующим шагом является изменение служебного файла с именем [email protected] , расположенного в том же каталоге /usr/lib/systemd/system :
[Unit] Description=Выход из спящего режима с использованием устройства %f Документация=man:[email protected](8) DefaultDependencies=нет BindsTo=%i.device Хочет=local-fs-pre.target После=%i.device До = local-fs-pre.target ConditionPathExists=/etc/initrd-релиз [Услуга] Тип = ваншот ExecStart=/lib/systemd/systemd-hibernate-resume %f
Теперь нам нужно изменить поле Before .