Научные разработки в области компьютерных технологий не стоят на месте. Операционная система Windows 7 позволила реализовать уникальнейшую технологию SuperFetch (в диспетчере задач значится в качестве процесса sysmain). Чтобы понять смысл и разобраться в функциях этой службы, нужно вспомнить другую уникальную технологию Prefetcher в Windows Vista. Когда происходит запуск любой программы, то ее конфигурационные файлы и компоненты первоначально считываются с жесткого диска, и уже затем идет их загрузка в режиме хоста в оперативную память. Когда приложение завершится при его повторном открытии, выполнится тот же процесс. Для того чтобы ускорить доступ к программам и, как следствие, оптимизировать работу системных процессов, и была создана и внедрена технология SuperFetch.

Интеллектуальная система SuperFetch: общие понятия

С помощью технологии superfetch происходит отслеживание наиболее востребованных программ, которыми пользуется юзер, и последующее помещение их в оперативную память для быстрого нахождения. Таким образом, запуск той или иной программы происходит гораздо быстрее за счет того, что данные уже находятся в оперативной памяти, из-за чего не тратится дополнительное время на считывание их с винчестера. Если взглянуть на историю создания технологии, то первоначально ее применили в windows xp, а далее она была продолжена в версии Vista и называлась Prefetcher. Ее задача заключалась в оптимизации загрузок системных компонентов и модулей запускаемых приложений перед непосредственным стартом.

SuperFetch сегодня очень востребован

Технологию потому и назвали «Предварительная выборка» или prefetcher (superprefetch). Эта служба имела ощутимые недостатки. Она позволяла загружать в оперативную память ограниченное количество программ, а когда какое-то приложение переставало часто использоваться, то его данные выбрасывались заново на винчестер в файл подкачки. Но впоследствии perfect претерпела серьезные изменения. 

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

Параметры службы и управление ими

Для того чтобы включить эту службу, лучше всего использовать системный реестр. В меню «Выполнить» (Win + R) командой regedit вызывается редактор. В системном разделе, используя ветку HKLM, требуется найти директорию PrefetchParameters. Нужны два ключа EnablePrefetcher и EnableSuperFetch. Если ключа EnableSuperFetch нет, то его нужно создать (параметр DWORD) и присвоить ему соответствующее имя. Для удобства можно каждому ключу ввести четыре значения:

- 0 - полное отключение;

- 1 - оптимизация только запускаемых программ;

- 2 - оптимизация только запуска системных компонентов;

- 3 - сбалансированное ускорение приложение и системы.

SuperFetch не стоит отключать без реальной необходимости

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

Недочеты службы SuperFetch

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

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

SuperFetch: все "за" и "против"

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

Отключение SuperFetch: все «за» и «против»

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

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

- маленький объем оперативной памяти не позволяет беспроблемное использование службы;

- достаточный ее объем рекомендует «Суперфетч» активировать.

SuperFetch нужен для ускорения работы операционной системы

Таким образом, если объем оперативной памяти не превышает 1 Гб, а загрузка памяти может достигнуть 600 Мб, не говоря о дополнительной виртуальной памяти и файле подкачки, то возникает ситуация с ограниченной функциональность ОЗУ. Но это конечно в случае, если компьютерная система старого поколения (используется readyboost). В современных же системах даже при условии, когда используется минимальная конфигурация, оснастка изначально подразумевает большие объемы оперативной памяти, составляющие от 3 Гб. В этом случае, конечно же, использование службы SuperFetch оправдано. Можно сравнить работу компьютера в различных режимах: с использованием SuperFetch и при ее отключении. Некоторые пользователи отмечают, что в данном случае не увидели особой разницы.

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