![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 7 » Разное - Кэшируется вся память. Так ли это плохо? |
|
Разное - Кэшируется вся память. Так ли это плохо?
|
Новый участник Сообщения: 35 |
Службу SuperFetch отключил!
Сборка Windows x64 7600 Меня интересует на что тратится моя оперативка? Я посчитал (в момент когда почти ничего не запущено) суммарную загрузку оперативки путем суммирования памяти под процесы (tasklist.exe>tasks.txt) и получилось 393 Мб Но Диспетчер задач показывает что занято физической памяти 900 Мб Так вот чем заняты 507мб? Как узнать? Возможно ли освободить? В Win XP x64 такой аномалии не наблюдалось. PS Всего ОЗУ 8Гб и реплики типа: "тебе жалко что ли" прошу оставить при себе. Краткое объяснение Диспетчер памяти в Vista/7 работает иначе, чем в XP. В новых система Microsoft свободная память кэшируется, чтобы оптимизировать ее выдачу программам и процессам в нужный момент. ![]() В отсутствии свободной (Free) памяти нет никакой проблемы это нормально. Главное, что есть доступная память (Available), которая складывается из кэшированной и свободной. Другими словами, Available = Cached + Free. Дополнительная техническая информация по теме
|
|
Отправлено: 08:22, 11-09-2009 |
Ветеран Сообщения: 8502
|
Профиль | Отправить PM | Цитировать Новая утилита RAMMap от Mark Russinovich and Bryce Cogswell. Показывает подробную карту использования оперативной памяти и даже можно просмотреть список файлов, находящихся в файловом кэше в данный момент.
![]() |
------- Отправлено: 03:43, 21-05-2010 | #81 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 537
|
Профиль | Отправить PM | Цитировать Допустим, вы приобрели компьютер с 8 гигабайтами памяти. Но неужели то, что используется от силы 1 гигабайт, а вся остальная память простаивает — так уж хорошо? С выходом Windows Vista и Windows 7 подход к использованию оперативной памяти кардинально поменялся: теперь ОС пытается использовать всю имеющуюся память максимально эффективно. В частности, в Windows Vista и Windows 7 появилась фича с названием SuperFetch.
Что же такое SuperFetch? SuperFetch — это системный сервис, запускающийся внутри системного процесса svchost. Код его находится внутри DLL-ки %SystemRoot%\System32\Sysmain.dll. Этот сервис постоянно следит за тем, какие приложения запускает пользователь, и к каким исполняемым файлам и файлам данных они обращаются. Вся эта информация сохраняется в файлах с расширением *.db в каталоге %SystemRoot%\Prefetch. Для чего это все делается? А вот для чего: сервис SuperFetch, имея информацию о том, с какими приложениями пользователь работает наиболее часто — заранее подгружает в память соответствующий код и данные, и, когда пользователь запускает свое приложение — вся необходимая информация уже имеется в памяти, и запуск происходит намного быстрее — потому как нет необходимости считывать информацию с жесткого диска. Особенно это заметно на таких «тяжелых» приложениях, как семейство MS Office, функционал которых может быть «размазан» по десяткам и сотням exe-шников и dll-ок. SuperFetch настолько «умна», что может даже определять предпочтения пользователя в разные дни и время суток — например, то, что в рабочие дни он работает с Word и Excel, а по выходным — играется в Call of Duty, и, соответственно — подгружает в память нужные данные. Соответственно, эта область памяти помечается как «занятая», что и отображается в Task Manager`e, создавая впечатление «утечек памяти». Тем не менее, если вдруг запускается какое-то приложение, требующее выделения памяти — memory manager спокойно освобождает нужное пространство, а по завершении работы приложения память освобождается и данные подгружаются снова. Если же какое-нибудь приложение, к примеру, завершает свою работу и освобождает память — то SuperFetch обращается к менеджеру памяти с просьбой подгрузить только что выгруженный код и даннные. Процесс этот происходит с маленькой скоростью и с низшим (Very Low) приоритетом, поэтому работа SuperFetch не приводит к падению производительности. Если вы, к примеру, отойдете покурить, а в это время запустится фоновый процесс, которому необходима память (например — антивирусная проверка), то код и данные приложения, с которым вы работали — возможно будут выгружены из памяти. Благодаря же SuperFetch — к тому моменту, когда вы вернетесь с перекура — данные вашего активного приложения будут полностью или частично подгружены обратно в память. Более того, SuperFetch может обрабатывать режимы гибернации, «спящий режим» и смены пользователя (fast user switching). К примеру, если система уходит в гибернацию — то SuperFetch сохраняет в файл hiberfil.sys код и данные тех приложений, которые, по его мнению, скорее всего будут использоваться после выхода из гибернации. Как это «мнение» формируется? Очень просто — Большой БратSuperFetch смотрит за тобой, и за тем, что ты запускал после выхода из предыдущих гибернаций, и основываясь на этом — может предположить, что в следующий раз при выходе из гибернации ты наверняка запустишь «аську» и откроешь свой любимый браузер, чтобы почитать «хабрахабр». Ну а через часок-другой — откроешь Visual Studio, потому что проект горит, а сроки сдачи — «вчера». Можно понаблюдать за работой SuperFetch с помощью того же Task Manager`a: Если какое-то время поюзать Windows Vista/7, то можно заметить, что объем свободной памяти уменьшается. Это происходит из-за того, что SuperFetch стандартный систмный кэш Windows пытаются утилизировать доступную память для кэширования данных с диска. К примеру, если сразу после загрузки Windows запустить Task Manager — видно, что Free Memory — уменьшается, а Cached Memory — наоборот увеличивается. Если же запустить какую-нибудь «жадную до памяти» программу, или же просто запустить копирование большого файла — Free Memory увеличится и график «Physical Memory Usage» резко упадет, потому что система будет освобождать память для запущенного приложения, но потом начнет потихоньку расти — потому что собственно приложение начнет эту память забирать. Однако, со временем SuperFetch будет подгружать в память недавно выгруженные данные, поэтому значение Cached Memory будет расти, а Free Memory — уменьшаться. Надеюсь, было интересно. Спасибо за внимание. System32 По материалам статьи Марка Руссиновича «Inside the Windows Vista Kernel» http://habrahabr.ru/blogs/windows7/92165/ |
Последний раз редактировалось Vancouver, 31-05-2010 в 20:33. Отправлено: 20:22, 31-05-2010 | #82 |
Пользователь Сообщения: 66
|
Профиль | Отправить PM | Цитировать В мониторе ресурсов память окрашенная в синий цвет с пометкой "ожидание" - это и есть SuperFetch? Если да, то как этот SuperFetch выключить?
|
Отправлено: 15:07, 21-06-2010 | #83 |
Пользователь Сообщения: 76
|
Профиль | Отправить PM | Цитировать Burgunsky, выключить так
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters] "EnablePrefetcher"=dword:00000000 "EnableSuperfetch"=dword:00000000 |
Отправлено: 14:08, 22-06-2010 | #84 |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Вопрос простой.
Как полностью отключить кеширование ? Так, чтобы в диспетчере стояло заветное: кеширование-0 Мб ! В службах Superfecth-отключен. Сам параметр EnableSuperfetch в реестре встречается в трех разных ветках-все на нуль "EnableSuperfetch"=dword:00000000,"EnablePrefetcher"=dword:00000000 Из командной строки также отключено. Но все равно кеширует. Мне нужно полностью отключить это долбаное кеширование. (Потому что так.) Мож какие dll поудалять? Большое спасибо за ответ. |
Отправлено: 15:44, 10-09-2010 | #85 |
Ветеран Сообщения: 1958
|
Профиль | Отправить PM | Цитировать explorer isnt working,
Я конечно понимаю настойчивость, но вот вопрос а зачем, ну увидите вы что у вас из 8Gb, кеш - 0, занято 500MB, свободно 7,5GB а дальше, что? Или вам жалко "шуршание" винта которое, данный процесс происходит с "низким" приоритетом и в свободное от работы время (естественно системы). |
Отправлено: 15:59, 10-09-2010 | #86 |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать to Valeant
Зачем нужно отключать кеширование : ! 1 По "религиозным" соображениям. ! 2 Мне действительно жалко винт, и также жалко гонять оперативу на не новом компе (физическое старение элементной базы и т.п., особенно от дешёвых производителей оборудования, но это так, для аргументации ![]() ! 3 На 1 компе 4Gb оперативы.Во время игр появляется сообщение от нехватке памяти, хотя её более чем достаточно и файл подкачки есть. Эта проблема из-за этого грёбанного кеширования ( достаточно погуглить), и это не зависит от того , лицензия Win-ды или нет( за исключением кривой версии).Таже байда была у меня и на висте (которая вдруг крутанулась, плюнула через плечо и стала Win7). ! 4 На другом компе 1Gb оперативы.Сама Win7 сжирает 250Мб оперaтивы. Кеширует- 180-200 или чуть более того.При запуске на такой системе требовательных к памяти игр(здесь случай, когда другого варианта нет), все равно отбирает память, мегабайт 200, для кеширования.Для такого малого кол-ва оперативы это критично. Тему эту я перечитал, полезность службы фетча осознал,да, но мне не нужна эта хрень с кешированием. Valeant, вы знаете как отключить кеширование полностью, или нет ? Спасибо за ответ. |
Отправлено: 12:41, 12-09-2010 | #87 |
Забанен Сообщения: 1368
|
|
Последний раз редактировалось Игорь Лейко, 13-09-2010 в 18:18. Отправлено: 18:08, 13-09-2010 | #88 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать Цитата zet17:
У меня, при копировании больших файлов или большого количества файлов, система начинает ощутимо тормозить. В частности, курсор мыши начинает двигаться очень заметными рывками; ни одно приложение, в том числе и проводник, будет невозможно запустить, пока не завершится копирование. При этом в Диспетчере задач картина не меняется ни ДО, ни ПОСЛЕ. С чистой установкой ОС такой проблемы не наблюдается, но через некоторое время она проявляется. Windows 7 x86 Ultimate RU, 1Gb RAM, Celeron 2.4Ghz. |
|
Отправлено: 18:30, 13-09-2010 | #89 |
Ветеран Сообщения: 1958
|
Профиль | Отправить PM | Цитировать Цитата:
Цитата:
Отключайте данную службу в сервисах - SysMain - Superfetch - windows\system32\sysmain.dll Но прежде чем отключать если можно покажите ваш расклад по распределению памяти хотя бы одной игрой, в программе VmMap интересно посмотреть. VeRtex-2010, Посмотрите в мониторе ресурсов закладки диск и ЦПУ что на сколько загружено, а в ProccssExplorer - DPS и прерывание. А потом откуда и куда переписываете файлы и какие не архивы случаем? |
||
Отправлено: 18:39, 13-09-2010 | #90 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Я так понял это проблема с видеокартой | ECTb 3DECb KTO | Видеокарты | 8 | 07-11-2009 16:24 | |
[решено] Почему видна не вся память? | silalex | Материнские платы и память | 2 | 26-04-2009 20:44 | |
Интернет - Скажите, так ли это??? | aval12 | Microsoft Windows Vista | 2 | 12-03-2009 14:46 | |
Кэщируется вся память | ___Андрей | Материнские платы и память | 5 | 23-11-2008 23:29 | |
много окон это плохо :) | oIo_DeN_oIo | Microsoft Windows 2000/XP | 4 | 14-10-2005 21:34 |
|