Что такое старые prefetch данные

Что такое старые prefetch данные

Prefetcher — компонент операционной системы Microsoft Windows, ускоряющий процесс её начальной загрузки, а также сокращающий время запуска программ. Prefetcher впервые появился в операционной системе Windows XP. Начиная с Windows Vista, он был дополнен технологиями SuperFetch и ReadyBoost.

Содержание

Описание [ править | править код ]

Запуск Windows и приложений сопровождается чтением в память и обработкой огромного количества файлов. Зачастую один и тот же файл открывается по несколько раз для чтения различных сегментов. Такой нерациональный доступ к файлам занимает много времени. Гораздо эффективнее обращаться к каждому файлу только один раз, загружая информацию в оперативную память ещё до того, как она станет нужна программам. Prefetcher наблюдает за тем, какой код и данные (включая NTFS Master File Table) загружаются в процессе запуска операционной системы и приложений. Он накапливает эти сведения в файлах трассировки для оптимизации загрузки кода и данных при следующих запусках.

Prefetcher наблюдает за запуском каждого приложения в течение первых 10 секунд. Наблюдение за процессом загрузки системы ограничено по времени и прекращается в следующих случаях [1] :

  • по истечении 30 секунд с момента запуска пользовательской оболочки
  • по истечении 60 секунд с момента завершения инициализации всех служб
  • по истечении 120 секунд с момента начала загрузки системы

Файлы трассировки сохраняются в папке Prefetch корневого каталога Windows [2] (обычно C:WINDOWSPrefetch ). Загрузка операционной системы трассируется в файл NTOSBOOT-B00DFAAD.pf . Запуск программ трассируется в отдельные файлы, имена которых состоят из названия исполняемого файла запускаемой программы, дефиса, шестнадцатеричного хеша пути к исполняемому файлу и расширения «.pf» (например: EXPLORER.EXE-082F38A9.pf ). При запуске приложений, являющихся рабочей средой для других компонентов (например: DLLHOST.EXE , MMC.EXE , RUNDLL32.EXE ), в хеш также добавляется имя загружаемого модуля, в итоге для разных компонентов создаются разные файлы трассировки (например: MMC.EXE-0B0171A2.pf , MMC.EXE-393F4B82.pf ).

Важную роль в работе компонента Prefetcher играет служба «Планировщик заданий» (англ. Task Scheduler ). «Планировщик заданий» анализирует данные, поступающие от Prefetcher, и записывает файлы трассировки в папку %SystemRoot%Prefetch . Если служба не запущена, Prefetcher не будет работать правильно. «Планировщик заданий» также взаимодействует с программой дефрагментации диска Windows. Каждые три дня во время простоя компьютера в папке %SystemRoot%Prefetch создается файл Layout.ini , в котором сохраняется список файлов и папок, использовавшихся при загрузке операционной системы и запуске программ. Дефрагментатор диска использует информацию из файла Layout.ini для оптимального физического размещения этих файлов на диске.

Настройка [ править | править код ]

Параметры Prefetcher хранятся в системном реестре в разделе HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters [3] . Параметр EnablePrefetcher (DWORD) может принимать одно из следующих значений:

  • 0x00000000 — компонент отключен
  • 0x00000001 — ускорение запуска приложений
  • 0x00000002 — ускорение загрузки системы
  • 0x00000003 — ускорение запуска приложений и загрузки системы

Изменение параметра EnablePrefetcher вступает в действие немедленно.

Файл предварительной выборки системной, начальной загрузки расположен в каталоге %SystemRoot%Prefetch и путь к нему задан именно этим параметром.

Значение по умолчанию = Prefetch

Мифы [ править | править код ]

Существует несколько распространенных мифов о Prefetcher:

  • Добавление ключа «/prefetch:1» в строку запуска приложения ускоряет его загрузку. Этот миф основывается на том факте, что после установки операционной системы в строке запуска Windows Media Player изначально указан ключ «/prefetch:1». В реальности добавление этого ключа само по себе не дает никакого эффекта, а в некоторых случаях приложение может отказаться запускаться совсем [4] .
  • Удаление файлов из папки %SystemRoot%Prefetch ускоряет работу компьютера. Этот миф основывается на предположении, что в папке %SystemRoot%Prefetch скапливается слишком много файлов, поэтому Prefetcher начинает «тормозить» систему. В реальности очистка вышеуказанной папки приводит к замедлению работы компьютера до тех пор, пока трассировочные данные не будут снова накоплены [4] .
  • Со временем папка %SystemRoot%Prefetch начинает занимать много места на диске. В целях экономии дискового пространства максимальное количество трассировочных файлов ограничено 128 [4] . Очистка папки %SystemRoot%Prefetch не требуется, так как Prefetcher обслуживает себя автоматически без участия со стороны пользователя [2] .

