Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин

Superfetch — что это за служба

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

СуперФетч можно сравнить с умным отцом, который держит весь инструмент в гараже не просто в порядке, а в «правильном» порядке, чтобы сын быстро отыскивал нужные ключи или кусачки. «Правильный» порядок означает следующее:

  • в непосредственной близости от рабочей зоны будут находиться те инструменты, который используются чаще всего;
  • приоритетный инструмент также расположен не наобум — если часто снимаются автоколеса, то домкрат будет ближе, чем баллонный ключ, поскольку тот нужен раньше;
  • все инструменты после использования кладут на старое место;
  • если какая-то операция уже не повторяется (например, купили новую покрышку и колесо теперь не прокалывается часто), то требуемый для ее выполнения специфический инструмент постепенно располагается все дальше и дальше от рабочей зоны.

Пример абсолютно условный, но он абстрактно демонстрирует задачи службы и это поможет более точно ответить на вопрос: «SuperFetch? Что это?».

Что это

SuperFetch – служба, предназначенная для поддержки и улучшения производительности операционной системы. Работая в фоновом режиме, она производит анализ потребления оперативной памяти разными программами.

Выделив часто открываемые приложения, служба начинает сразу после запуска операционной системы загружать их в память компьютера, чтобы пользователь смог быстрее приступить к работе с ними.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин

Enableboottrace

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

  • параметр не влияет на все, что происходит с Windows после загрузки;
  • ускоряется загрузка ОС за счет внутренней оптимизации файлов.

Enableprefetcher

Касательно этого параметра нужно объяснить историю предшественника SuperFetch — Prefetcher. Он появился еще на Windows XP и логика его действий — база для СуперФетч. Он анализирует, какие именно файлы загружаются при старте ОС или программ, создает таблицу приоритетности этих файлов и оптимизирует их размещение на носителе .

Enablesuperfetch

Параметр задает правила работы службы СуперФетч. Для него, как и для EnablePrefetcher, возможны 4 установки:

  • 0 — отключение службы;
  • 1 — использование только при загрузке приложений;
  • 2 — использование только при загрузке ОС;
  • 3 — использование при загрузке приложений и ОС.

Видео-инструкция

Также, можно посмотреть видео ролик в котором показано как отключить службу SysMain в операционной системе Windows 10.

Визуальные индикаторы сжатия памяти

В статье Microsoft вообще не упоминается служба SysMain, однако ее связь со сжатием памяти несложно вычислить экспериментальным путем. Кроме того, документ опубликовали перед выходом первой стабильной версии Windows 10, и лишь спустя год, в версии 1607, добавили наглядные сведения о сжатой памяти в диспетчер задач.

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

Также, в Process Explorer вы можете увидеть в дереве процесса System процесс Memory Compression (это был единственный наглядный способ на момент выхода Windows 10). Наконец, с помощью PowerShell вы можете получить текущий статус сжатия памяти командлетом Get-MMagent.

https://www.youtube.com/watch?v=iT5TGDfUYew

Если же служба SysMain отключена, сжатая память не работает, что видно по тем же показателям.

Для чего нужна служба superfetch? | база полезных знаний

Служба superfetch позволяет ускорить исполнение установленных в системе программ, с которыми вы постоянно работаете. Эта служба отмечает программы, которые вы чаще всего используете. Благодаря этому происходит значительное ускорение запуска и работы программ. Ведь, благодаря работе данной службы, все нужные файлы уже заранее загружены!

SuperFetch – строго интеллектуальная служба. Запоминает запускаемые файлы, с которыми вы часто работаете, и запоминает, когда и какой файл был запущен. Например, если вы ежедневно в течении недели работали с графическим редактором, а в выходной решили поиграть в видео игры, то файлы игр, которые вы запускали, загружены не будут. Таким образом, служба superfetch позволяет достигать некоторого ускорения в работе вашего компьютера, за счет оперативной памяти. Конечно, если грузить сразу все программы, то производительность сильно снизится.

Если ваш компьютер маломощный и не обладает большим размером оперативной памяти, например, всего 1 Гб, то данная служба может использовать flash-память (USB-накопитель). Пусть она намного медленнее физической памяти, но значительно быстрее чем жесткий диск. Для того чтобы superfetch могла ускорить работу системы за счет flash-памяти, вам потребуется флэшка подключенная к компьютеру (иногда достаточно объёма в 4 Гб), далее в окне автозапуска выберите «Ускорить работу системы».

:/>  Как узнать какой процессор на компьютере | Интернет и компьютер

Все настройки службы расположены в реестре:

HKEY_LOCAL_MACHINE – > SYSTEM -> CurrentControlSet -> Control -> SessionManager -> MemoryManagement -> PrefetchParameters

Там находятся три типа нужных параметров: REG_DWORD

EnableBootTrace – включает трассировку ( нужно включать только если служба работает не так, как надо). Трассировка – Для понимания определенной программы и для проверки правильного написания своей используется метод пошагового исполнения программ с отслеживанием всех значений переменных.

EnablePrefetcher – механизм упреждающей выборки (Упреждающая выборка – это функция для повышения скорости загрузки и запуска приложений Windows.)

EnableSuperFetch – определяет включение или отключение службы SuperFetch

Для последних двух параметров используются четыре значения:

3 – функция доступна во всех случаях ( и во время работы и при загрузке)

2 – Функция доступна во время работы, но выключена при загрузке

1 – функция включена, но только для загрузки

0 – функция выключена;

Отключить службу можно с помощью командной строки с правами администратора используя команду

sc config SysMain start= disabled

После перезагрузите компьютер.

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

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

Как отключить службу sysmain (superfetch) в windows powershell

Также можно использовать консоль PowerShell для отключения или включения службы SysMain (Superfetch).

Чтобы отключить службу SysMain (Superfetch), откройте консоль Windows PowerShell от имени администратора и выполните следующую команду:

Stop-Service -Force -Name “SysMain”; Set-Service -Name “SysMain” -StartupType Disabled

Чтобы включить службу SysMain (Superfetch), откройте консоль Windows PowerShell от имени администратора и выполните следующую команду:

Set-Service -Name “SysMain” -StartupType Automatic -Status Running

Используя рассмотренные выше действия, можно отключить или включить службу SysMain (Superfetch) в операционной системе Windows 10.

Как отключить службу sysmain в windows 10

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

Как отключить службу в windows 10

Если было решено отключить SuperFetch, в Windows 10 это можно сделать тремя способами:

  • через управление службами;
  • с помощью командной строки;
  • с помощью редактора реестра.

Как отключить утилиту

Операционная система Windows 10 использует SuperFetch по умолчанию и не рекомендует ее отключать. Но если вы решились все-же остановить ее работу, то следуйте этим инструкциям.

Вариант 1. Специальная программа Superfetch.exe

Как ускорить работу системы с помощью superfetch и flash-накопителя

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

  1. Подключаем flash-накопитель к компьютеру (достаточно объема в 4 Гб).
  2. На рабочем столе у вас всплывет окно автозапуска и в нем выбираем опцию «Ускорить работу системы».Ускорить работу системы

Командная строка

Запустите командную строку от имени администратора Windows 10. Теперь выполните простую команду: sc config SysMain start= disabled.

Компоненты службы sysmain

У службы пять компонентов, и вы можете проверить их статус в PowerShell от имени администратора командлетом Get-MMagent (MM – Memory Management, т.е. агент управление памятью). На картинке ниже стандартное состояние компонентов.

Управление новыми компонентами SysMain осуществляется командлетами Enable-MMagent и Disable-MMagent. Префетчинг, унаследованный из старых ОС, контролируется только в реестре (для указанных в документации параметров PowerShell запрос не поддерживается).

Сводная таблица компонентов службы и методов управления ими.

КомпонентНазначениеУправление
MemoryCompressionСжатие памятиPowerShell
PageCombiningОбъединение страниц памяти с одинаковым содержимым
ApplicationPreLaunchПредугадывание запуска приложений
ApplicationLaunchPrefetchingСистемный префетчинг запуска приложенийРеестр
OperationAPI Предоставление другим приложениям доступа к системному префетчингу через API

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

Насколько безопасно ее отключение?

Стоит SuperFetch отключить или нет Windows 7? Никаких проблем не возникнет, если все выключить. Служба никак не влияет на конфиденциальность данных и в подавляющем большинстве случаев слабо нагружает ресурсы системы. Хуже точно не станет, так что не стоит этого бояться.

:/>  PING - описание команды и примеры использования

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

Повышение производительности под нагрузкой

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

Наибольший эффект от технологии проявляется при сочетании недостатка памяти с существенной дисковой нагрузкой.

Сжатие памяти приносит больше пользы медленным, чувствительным к подкачке дискам — HDD и eMMC. Твердотельный накопитель нагрузить под завязку сложнее, но если вам это удалось, то избавление от лишних операций I/O лишним не будет.

Принцип работы

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

Хранящаяся в памяти коллекция сжатых страниц называется compression store. Система использует единое хранилище для всех приложений (Win32 и UWP), а также индивидуальные хранилища для всех приложений Windows Runtime, обеспечивающие тримминг и своп. Вместо записи страниц в файл подкачки, диспетчер памяти сжимает их и помещает в соответствующее хранилище.

Как ни странно, в документе ничего не говорится про еще одну функцию службы SysMain — объединение страниц памяти (page combining). Диспетчер памяти определяет страницы с одинаковым содержимым и объединяет их. Эта функция работает в рамках службы независимо от сжатия памяти.

Редактор реестра

Для отключения сервиса SuperFetch можно воспользоваться Редактором реестра:

  1. Необходимо нажать сочетание клавиш Win R и ввести команду regedit.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин
  2. В Редакторе реестра необходимо ввести в адресную строку Компьютер…PrefetchParameters. По данному адресу также получится перейти вручную.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин
  3. Справа на экране должен быть отображен среди других параметров EnableSuperfetch. Дважды нажмите на него левой кнопкой мыши и выполните замену числового значения на 0. Если же подобный параметр отсутствует, в таком случае нужно создать его, нажав ПКМ на пустое поле, и в контекстном меню последовательно выбрать “Создать” -> ”Параметр DWORD”.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин
  4. Как только отключите сервис, надо перезагрузить ПК.

Решение ошибок

Самый действенный способ исправить любую ошибку — отключить службу. Это наиболее эффективно, но также можно попробовать такие способы:

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

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

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

Как отключить SuperFetch в реестре Windows 10:

Таким же способом отключается SuperFetch и в Windows 7.

Сжатие памяти в windows 10

В Windows 10 отображаемое в графическом интерфейсе имя службы Superfetch сменилось на SysMain, что соответствует фактическому названию службы. Видимо, так Microsoft обозначила смещение основного назначения службы с унаследованного из старых ОС префетчинга приложений к новой функции — сжатию памяти (memory compression).

Компания опубликовала рассказ о технологии еще в августе 2021 года, но почему-то исключительно в приложении Центр отзывов (копия в PDF). Как следствие, информация прошла мимо многих пользователей Windows 10. Ниже мое краткое объяснение и дополнительные сведения.

Следует ли отключать

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

Такой подход оказывается бессмысленным при рассмотрении следующих утверждений:

  • при отключении службы уменьшится скорость загрузки приложений;
  • система начнет чаще обращаться к винчестеру, в результате увеличится оказываемая на него нагрузка;
  • если в компьютер встроено ОЗУ с большим объемом памяти, то нет смысла в высвобождении нескольких мегабайт — если же ее мало, тогда при отключении службы система начнет тормозить, подвисать.

Снижение объема записи на диск

За счет сжатия и объединения страниц памяти сокращается число операций ввода-вывода и соответственно снижается объем записи на диск. Поэтому бессмысленно отключать службу SysMain ради экономии ресурса SSD.

:/>  Как за 5 шагов настроить локальную сеть в Windows

Способы запуска

Как было сказано выше, Superfetch Windows 8 активизируется автоматически. Он «скрывается» за одним из процессов «Svchost.exe», не имея доступу к ресурсам сети. Чтобы собирать данные (статистику) применяется диспетчер фильтрации, встроенный в систему.

В ней расположены различные базы данных, записи в которых постоянно изменяются при перенастройке приоритетов.

