Андрей Смирнов
Время чтения: ~13 мин.
Просмотров: 579

SysMain: Что это за служба и как её включить в Windows 10

Никто не думает о скорости и производительности своего ПК до тех пор, пока система не начнет зависать. Superfetch – это одна из тех фоновых службы Windows 10, которая активна в 90% случаев и предоставляет массу неудобств пользователям, которые даже об этом и не догадываются. Что это такое? Нужно и безопасно ли отключать Superfetch? Как быстро отключить? На все эти вопросы сухо и по делу с уст профессионалов. Поехали…

Версия 2.03, Файл: superfetch.exe проверен на вирусы (см. отчет на Virustotal), размер: 0.4 Мб. Обновлено: 24.10.2018

superfetch_video.jpg

Скриншот из видеоинструкции как отключить superfetch

Superfetch для «чайников»

Как пояснили сами разработчики, служба Superfetch предназначена для поддержания и улучшения производительности компьютера. Конкретных механизмов взаимодействия нет в описаниях, но по факту эта фоновая программа анализирует данные, обработанные оперативной памятью, чтобы пометить их как «часто используемые» и заранее загружать обратно в ОЗУ для ускорения запуска приложений.

На деле все происходит не так. Впервые функция Superfetch появилась на ОС Windows Vista, как приемник службы Prefetch всеми любимой винды XP. Еще на тех старых «пеньках» за счет кэширования данных в ОЗУ система могла быстрее запускать приложения с медлительных HDD и увеличивать их продуктивность. Но когда не хватает оперативной памяти или она в излишке, Superfetch сильно грузит диск за счет частых обращений к носителю памяти (запрос шаблона, запрос для освобождения места).

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

Superfetch – отключать или нет? Советы профессионалов

Если синтетические тесты на продвинутом железе не дадут видимых результатов того, что Superfetch грузит диск или как-то снижает производительность системы, то слова профессионалов расставят все точки.

  1. Фоновый режим работы ВСЕГДА задействует ресурсы процессора и оперативной памяти, а это, так или иначе, дополнительно грузит параметры вашего ПК.

  2. Superfetch НЕ полностью подгружает данные в ОЗУ. При загрузочных процессах вы будете испытывать одинаковые задержки, как со включенной, так и с выключенной Superfetch.

  3. Эффект от работы Superfetch заметен только в сочетании SSD и Windows 10, при том, что ОЗУ подобрана в соответствии с запросами пользователя.

  4. Высокий износ SSD накопителей за счет частого обращения к модулю памяти. С включенной Superfetch ваши твердотельные накопители «помрут» быстрее.

  5. Программа Superfetch кэширует свои же данные и другие активные приложения, которые не участвуют в рабочих процессах. В фоновом режиме она неуправляема.

  6. Зависания в играх при оперативной памяти меньше 4 Гб. Это происходит за счет периодичных запросов к ОЗУ, которая и так максимально задействована в игровом процессе.

3 способа отключить Superfetch

Завершая все вышеперечисленные доводы статистикой, отметим, что многие лидирующие производители накопителей (Samsung, TRANSCEND, ADATA и другие) рекомендуют отключать Superfetch в системах с объемом ОЗУ больше 4 Гб. В 70% случаев эта служебная программа замедляет рабочие процессы и сильно грузит диск, в том числе активно расходуется ресурс SSD.

Отключить Superfetch достаточно просто. Например, Samsung выпустили утилиту Samsung Magician, где предусмотрен специальный пункт меню.

samsung_arc_2.png

Настройками операционной системы Windows 10 не предусмотрено отключение Superfetch (она активна по умолчанию), поэтому мы рекомендуем воспользоваться следующими способами:

Отключение службы Superfetch при помощи утилиты

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

Самый быстрый и простой способ отключени Superfetch! Кроме отключения, доступны дополнительные параметры для ускорения работы компьютера. Теперь Вы можете самостоятельно измерить производительность системы и выбрать оптимальный вариант. Поддерживаются все ОС Windows, в том числе последние 8 и 10 версии, где используется Superfetch.

Скриншот главного окна утилиты Superfetch for Windowssuperfetch_main_window.png

Поддерживается отключение служб: Superfetch, Prefetch, ReadyBoot, Windows Update<font>NEW!</font>

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

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

  1. Запустите дипетчер задач:Нажав Ctrl + Alt + Del
  2. Далее перейдите на вкладку Службы
  3. Найдите службу по имени: SysMain или по описанию: Superfetchsuperfetch_manager_1.png
  4. Выберите указанную службу и нажмите правую кнопку мыши, чтобы появилось контекстное меню:superfetch_manager_2.png
  5. Выберите пункт меню Остановить службу (если у Вас запущен Superfetch)

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

superfetch_manager_3.png

Далее, найдите службу Superfetch по имени и двойным кликом вызовете контекстное меню:

superfetch_manager_4a.png

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

Отключение службы Superfetch через реестр

  1. Нажмите клавиши Win + R и введите regedit для запуска программы редактор реестра.
  2. Найдите ключ, скопировав имя ключа ниже и подставив в строку поиска:<textarea> HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters</textarea>superfetch_manager_5.png
  3. Далее нужно поменять параметры EnablePrefetcher и EnableSuperfetcher на значение (ноль).

    Возможные режимы Superfetch: 0 — отключить, 3 — включить, 1 — кэшировать только системные службы, 2 — кэшировать только программы.

  4. Чтобы внесенные изменения заработали, перезагрузите компьютер!

Напоминаем, что указанный функционал уже реализован в утилите Superfetch.exe для быстрого вненсения изменений настройки системы Windows.

