Показать полную графическую версию : [решено] Файл подкачки (все вопросы)
откройте на своем компике RamMap »
Runs on:
Client: Windows Vista and higher.
Конфигурация:
ОС: Windows XP Prof. x64 »
Как видите, не могу.
Как видите, не могу. »
как-то не глянул ваш конфиг. В 5 версии ядра, конечно, цифры кешированных данных будут на порядок меньше, т.к. нет суперфетча, который принудительно загружает файлы, расширяя Standby список. И счетчики, которые хранят размер страничных списков, не являются публичными. И посмотреть Standby и Modified списки помоему можно только через отладчик, если не ошибаюсь. Ну да ладно.
вот сервер 2003 запущенный на виртуальной машине с 512Мб озу. Только Stanby список здесь показан общий, сюда входят не только MMF файлы, но и копии данных в страничном файле, как приватные так и общие.
http://i01.overclockers.ru/exbzspazydk6h67iunvzcjg14wunzqlr/vr4oxanqbtoipzby.jpg
В 5 версии ядра, конечно, цифры кешированных данных будут на порядок меньше, т.к. нет суперфетча, который принудительно загружает файлы, расширяя Standby список. »
Если долго и интенсивно работать, то кеш в памяти ровно так же занимает всю свободную оперативную, как в этих 6.0 и далее.
Сужу правда по стандартному диспетчеру задач, когда "Системный кэш" был больше, чем "Доступно". Правда меня смущает дикая разница в показаниях диспетчера задач и Process Explorer.
вот сервер 2003 запущенный на виртуальной машине с 512Мб озу. »
Уверены? Ибо:
Client: Windows Vista and higher.
Server: Windows Server 2008 and higher.
Если можно запустить на 2003 сервере, то можно и на ХР х64, ядро то одно. Или это другая утилита?
Если долго и интенсивно работать, то кеш в памяти ровно так же занимает всю свободную оперативную, как в этих 6.0 и далее »
Это уже чуть другой вопрос, не об отношении модифицированных данных к немодифицированным и кстати я не дорассказал почему отношение именно такое, т.к. тема сложна, для многих не является очевидным. Что касается нового вопроса, то вы не поняли сути механизма упреждающего кеширования. Когда вы долго и интенсивно работаете, каждое очередное обращение к новым данным, требует ожидания чтения с диска и только после первого доступа данные будут кешированы. При упреждающем кешировании, большая вероятность, что при обращение в какой-то момент времени к новым даным, они уже будут в озу, т.к. суперфетч их загрузил.
Сужу правда по стандартному диспетчеру задач, когда "Системный кэш" был больше, чем "Доступно". Правда меня смущает дикая разница в показаниях диспетчера задач и Process Explorer »
о каких цифрах речь, покажите, я поясню. Они скорее всего показывают разные счетчики.
Уверены? »
это данные через отладчик взяты. RamMap, да, действительно не работает на версиях меньше 6.
При упреждающем кешировании, большая вероятность, что при обращение в какой-то момент времени к новым даным, они уже будут в озу, т.к. суперфетч их загрузил. »
При долгой работе с одними данными они всё равно будут в кэше.
Я винду редко перезагружаю, пользуюсь ждущим режимом. Так что думаю всё давно осело в кэше.
Они скорее всего показывают разные счетчики. »
Это очевидно.
Вот скриншоты рядом:
http://imageshack.com/a/img10/641/nqxx.png
Просто в остальных показаниях они сходятся.
это данные через отладчик взяты. »
Нда, я поленюсь его ставить/ откапывать стандартный.
При долгой работе с одними данными они всё равно будут в кэше »
чтобы данные кешировались к ним достаточно обратиться один раз, механизм называется кеширование при чтении. Механизм упреждающего кеширования появился в виста на заре дешевой памяти и медленных еще HDD дисков, по сути является балансом. Если XP работает на какой-нить быстрой дисковой подсистеме, типа ссд, то да, упреждающее кеширование может не сыграть большого значения, если же на HDD, то лучше ядра с таковым механизмом. Возможно, что в какой-нибудь 10-й версии виндовс, когда ссд диски будут в 5 раз быстрей и в 10 раз дешевле, от этого упреждающего кеширования снова откажутся. У XP в любом случае, независимо от отсутсвия подобного механизма, не лучший memory managment.
Вот скриншоты рядом: »
Process Explorer показывает файловый кеш. Это те файлы, доступ к которым осуществляется функциями ReadFile\WriteFile, тобишь функциями файлового ввода\вывода, а кеширование и когерентность осуществляется компонентом исполнительной системы Cache Manager. Лень искать какие счетчики показывает диспетчер задач и что они включают, но судя по числу, это точно StandBy список + Modified список + возможно и файловый кеш, но не факт.
Нда, я поленюсь его ставить/ откапывать стандартный »
на работающей системе посмотреть все равно нельзя, нужна ядерная отладка, через компорт, пайп или сеть.
Если XP работает на какой-нить быстрой дисковой подсистеме, типа ссд »
Собственно у меня так.
У XP в любом случае, независимо от отсутсвия подобного механизма, не лучший memory managment. »
По мне так наоборот. На висте и далее потребление одних и тех же программ выросло, вроде как меньше совместно используемых модулей. Даже диспетчер по умолчанию в висте и далее показывает частный рабочий набор вместо полного, который был в ХР. Наверное чтобы не пугать народ объёмами расходуемой памяти ))
В восьмёрке обратно переделали, обобщим модули, сократив потребление.
В общем ничего однозначного, механизм передирают через версию.
И да, тесты показывают, что ХР чуточку, но быстрее. Хотя разница в пределах погрешности.
Даже диспетчер по умолчанию в висте и далее показывает частный рабочий набор вместо полного, который был в ХР. Наверное чтобы не пугать народ объёмами расходуемой памяти )) »
В виста можно выбрать и полный и частный насколько я помню. Какая по вашему между ними разница?
На висте и далее потребление одних и тех же программ выросло, вроде как меньше совместно используемых модулей »
В восьмёрке обратно переделали, обобщим модули, сократив потребление. »
о каких совместно используемых модулях речь?
По мне так наоборот. На висте и далее потребление одних и тех же программ выросло, вроде как меньше совместно используемых модулей »
Все, что я рассказываю, наверно, тяжело для понимания, стоит наверно подождать вопросов, чем грузить, извиняюсь.
В виста можно выбрать и полный и частный насколько я помню. »
Главное- что по умолчанию.
Какая по вашему между ними разница? »
Частный- без разделённых модулей, полный- вся используемая память.
о каких совместно используемых модулях речь? »
Дллки, может ещё что. Видел в презентациях от МС. Сначала гордились, что в висте их меньше, мол, безопаснее, потом в восьмёрке гордились противоположным, мол, снизили потребление памяти.
Все, что я рассказываю, наверно, тяжело для понимания, »
Да вроде нет. Что по вашему я не понял?
Здравствуйте не знал в какой теме задать вопрос
http://jpegshare.net/images/86/6a/866af98670cc6881debc1c32af2d5607.jpg (http://jpegshare.net/)
что значит кэшировано?
что такое доступно что такое свободно?
чем отличается доступно от свободно?
что значит 1,21 под столбиком?
что значит кэшировано?
что такое доступно что такое свободно?
чем отличается доступно от свободно? »
можете прочитать на предыдущей странице
что значит 1,21 под столбиком? »
Цифра под столбиком показывает занятую память + часть кешированной памяти, которая модифицирована. Кешированную память, которая модифицирована, нельзя передать в пользование, пока содержимое не будет переписано на диск. Если открыть Монитор Ресурсов, то значение под столбиком это сумма двух чисел в красном прямоугольнике. Оранжевый это кешированная память. Зеленый это доступная память. Синий это свободная память.
http://i01.overclockers.ru/exbzspazydk6h67iunvzcjg14wunzqlr/htbdirl8kimwfolk.jpg
Demetriadis
08-12-2013, 11:03
Здравствуйте!
Что такое выгружаемый и невыгружаемый пул? Для чего он нужен? Как работает?
Как он связан с файлом подкачки? Может ли он оптимизировать работу ФП?
Если не в тему, то прошу перенести.
Что такое выгружаемый и невыгружаемый пул? Для чего он нужен? Как работает? »
Пул это динамически выделяемая память, которой пользуется ядро и драйверы. Данные в выгружаемом пуле, могут сбрасываться в подкачку, в невыгружаемом всегда находятся в озу. Невыгружаемый пул существует потому, что драйверы и ядро могут работать на повышенных уровнях IRQL, на которых страничный сбой, который приведет к перепланированию потоков и в итоге к нарушнию логики работы системы, недопустим. Сложновато это для понимания конечно. Выделяется память из пула функциями ExAllocatePool, ExAllocatePoolWithTag и подобными.
Как он связан с файлом подкачки? Может ли он оптимизировать работу ФП? »
никак не связан, на работу фп никак не влияет.
Demetriadis
08-12-2013, 14:28
Данные в выгружаемом пуле, могут сбрасываться в подкачку, в невыгружаемом всегда находятся в озу. »
А для чего это все придумали? Если он никак не связан с ФП и ОЗУ.
Прямой связи между пулом и страничный файлом нет. Если страничный файл отсутствует, данные обоих пулов находятся в ОЗу. »
Как объяснить по простому я увы не знаю »
Очень жаль, что не знаете. Вопросов больше нет.
на которых страничный сбой, который приведет к перепланированию потоков и в итоге к нарушнию логики работы системы, недопустим. »
То есть ситуация, когда файл драйвера при обращении к нему не окажется в ОП, а загрузка с подкачки не сможет быть вызвана из- за этого низкого IRQL. Это я расшифровал с админского на человеческий в меру своих познаний.
А как с моим вопросом, потерявшимся на предыдущей странице?
Если он никак не связан с ФП и ОЗУ »
что вы понимаете под связью? есть 2 типа системных хранилищ, в которых размещаются данные, - ОЗу и ФП. Обрабатываются данные процессором только в ОЗУ. Назначение ФП, это хранить временно данные, которые в текущий момент не используются, тем самым освобождая ОЗУ для данных, которые обрабатываются. Прямой связи между пулом и страничный файлом нет. Если страничный файл отсутствует, данные обоих пулов находятся в ОЗу.
А для чего это все придумали? »
Для чего придумали невыгружаемый пул я объяснил в прошлом посте. Для того, чтобы это понять, нужно знать, что такое IRQL, что такое планирование потоков, что такое страничный сбой. Как объяснить по простому я увы не знаю :)
То есть ситуация, когда файл драйвера при обращении к нему не окажется в ОП, а загрузка с подкачки не сможет быть вызвана из- за этого низкого IRQL »
только высокого IRQL и файл драйвера не совсем корректно говорить, правильней будет обращение к странице или можно сказать просто обращение к памяти, но для простого пояснения да, сойдет. Многим известны ошибки, приводящие к останову системы, IRQL_NOT_LESS_OR_EQUAL и DRIVER_IRQL_NOT_LESS_OR_EQUAL. Вот они возникают в следствии того, что код режима ядра на повышеном IRQL обращается к памяти, в следствии которого происходит страничный фолт(PageFault). Страничный сбой это нормальное явление, этот механизм используется для подкачки данных, для отложенной передачи озу и т.д., но только не на IRQL выше 1. Если, например драйверу, нужна в этот момент память, для этого он использует неподкачиваемый пул.
А как с моим вопросом, потерявшимся на предыдущей странице? »
Исполняемые образы всегда разделяются, за исключением секций неинициализированных данных, они приватные. Так было начиная с NT4 вроде.
Частный- без разделённых модулей, полный- вся используемая память »
верно, только ошибка в том, что пишите модули. Это не обязательно модули. Расшареными могут быть образы, общая память, куча и даже приватные данные. Все это можно увидеть глянув в программу VmMap.
Дллки, может ещё что. Видел в презентациях от МС. Сначала гордились, что в висте их меньше, мол, безопаснее, потом в восьмёрке гордились противоположным, мол, снизили потребление памяти »
это и exe могут быть и вообще любой исполняемый файл, - exe, dll, ocx, scr и т.д. Не совсем понял про меньше разделяемых модулей, о чем речь. В чем безопасность заключается? Киньте презентации посмотреть.
Очень жаль, что не знаете. Вопросов больше нет. »
а где ж ваше спасибо делось, товарищ? :) вот умора.
Игорь Лейко
09-12-2013, 20:22
Если память находится во Free списках, она ни кем не выделена, какой нужно для этого термин использовать? »
Не отдана программе. Или не передана программе. Этап выделения памяти проходит намного раньше.
При отключённой подкачке она будет более интенсивна? Вы точно поняли, что я написал? »
Конечно, понял. Это Вы не поняли, что отключили только файл подкачки, а не саму подкачку. ;)
Не отдана программе. Или не передана программе »
да, так будет правильней говорить, спасибо.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC