Служба узла Superfetch в Windows 7/10 – что это?

0
644

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

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

Superfetch в Диспетчере задач

Зачем нужна служба SuperFetch в Windows 7/10 и как она работает

Итак, SuperFetch. Что это за служба, как она работает и для чего она вообще нужна? Прямое её предназначение заключается в ускорении загрузки компонентов операционной системы и часто используемых программ, хотя на данном этапе развития компьютерных технологий этот момент является весьма спорным.

Технология супервыборки, а именно так можно перевести термин SuperFetch, не так уж и нова. Похожий сервис присутствовал ещё в Windows XP и назывался Prefetcher, то есть предварительная выборка. Суть его работы заключалась примерно в следующем: на начальном этапе запуска компонентов и приложений специальная функция отслеживает операции обмена данными между ОЗУ и жёстким диском и записывает их в особые файлы PF. На основе этих данных создаётся карта ссылок на исполняемые файлы и каталоги, и когда система стартует, служба Prefetcher обращается к этим картам и загружает кэшированные данные программ в особую область оперативной памяти.

В момент запуска системой или пользователем программы полного обращения к её исполняемому файлу не происходит, так как его «часть» уже сохранена и загружена в память. В результате количество обращений к жёсткому диску уменьшается, и приложение запускается быстрее. Похожим образом работает служба узла SuperFetch, которая, по сути, является усовершенствованной версией Prefetcher, кстати, также присутствующей в Windows 7, 8.1 и 10. Подробно останавливаться на разнице между этими двумя службами мы не будем, отметим лишь, что SuperFetch умеет создавать конфигурационные файлы, содержащие данные о частоте и условиях запуска часто используемых программ.

Следует ли отключать SuperFetch: все за и против

Выше мы уже отмечали, что в настоящее время целесообразность использования SuperFetch ставится многими под вопрос. Кто-то утверждает, что, отключив супервыборку, можно высвободить дополнительный объём оперативной памяти, кто-то говорит, что отключение SuperFetch позволяет продлить срок службы жёстких дисков, особенно SSD-накопителей, встречаются также утверждения, что если на ПК имеется более чем достаточно оперативной памяти, то особой пользы от службы попросту не будет.

Что на это можно сказать? Служба SuperFetch потребляет совсем немного ресурсов и весьма сомнительно, что её отключение прибавит сколь-либо производительности даже на слабых машинах. Скорее всего, всё будет как раз наоборот, так как система и программы станут запускаться медленнее. На ПК с большим объёмом ОЗУ высвобождение нескольких мегабайт также не будет играть никакой существенной роли, а вот время загрузки системы и приложений увеличится, хотя это и не будет так заметно.

Что касается продления времени службы дисков, так тут всё наоборот, SuperFetch как раз не производит запись на диск, а вот с её отключением количество обращений к винчестеру возрастёт, следовательно, увеличится и нагрузка на него. Тогда почему самими производителями рекомендуется отключать супервыборку при использовании SSD-дисков? Потому что эти носители намного быстрее традиционных HDD, и, даже будучи включённой, SuperFetch не принесёт на ПК с такими дисками сколь-либо ощутимой пользы. Вреда от неё, к слову, тоже не будет.

Примечание: установленная на твердотельный накопитель Windows, как правило, сама отключает супервыборку, в остальных случаях её можно деактивировать вручную, если это рекомендует производитель.

Не стоит также забывать о том, что отключая SuperFetch, вы больше не сможете пользоваться некоторыми функциями Windows, в частности, ReadyBoost, предназначенной для ускорения работы компьютеров с малым объёмом оперативной памяти. Пожалуй, единственным основанием для отключения является случай, когда служба SuperFetch грузит диск в Windows 7/10, мешая нормальной работе пользователя, причём другие способы устранения проблемы, например, обновление драйверов оборудования, не дают положительного результата.

Способы отключения службы

Итак, с тем, нужно ли отключать SuperFetch в Windows 7/10, мы более или менее разобрались, теперь давайте посмотрим, как можно эту службу деактивировать. Для этого существует как минимум три инструмента: оснастка управления службами, командная строка и реестр.

Через оснастку «Службы»

Попасть в интерфейс управления службами проще всего, выполнив в диалоговом окошке Run (Win+R) команду services. Также вы можете открыть Диспетчер задач, перейти на вкладку «Службы» и нажать внизу ссылку «Открыть службы».

Открываем службы через Диспетчер

Далее в списке найдите службу под названием SuperFetch и дважды кликните по ней.

Находим в списке Superfetch

В открывшемся диалоговом окошке нажмите кнопку «Остановить», а в выпадающем меню «Тип запуска» выберите опцию «Остановлена». Нажмите «Применить», затем «OK» и перезагрузите компьютер.

Останавливаем службу и выбираем тип запуска Отключена

С помощью командной строки

Отключить супервыборку также можно из командной строки. Откройте консоль CMD от имени администратора и выполните в ней команду sc config SysMain start= disabled.

Отключаем SuperFetch через командную строку

Команда net stop в данном случае не подходит, так как она лишь временно остановит службу, но не изменит её тип запуска. Чтобы новые настройки вступили в силу, перезагружаем компьютер.

С помощью редактора реестра

Наконец, отключить SuperFetch позволяет редактор реестра. Откройте его командой regedit в окошке «Выполнить» и разверните ветку:

HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/Memory Management/PrefetchParameters

В правой колонке редактора вы увидите DWORD-параметр EnableSuperfetch. Он может принимать четыре значения:

  • 0 – отключает службу;
  • 1 – включает её только для компонентов загрузки системы (ускорение загрузки Windows);
  • 2 – включает службу только для файлов программ (запускаться быстрее будут только приложения);
  • 3 – включает супервыборку и для системы, и для программ.

Присваиваем параметру EnableSuperfetcher значение 0

Соответственно, чтобы полностью отключить SuperFetch, вам нужно заменить текущее значение на 0 и перезагрузить компьютер.