• Играет ли папка Prefetch какую-то роль в оптимизации работы Windows и приложений. Для чего нужна папка Prefetch и Temp в Windows XP? Можно ли удалить из них зараженные вирусами файлы

    В Windows XP ключ /prefetch:1 по умолчанию добавляется к адресу файла в свойствах иконки запуска Windows Media Player. Что такое prefetch? У слова prefetch перевод на русский язык звучит как "предварительная выборка".


    Смыслом этой функции является с Windows XP в целом. Она создает файлы в папке prefetch, содержащие информацию о путях к этим программам на жестком диске.


    На сайтах в топе Яндекса по запросу "windows prefetch" можно найти некоторую дезинформацию об этой функции в Windows XP. В частности, на сайтах netler и izcity авторы поддерживают мифы о том, что для ускорения загрузки программ нужно добавлять в адресные строки их ярлыков ключ /prefetch: 1 , и что для ускорения загрузки системы нужно периодически удалять все файлы формата pf из папки prefetch .

    В Windows XP папка Prefetch расположена обычно по адресу C:\windows\prefetch. В ней находятся файлы Prefetch с расширением *.pf - это списки файлов для загрузки, так называемые, хэш файлы. Их имена генерируются при хэшировании EXE файлов после загрузки. Каждый раз, когда Вы запускаете EXE файлы, происходит их хэширование и проверка, есть ли соответствующие им.pf файлы в папке Prefetch , и если да, то загружаются эти файлы. Если соответствующие файлы prefetch не существуют, система отслеживает, какие файлы задействует при запуске EXE программа, создает этот.pf файл и сохраняет в него пути к этим файлам.

    • Так что, во-первых, это не очень хорошая идея - очищать папку prefetch, как предлагают некоторые компьютерные сайты. Система просто создаст все эти файлы заново, в любом случае, если, конечно Вы не догадаетесь, как отключить prefetch.
    • Во-вторых, Windows автоматически удаляет файлы prefetch из этой папки, если их становится больше 128 штук. По этому, очистив эту папку, Вы не только не ускорите загрузку программ, но и временно ухудшите производительность Вашего компьютера.

    Следующий момент...

    Некоторые "специалисты" стали добавлять ключ /prefetch:1 при запуске программ. Многие заметили, что в автоматически созданных ярлыках для Win Media Player присутствует этот ключ, и его значение варьируется в зависимости от выполняемых программой функций. Например, ярлыку файла WMV, по которому Вы дважды щелкаете для просмотра видео, присваивается один параметр ключа prefetch, ярлыку автозапуска для воспроизведения или копирования музыки, которые появляются, когда Вы вставляете аудио компакт-диск - другие параметры.

    Некоторые специалисты предположили, что ключ /prefetch: 1 включает процесс предварительной выборки . И они сразу стали добавлять его к каждому исполняемому файлу и рекомендовать делать это другим на разных сайтах и форумах. И таким образом сформировался этот миф. Другие специалисты написали на своих сайтах, что это полное фуфло, и выдвинули теорию о том, что этот ключ специфичен только для WM Player, увидев ссылки на файлы prefetch в подсистеме драйверов Windows.

    Вобщем, ни те ни другие нифига не угадали.

    Операционная система смотрит на параметр /prefetch:#, когда создает процесс и делает она это только с одной единственной целью. Она добавляет порядковый номер к хэшу . Зачем?

    WMP имеет много разных функций. Библиотеки и код, которые он задействует при воспроизведении WMV, сильно отличаются от библиотек, участвующих в воспроизведении DVD, копировании компакт-диска, прослушивании Shoutcast-потока или любой из функций Windows Media Player. Если бы для WMP был только один хэш, то предварительная выборка корректно работала бы только для одной из его функций. При считывании неверных данных из файла prefetch не было бы фатальной ошибки - файл.pf просто загрузился бы в память и не был использован. Тем не менее, это было бы контрпродуктивно.

    Параметр /prefetch:# с разными числами для каждой функции Windows Media Player позволяет для каждой функции создать свой отдельный хэш файл, и таким образом предварительная выборка выполняется правильно. Такие параметры prefetch характерны не только для WMP. То же самое делается для любого другого приложения.

    Параметр /prefetch: принимается во внимание, когда создается первый поток в процессе, но не удаляется функцией CreateProcess из командной строки, поэтому любое приложение, которое не вкуривает неизвестные параметры командной строки, не будет работать с ним. Вот почему так много людей, заметили, что, например, Kazaa и многие другие программы выдавали ошибки или просто отказывались запускаться c windows prefetch. А WMPlayer конечно знает, что ключ может быть указан в параметрах, и просто молча игнорирует его существование.

    Все что делает ключ /prefetch:# - изменяет хэш номер. Операционная система загружает программу с ним точно так же, как и без него, просто сохраняя данные о предварительной выборке в другой.pf файл .

    Удаление ненужных файлов

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

    Папки Temp расположены в двух местах: C:\Windows\Temp и C:\Documents and Settings\Имя_пользователя\LocalSettings\Temp. По умолчанию папка Local Settings является скрытой, поэтому, чтобы увидеть эту папку, вам придется включить соответствующую опцию. Теперь перейдите в эти папки и удалите все содержимое.

    Если вы прежде не открывали эти папки, то, вероятно, будете шокированы тем, что в них творится.

    Что такое папка Prefetch

    Папка Prefetch находится в системной папке Windows в ней содержится информация о часто открываемых программах для быстрого доступа к ним. Используется для ускорения загрузки операционной системы и запуска программ.
    При запуске компьютера Windows отслеживает процесс загрузки. После чего полученная информация сохраняется на жесткий диск в папке Prefetch. При следующем запуске эта информация применяется для ускорения загрузки операционной системы. Тоже самое происходит и при запуске любой программы.

    Очистка папки Prefetch

    Разработчики из Microsoft решили, что папки Temp занимают слишком маленький объем вашего дискового пространства, так почему бы не создать еще одну папку, выполняющую аналогичные действия? Большое спасибо! Нет, правда, спасибо.

    Вероятно, у нас очень мало папок, которые просто съедают свободное дисковое пространство. Теперь, кроме папки Temp, у нас есть замечательная папка Prefetch. Функции этой папки отличаются от функций, выполняемых папкой Temp, однако, как и в папке Temp, в ней может веками храниться мусор, если вы не удалите его вручную. Поэтому советую периодически очищать эту папку (C:\Windows\Prefetch). И не волнуйтесь, система от этого не пострадает. Любые удаленные файлы, которые необходимы Windows, будут автоматически воссозданы.

    Здравствуй, дорогой друг! Совсем недавно мы рассматривали тему про удаление временных папок. Там я рассказал про различные папки, в том числе и Temp, в которых со временем скапливается мусор. Эти мусорные файлы необходимо чистить. и опубликовал, но как оказалось не всё. Нашёл я папку интересную, которую многие видели, но боялись, в неё что-то удалить. Папка эта называется «Prefetch» и находится внутри папки Windows. Что за папка и зачем она нужна Вы узнаете ниже.

    Что такое Prefetch?

    Обратимся к глобальному хранилищу знаний — Википедии. Она гласит:

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

    Оказывается, эта система наблюдает за тем какие программы Вы наиболее часто используете и записывает их в специальную папку: C:\Windows\Prefetch

    Файлы там хранятся всякие разные с непонятными расширениями вроде этого.

    Ну вообщем загрузчик Windows анализируя эти записи, заранее загоняет ПО в оперативную память, чтобы затем ускорить ответ на Ваше обращение.

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

    Горячей комбинацией Win+R активируем окно ввода команд, и вводим regedit.

    В редакторе реестра ищем такую вот ветку:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management\PrefetchParameters

    В правом окне нам надо изменить параметр EnablePrefetcher .

    ПКМ выбираем «Изменить..».

    По умолчанию стоит тройка. «3» говорит, что запущены как системные процессы, так и разного рода приложения. Если поставить 2, то мы запустим только системные процессы. Если 1 – только приложения, а 0 – вообще отключим.

    Ставим двойку!

    Нажатием клавиши «Ок» подтверждаем изменения.

    Подведём итоги

    Вот такими нехитрыми манипуляциями, мы хоть на чуточку оптимизировали свой «Виндовс»!

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

    Prefetch: что за папка

    Рассмотрение вопроса начнем с подачи теоретического материала. При старте операционная система отслеживает процесс загрузки, сохраняя о нем все данные для ускорения последующего запуска в каталоге Prefetch. Что за папка перед нами?

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

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

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

    Папка Prefetch в Windows 7 и выше: стоит ли ее очищать

    Удаление данных из этого каталога никаких критических изменений в работе системы или установленных программ не вызовет.

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

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

    Управление содержимым каталога Prefetch

    Если уж кому-то не нужна эта служба, от нее можно избавиться. Для этого следует войти в редактор системного реестра (команда regedit в меню «Выполнить», вызываемом сочетанием Win + R).

    Здесь нужно выбрать ветку HKLM, а затем через системный каталог (SYSTEM) и настройки текущих параметров контроля (CurrentControlSet) спуститься до раздела инспектирования памяти, где и находится искомый каталог PrefetchParameters. В нем содержатся ключи формата 0x0000000z, где «z» может принимать четыре варианта значений:

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

    Те же настройки можно произвести и в редакторе групповых политик или в инструментарии администрирования компьютера.

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

    Ответы:

    Vladimir:
    В папке Temp хранятся временные файлы. Можно смело удалять оттуда. В папке Prefetch - не помню точно, что там хранится, но удалять оттуда файлы так же можно, проблем не будет.

    Leshiy:
    В папке Prefetch лежат программы, которые загружаются при запуске Виндовс, с целью быстрого запуска этих самых программ. Удалять не только можно, но и нужно, иначе их собирается слишком много и это замедляет запуск и работу самой винды. Смотри, что действительно часто используешь, а остальное - в корзину!

    Markiz:
    По поводу Prefetch вот, что нашел. В папке prefetch (.pf расширение) содержится инф. о часто открываемых прог. и сервисов, для более быстрой их последующей загрузки. Из неё можно всё удалить, система будет грузиться быстрее, а проги (в первый раз) медленнее. Потом снова образуются файлы. Можно чистить, даже нужно иногда.

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

    SHiKiGAMY:
    У меня такой папки уже нет. Сделал функцию \"don\"t prefetch\". Используйте специальные проги для удаления \"мусора\" из \"темп\"ов\" и префетча. Например Ace Utilites или WinXP Manager.

    Iwan:
    Windows XP по умолчанию создает папку %systemroot%\\prefetch. Используется она для ускорения запуска недавно использовавшихся программ, что очень тормозит загрузку системы. Если важнее скорость загрузки системы, выполните нижеизложенное. Чтобы отключить эту функцию: HKEY_LOCAL_MASHINE\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Memory Management\\PrefetchParameters сделаем параметр EnablePrefetcher равным 0.