Навигация

Официальный сайт Superfetch

Новости

22 октября, 2018
По просьбе пользователей, мы описали основные причины: Почему зависает или тормозит компьютер, и что с ним делать?

16 октября, 2018
Мы выпустили вторую версию программы superfetch.exe. Теперь можно отключить: SuperFetch, Prefetch, ReadyBoot, это возможно существенно ускорит скорость работы Вашего компьютера!

28 Сентября, 2018
Мы выпустили первую версию программы superfetch 1.00 для быстрого включения/отключения superfetch.

Ждем Ваших отзывов и предложений!

Что такое prefetch и почему его отключают?

Изначально служба prefetch разрабатывалась как отдельный компонент ОС Windows (начиная с ОС Windows XP) для ускорения запуска системы и приложений. Все это было в далеком 2001 году. Представляете конфигурацию компьютеров в те времена?

Теперь вернемся в наш 2018 год.

Проблема кэширования данных уже давно решена на аппаратном уровне и заложена в любой жесткий диск с магнитным накопителем. Где для кэширования данных есть собственная память, объем которой рассчитывается исходя из скорости вращения диска, чтобы соответсвовать максимальной пропускной способности для интерфейсов подключения (IDE, далее SATA и прочие).

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

Microsoft в принудительном порядке отключает prefetch на собственных планшетах линейки Surface.

Так как, это обусловлено экономией места на накопителях и увеличением производительности системы! Почему Microsoft не дает возможность отключать самостоятельно prefetch — загадка, скорей всего это делается в маркетинговых целях.

Увлекательный блог увлеченного айтишника

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

Папка Prefetch находится в папке Windows (обычно это C:WindowsPrefetch). Она используется как один из компонентов для загрузки операционной системы Windows, благодаря которому загрузка ОС ускоряется, а время, затрачиваемое на запуск программ, уменьшается. Сам компонент называется Prefetcher и впервые появился еще на Windows XP.

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

Параметры Prefetcher хранятся в системном реестре. Вы можете изменить параметры Prefetcher.

Нажмите на сочетание клавиш WIN+R. Появится окно «Выполнить», введите в него слово regedit и нажмите ОК. Так вы откроете редактор реестра.

Когда редактор будет открыт, пройдите по следующему пути: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters.

Выберите параметр EnablePrefetcher.

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

  • 0x00000000 — компонент отключен
  • 0x00000001 — ускорение запуска приложений
  • 0x00000002 — ускорение загрузки системы
  • 0x00000003 — ускорение запуска приложений и загрузки системы

Нужно вводить не указанный параметр, а только цифру на его конце, например, 0, 1, 2 или 3.

И будьте внимательны при работе с реестром. Если чего-то не понимаете, не меняйте ничего, поскольку одно неосторожное движение может привести к проблемам в работе операционной системы!

Можно ли удалить папку Prefetch?

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

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

Комментарии к записи “ Prefetch: что это за папка и можно ли ее удалить? ”

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

вот блин, а я где-то прочитал, типа удали и тебе будет хорошо

Есть ли возможность указать системе кешировать только часто используемое?
Сейчас нашел в prefetch «iexplore» с сегодняшней датой изменения. Пользовался им единственный раз в жизни, чтобы браузер скачать, а система его, оказывается, бережно кешировала, собака.
Имхо, стоит изредка удалять такой временный мусор. например, .tmp -файлы у меня никогда корректно не удалялись, выгребал мегабайты мусора руками.

полностью удалил, скорость добавилась

Спасибо за науку! Доброе дело делаете — людям помогаете. Здоровья вам и удачи по жизни!

Ссылка на основную публикацию
Что означает ошибка 110
Ошибка 110 в Android происходит главным образом при обновлении или установке приложений из Google Play. Случается это из-за несовместимости ОС:...
Что выбрать windows 7 или windows 10
Сегодня в нашем блоге «Чо?! Чо?!» я раскрою все преимущества и недостатки новой операционной системы для ноутбуков, сравнив ее с...
Что в китае дешевле чем в россии
Я экономлю тысячи рублей, покупая товары из Китая через интернет Сегодня я расскажу Вам о том, что выгодно покупать в...
Что означает ошибка 963
Ошибки в Google Play дело достаточно частое, это не удивительно, ведь Плей маркет – это один из крупнейших магазинов приложений....