Возможен вариант, когда кто-то (может и Вы) ранее деактивировал данную службу. Поэтому, включать её нужно вручную. Делается это просто:

  • Нажимаем Win R и вводим запрос «services.msc»:
  • В перечне находим нужный элемент и открываем его свойства (двойной щелчок левой кнопкой мышки или через контекстное меню).
  • Выбираем тип «Автоматический» и жмем «Запустить»:

Через диспетчер задач

Этот способ в отличие от вышерассмотренных вариантов подразумевает остановку SuperFetch только на время сеанса, то есть при следующем старте системы штатная системная служба будет снова работать. Чтобы временно отключить сервис, выполняем такие шаги:

Мы разобрали несколько эффективных способов, позволяющих деактивировать сервис SuperFetch. Несмотря на то, что служба, появившаяся вместе с Vista в 2007 году, уже устарела и результаты её работы не слишком впечатляют с учётом скорости современного оборудования, отключать супервыборку стоит лишь в тех случаях, когда она действительно нагружает диск.

А какой способ выбрали вы? Получилось ли таким образом устранить медлительность системы? Расскажите об этом в комментариях.

Через командную строку

Отключение SuperFetch также можно произвести через командную строку. Длят этого следует открыть консоль CMD на правах администратора и вставить туда команду sc config SysMain start= disabled.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин

Важно! В этой ситуации не подходит команда net stop, поскольку она только на время сможет остановить службу, при этом не изменив ее тип запуска. Для вступления новых настроек в силу нужно перезагрузить компьютер.

Через приложение службы

Чтобы открыть приложение Службы, нужно:

  1. В командной строке вписать команду services.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин
  2. Далее надо в списке отыскать службу SuperFetch и 2 раза нажать левой кнопкой мыши по ней.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин
  3. Откроется диалоговое окно, в котором следует нажать кнопку “Остановить”, а в специальном меню “Тип запуска” надо выбрать пункт “Остановлена”. После этого нажмите последовательно “Применить”->”ОК” и произведите перезагрузку ПК.Нюансы отключения службы SysMain в Windows 10 – Вадим Стеркин

Через службы

Проще всего отключить работу SuperFetch, выполнив следующие действия:

  • открываем оснастку «Службы» любым удобным способом, например, используя Поиск или консоль «Выполнить» (Wi R) и команду «services.msc»;Службы Windows
  • в окне системных служб будет список, включающий все локальные компоненты, выстроенные по умолчанию в алфавитном порядке. Находим здесь SuperFetch;
  • выбрав сервис из перечня, жмём «Остановить» на панели слева, чтобы сервис прекратил работу (если блок не отображается, в нижней части окна выбираем вкладку «Расширенный») или жмём ПКМ по имени службы и выбираем пункт «Остановить»;Служба SuperFetch
  • чтобы служба не запускалась автоматически, а была отключена навсегда, идём в «Свойства» из контекстного меню (жмём ПКМ на SuperFetch) и на вкладке «Общие» окна свойств из выпадающего меню меняем «Тип запуска», выставив значение «Отключена» (или «Вручную»);
  • жмём «ОК» и закрываем окна.

После выполненных манипуляций перезагружаем комп и проверяем работу. Если в ходе диагностики выяснилось, что служба не имеет отношения к нагрузке на ресурсы, включить SuperFetch можно, выполнив аналогичные действия по запуску окна служб, только на этот раз нажать нужно «Запустить», а в свойствах выбрать «Тип запуска» – «Автоматически».

Заключение

Я исторически ратую за подробную документацию по продуктам Microsoft, и случай с SysMain является одним из худших примеров. Описание главной системной службы погребено в центре отзывов и никак не связано с фрагментами информации в блоге инсайдерской программы и справкой по командлету PowerShell, у которого в свою очередь не работают параметры управления унаследованными компонентами.

Да, у Microsoft есть официальные рекомендации по настройке служб Windows Server 2021 с Desktop Experience, которые с оговорками можно распространить на Windows 10. Там не рекомендуется изменять тип запуска службы (именно это означает ремарка No guidance).

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

Оставьте комментарий