Итог. Отключение Superfetch можно назвать обязательным требованием для современных сборок на базе ОС Windows. Это однозначный вердикт опытных юзеров и профессионалов. Самый простой и быстрый вариант – скачать утилиту Superfetch.exe.

Решайте проблемы мудро и не зависайте!

Версия 2.03, Файл: superfetch.exe проверен на вирусы (см. отчет на Virustotal), размер: 0.4 Мб. Обновлено: 24.10.2018

Если после отключения Superfetch — проблема осталась,рекомендуем <font>установить</font> Антивирус ESET NOD32 для проверки на вирусы.

Это официальная, не пиратская версия Антивируса, где бесплатный ключ выдается во время установки. Подробнее…

Ссылка на дистрибутив с официального сайта esetnod32.ru: http://aries.esetnod32.ru/dist/hod32

^ Наверх

160610221247.jpgПривет пипл Служба SysMain это интересная служба, с одной стороны она есть, а с другой ее нет, вот такой прикол. А все потому, что это SysMain это имя службы для программ всяких, ну или для программистов, а вот то имя которое для нас, то это SuperFetch. Поэтому SysMain и SuperFetch это одна и та же служба, хотя честно говоря мне казалось что SysMain это какая-то самая важная служба Windows судя по названию.

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

Служба кэширует файлы (но не блоки как Primocache) тех программ, которыми вы пользуетесь часто. Поверьте, что вникать в особые подробности работы этой технологии нет, это просто неинтересно. Также SuperFetch может предварительно загружать некоторые файлы или данные, которые могут вам понадобиться. Она это сама пытается понять что и когда вы используете, чтобы обеспечить быстрый доступ к этим данным. Все эти данные записываются в оперативную память, но она может быть быстро освобождена если этого требует ситуация. Так что тут все продумано

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

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

Итак, SysMain увидеть на вкладке Службы в диспетчере:

160610220223.jpg

Видите там есть цифра 856, это идентификатор процесса, по нему можно определить под каким процессом работает эта служба. Собственно вот на вкладке Процесс можно это и увидеть, что это один из процессов svchost.exe (у них одинаковые идентификаторы):

160610220355.jpg

Теперь откроем службы (в диспетчере на вкладке Службы есть кнопка), там нет такой службы как SysMain, но есть SuperFetch. Нажимаем два раза по службе:

160610220612.jpg

Появится вот такое окошко, вот тут и написано имя службы и отображаемое имя:

160610220703.jpg

Как отключить службу SuperFetch? Ну, это не сложно. В этом же окне вам нужно выбрать Тип запуска: Отключена, а потом нажать на кнопку Остановить:

160610220922.jpg

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

По поводу отключения. Лично мое мнение — служба действительно работает и помогает ускорение системы в целом, но не все это замечают, потому что уже по умолчанию служба SuperFetch включена. То есть это уже норма. А вот отключение ее, как раз таки приведет к снижению производительности файловой системы, программы могут медленнее запускать как и устанавливаться. Но тут такое дело, если у вас SSD, то и без SuperFetch у вас Windows будет работать достаточно быстро

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

Удачи вам

На главную!10.04.2016 «>Читать! —>

В интернетах бытует устойчивое мнение, что служба SysMain (ранее – SuperFetch) абсолютно не нужна в Windows 10, установленной на SSD. Якобы недалекие разработчики Microsoft не понимают, что префетчинг не дает никакого ускорения на твердотельном диске, и нам приходится учить глупую ОС новой реальности, отключая службу.

К сожалению, эти тезисы основаны на устаревшей информации и не учитывают изменений, произошедших в Windows 10. Отчасти в этом виновата Microsoft, ограничившая доступ к документации центром отзывов.

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

[+] Сегодня в программе

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

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

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

memory-compression01.png

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

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

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

В 2019 году эта экономия вызовет усмешку у многих владельцев SSD, особенно у неоднократно сменивших вполне рабочие диски на более емкие и производительные. Но шесть лет назад хватало людей, озабоченных смертью накопителя от исчерпания циклов перезаписи. Думаю, и сейчас они есть (число комментариев к мифам застыло на отметке 991 лишь потому, что я когда-то массово отключил обсуждение старых записей 🙂

Но сжатие памяти в любом случае внедрялось не для этого.

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

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

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

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

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

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

memory-compression02.png

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

memory-compression03.png

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

memory-compression04.png

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

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

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

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

В случае аномального поведения службы (например, высокой нагрузки на CPU или диск), можно попробовать определить, является ли причиной тот или иной компонент SysMain. Если у вас командлет Get-MMagent выдает картинку, отличную от приведенной выше, приведите службу в порядок. Вставьте код ниже в PowerShell от имени администратора и перезагрузитесь.

#если служба не запущена, запустить и установить автоматический тип запуска  if ((Get-Service sysmain).status -ne "Running") {  Start-Service sysmain  Set-Service sysmain -StartupType Automatic  }  #включить все компоненты службы  Enable-MMagent -MemoryCompression  Enable-MMagent -PageCombining  Enable-MMagent -ApplicationPreLaunch  Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters" -Name EnablePrefetcher -Value 3

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

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

Синтаксис командлетов PowerShell простой – в качестве параметра передается название компонента. Например, команды для отключения и включение сжатия памяти:

Disable-MMagent -MemoryCompression  Enable-MMagent -MemoryCompression

Префетчингом управляет параметр EnablePrefetcher в разделе реестра

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters

Его стандартное значение 3 включает префетчинг Windows и его API для сторонних приложений, 2 оставляет только API, а отключает полностью.

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

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

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

Используемые источники:

  • https://superfetch.ru/
  • http://virtmachine.ru/sysmain-chto-eto-za-sluzhba-i-kak-ee-otklyuchit.html
  • http://www.outsidethebox.ms/19318/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации