Технология SuperFetch. С чем едят и для чего она нужна?
Windows 7 включает в себя механизм кеширования файлов, который называется SuperFetch.Этот механизм используется для кешированя (сохранения) наиболее часто используемых файлов приложений в оперативную память, так что, в дальнейшем, эти приложения будут открываться все быстрее.
SuperFetch — это системный сервис, запускающийся внутри системного процесса svchost. Код его находится внутри DLL-ки %SystemRoot%\System32\Sysmain.dll. Этот сервис постоянно следит за тем, какие приложения запускает пользователь, и к каким исполняемым файлам и файлам данных они обращаются. Вначале SuperFetch отслеживает пользовательскую активность и определяет наиболее часто используемые приложения, для чего создаёт базу данных, которая постоянно обновляется по ходу работы пользователя. Вся эта информация сохраняется в файлах с расширением *.db в каталоге %SystemRoot%\Windows\Prefetch. Затем при каждом запуске системы SuperFetch, имея информацию о том с какими приложениями пользователь работает наиболее часто — заранее подгружает в память соответствующий код и данные и, когда пользователь запускает свое приложение — вся необходимая информация уже имеется в памяти, и запуск происходит на много быстрее — потому как нет необходимости считывать информацию с жесткого диска. Особенно это заметно на таких «тяжелых» приложениях, как семейство MS Office, функционал которых может быть «размазан» по десяткам и сотням exe-шников и dll-ок. SuperFetch настолько «умна», что может даже определять предпочтения пользователя в разные дни и время суток. Если какое либо приложение, завершает свою работу и освобождает память — то SuperFetch обращается к менеджеру памяти с просьбой подгрузить только что выгруженный код и данные. Процесс этот происходит с маленькой скоростью и с низшим приоритетом, поэтому работаSuperFetchне приводит к падению производительности. Если сравнительно долго работать с документом в программе Word. то всё это время приложение Word распознаётся службой SuperFetchкак программа с высоким приоритетом и, соответственно, определяется как главная. перестав работать с этой программой, Word перестаёт быть активным приложением и другие работающие в фоновом режиме задачи, включая "Дефрагментатор диска", понимают, что ресурсы системы свободны и начинают действовать. SuperFetch может обрабатывать режимы гибернации, «спящий режим» и смены пользователя. Если система уходит в гибернацию — то SuperFetchсохраняет в файл hiberfil.sys код и данные тех приложений, которые, по его мнению, скорее всего будут использоваться после выхода из гибернации. Таким образом, служба SuperFetch существенно увеличивает быстродействие системы и установленных программ, поэтому отключать этот компонент настоятельно не рекомендуется. SuperFetch появился еще в Windows Vista, но стоит отметить, что работа и использование КЭШа возможностью SuperFetch в Windows 7значительно отличаются оттого, что было в Vista. Так, под Vista кэширование приложений начинается сразу после загрузки операционной системы. Как видно из графиков ниже, спустя уже три минуты после загрузки выделено уже около 1GB памяти. В тоже время в Windows 7 SuperFetchначинает работать через пять минут после загрузки и спустя 10 минут выделение памяти немногим более превышает 600MB. Тогда как в этой же точке Vista SuperFetch выделил уже более 1,5GB памяти.
Впрочем, даже с выключенным SuperFetch, Windows 7 требует меньше КЭШа. Для собственной работы она использует 333MB памяти, тогда как Vista без SuperFetch использует уже 519MB. Новая реализацияSuperFetch под Windows 7 положительно сказывается и на производительности. Очевидно, что Windows 7 требует меньшего количества ресурсов и использует значительной меньший кэш, чем Vista. Так же SuperFetchстартует гораздо позже, поэтому жесткий диск не занимается сразу после загрузки операционной системы, а свободен для запуска пользовательских задач. Это означает, что вам не приходится дожидаться момента, когда операционная система монополизирует системные ресурсы под кэширующие задачи. Говоря простыми словами, SuperFetchпытается закачать данные приложений с медленного жёсткого диска в оперативную память. Служба использует всю доступную память, чтобы создать рабочую среду, которая позволит запускать приложения практически мгновенно. Но, конечно,SuperFetch требует немалый объём памяти. Если у вас установлено 512 Мбайт, то служба не будет работать эффективно, поскольку Windows и 2-3 приложения уже "съедят" всю доступную память. И для кэшированных данных памяти просто не останется. Если же вы не работаете с несколькими приложениями одновременно, то SuperFetch положительно проявит себя уже при 1 Гбайт памяти. Но, объём ОЗУ 2 Гбайт и более отнюдь не повредит.
Популярное: Почему стероиды повышают давление?: Основных причин три... Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (425)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |