Монитор ресурсов память ожидание

В своей прошлой статье «Как использовать Монитор ресурсов Windows 7 для эффективной диагностики» я рассказал о возможностях Монитора ресурсов Windows 7 (Resource Monitor), объяснил, как с его помощью наблюдать за распределением системных ресурсов между процессами и службами, а также упомянул, что его можно использовать для решения конкретных задач — например, для анализа расходования памяти. Именно об этом и пойдет речь в данной статье.

Немного о памяти

Прежде чем приступать к анализу, коротко расскажу о том, как Microsoft Windows 7 управляет памятью. После этого вам будет проще понять, какая информация представлена в Мониторе ресурсов Windows 7.

Диспетчер памяти Windows 7 создает виртуальную систему памяти, которая состоит из доступной физической RAM и файла подкачки на жестком диске. Это позволяет операционной системе выделять блоки памяти фиксированной длины (страницы) с последовательными адресами в физической и виртуальной памяти.

Запуск Монитора ресурсов Windows 7

Чтобы запустить Монитор ресурсов Windows 7, откройте меню «Пуск» (Start), введите в строке поиска «Resmon.exe» и нажмите [Enter]. В открывшемся окне выберите вкладку «Память» (Memory, рис. A).

На вкладке «Память» есть таблица «Процессы» (Processes, рис. B), в которой перечислены все запущенные процессы, а сведения об используемой памяти разбиты на несколько категорий.

В колонке «Образ» (Image) указывается имя исполняемого файла процесса. Процессы, запущенные приложениями, узнать очень легко — например, процесс «notepad.exe» со всей очевидностью принадлежит Блокноту (Notepad). Процессы с именем «svchost.exe» представляют различные службы операционной системы. Название службы указывается в скобках рядом с именем процесса.

Графа «ИД процесса»

В колонке «ИД процесса» (PID) указывается номер процесса — уникальное сочетание цифр, позволяющее идентифицировать запущенный процесс.

В столбце «Завершено» (Commit) указывается объем виртуальной памяти в килобайтах, зарезервированный системой для данного процесса. Сюда входит и используемая физическая память, и сохраненные в файле подкачки страницы.

Графа «Рабочий набор»

В графе «Рабочий набор» (Working Set) указывается объем физической памяти в килобайтах, используемой процессом в данный момент времени. Рабочий набор складывается из общей и частной памяти.

В колонке «Общий» (Shareable) указан объем физической памяти в килобайтах, которую данный процесс использует совместно с другими. Использование одного сегмента памяти или страницы подкачки для родственных процессов позволяет сэкономить место в памяти. При этом физически сохраняется только одна копия страницы, которая затем сопоставляется с виртуальным адресным пространством других процессов, которые к ней обращаются. Например, все процессы, инициированные системными библиотеками DLL — Ntdll, Kernel32, Gdi32 и User32 — используют общую память.

В столбце «Частный» (Private) указывается объем физической памяти в килобайтах, используемой исключительно данным процессом. Именно это значение позволяет определить, сколько памяти нужно тому или иному приложению для работы.

Графа «Ошибок отсутствия страницы в памяти/сек.»

В графе «Ошибок отсутствия страницы в памяти/сек.» (Hard Faults/sec) указано среднее за последнюю минуту количество ошибок отсутствия страницы в памяти в секунду. Если процесс пытается использовать больше физической памяти, чем доступно в данный момент времени, система записывает часть данных из памяти на диск — в файл подкачки. Последующее обращение к данным, сохраненным на диск, и называется ошибкой отсутствия страницы в памяти.

О чем говорят ошибки отсутствия страницы в памяти

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

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

Читайте также:  Можно ли перенести газовую плиту

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

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

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

Таблица «Физическая память»

В таблице «Процессы» приводятся детальные сведения о распределении памяти между отдельными процессами, а таблица «Физическая память» (Physical Memory) дает общую картину использования RAM. Ее ключевой компонент — уникальная гистограмма, показанная на рис. C.

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

Секция «Зарезервированное оборудование»

Слева расположена секция «Зарезервированное оборудование» (Hardware Reserved), обозначенная серым цветом: это память, выделенная на нужды подключенного оборудования, которую оно использует для взаимодействия с операционной системой. Зарезервированная для оборудования память заблокирована и недоступна диспетчеру памяти.

Обычно объем памяти, выделенной оборудованию, составляет от 10 до 70 Мбайт, однако этот показатель зависит от конкретной конфигурации системы и в некоторых случаях может достигать нескольких сотен мегабайт. К компонентам, влияющим на объем зарезервированной памяти, относятся:

• BIOS;
• компоненты материнской платы — например, усовершенствованный программируемый контроллер прерываний ввода/вывода (APIC);
• звуковые карты и другие устройства, осуществляющие ввод/вывод с отображением на память;
• шина PCI Express (PCIe);
• видеокарты;
• различные наборы микросхем;
• флеш-накопители.

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

Секция «Используется» (In Use, рис C), обозначенная зеленым цветом, представляет количество памяти, используемой системой, драйверами и запущенными процессами. Количество используемой памяти рассчитывается, как значение «Всего» (Total) за вычетом суммы показателей «Изменено» (Modified), «Ожидание» (Standby) и «Свободно» (Free). В свою очередь, значение «Всего» — это показатель «Установлено» (Installed RAM) за вычетом показателя «Зарезервированное оборудование».

Оранжевым цветом выделена секция «Изменено» (Modified), в которой представлена измененная, но не задействованная память. Фактически она не используется, но может быть в любой момент задействована, если снова понадобится. Если память не используется достаточно давно, данные переносятся в файл подкачки, а память переходит в категорию «Ожидание».

Секция «Ожидание», обозначенная синим цветом, представляет страницы памяти, удаленные из рабочих наборов, но по-прежнему с ними связанные. Другими словами, категория «Ожидание» — это фактически кэш. Страницам памяти в этой категории присваивается приоритет от 0 до 7 (максимум). Страницы, связанные с высокоприоритетными процессами, получают максимальный приоритет. Например, совместно используемые процессы обладают высоким приоритетом, поэтому связанным с ними страницам присваивается наивысший приоритет в категории «Ожидание».

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

Читайте также:  Машина для печати фотографий

В категории «Свободно», обозначенной голубым цветом, представлены страницы памяти, еще не выделенные ни одному процессу или освободившиеся после завершения процесса. В этой секции отображается как еще не задействованная, так и уже освобожденная память, но на самом деле, еще не задействованная память относится к другой категории — «Нулевые страницы» (Zero Page), которая так называется, потому что эти страницы инициализированы нулевым значением и готовы для использования.

О проблеме свободной памяти

Теперь, когда вы в общих чертах представляете, как работает диспетчер памяти, ненадолго остановимся на распространенном заблуждении, связанном с системой управления памятью в Windows 7. Как видно из рис. C, секция свободной памяти — одна из самых маленьких в гистограмме. Тем не менее, ошибочно на этом основании полагать, будто Windows 7 потребляет чересчур много памяти и что система не может нормально работать, если свободной памяти так мало.

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

Хотите понаблюдать систему управления памятью Windows 7 в действии? Перезагрузите компьютер и сразу же после запуска откройте Монитор ресурсов Windows 7. Перейдите на вкладку «Память» и обратите внимание на соотношение секций в гистограмме физической памяти.

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

Проделав этот экстремальный эксперимент, вы поймете, как Windows 7 управляет памятью на вашем конкретном компьютере, и сможете использовать Монитор ресурсов Windows 7 для наблюдения за распределением памяти в нормальных условиях повседневной работы.

А что думаете вы?

Нравится ли вам идея использовать Монитор ресурсов Windows 7 для наблюдения за распределением памяти? Поделитесь своим мнением в комментариях!

Здравствуйте! У мена такая проблема: на компьютере установлено 2 планки памяти DDR3, каждая по 2 Гб.
После загрузки системы (Windows 7 Ultimate x64), я открываю Монитор ресурсов. Сразу после включения в секции "Ожидание" показывает, что занято максимум 100 Мб оперативной памяти.
Если я открываю какую-нибудь программу, игру – то в этой же секции объём занимаемой памяти увеличивается до 1 гигабайта! Как я понял, Windows туда чего-то кэширует. Но почему этот кэш не удаляется после закрытия программы? И как вообще это кэшированине отключить? Оно мне не нужно совершенно!

В Windows потребление памяти происходит, когда приложение или системный процесс неправильно высвобождают блок оперативной памяти в диспетчере памяти операционной системы, когда он больше не нужен. В некоторых случаях программа может вернуть только часть использованного блока памяти, в других ничего не освобождается. Поскольку физическая ОЗУ является ограниченным ресурсом, важно убедиться, что у вас достаточно ресурсов для обработки рабочей нагрузки.

Хотя в Windows существует несколько типов утечек памяти, самой распространенной на данный момент является проблема с резервной памятью. Возвращаясь к Windows 7, проблема с резервной памятью все еще широко распространена в Windows 10. Как только ваша резервная память полностью израсходует вашу свободную память, ваша система может начать зависать, и даже может произойти сбой. Поскольку утечка памяти, как правило, является результатом программной ошибки или сбоя, важно поддерживать все драйверы в актуальном состоянии.

Как найти потребление памяти с помощью монитора ресурсов Windows

Resource Monitor – отличный встроенный инструмент, который даст вам более четкое представление о том, как Windows управляет ресурсами вашего компьютера (оперативной памятью, процессором, жесткими дисками и т. д). Если вы подозреваете, что приложение или процесс не освобождают вашу резервную память, Resource Monitor является отличной утилитой для начала наблюдения. Следующие шаги показывают, как просмотреть использование памяти вашей системой в Windows 10, 8 и 7.

Читайте также:  Маде ин prc какая страна

1. Нажмите клавишу «Windows + R», введите «resmon», затем выберите «OK».

2. Перейдите на вкладку «Память», затем выберите «Рабочий набор», чтобы изменить порядок в списке.

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

Диагностика утечки памяти с помощью Windows ‘RaMMap

RaMMap – это бесплатный инструмент от Microsoft, который в режиме реального времени показывает данные о том, как Windows управляет и распределяет вашу оперативную память. Как и в Resource Monitor, RaMMap отображает использование резервной памяти и работает в Windows 10, 8 и 7. Следующие шаги иллюстрируют, как загрузить и запустить RaMMap.

1. Перейдите на страницу Sysinternals RaMMap, затем выберите «Загрузить / Download RaMMap».

2. Перейдите в папку «Загрузки», скопируйте архив RaMMap в папку по вашему выбору и распакуйте его.

3. Щелкните правой кнопкой мыши файл приложения RaMMap и выберите «Запуск от имени администратора». Выберите «Да».

4. Ознакомьтесь с УСЛОВИЯМИ ЛИЦЕНЗИИ НА ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ SYSINTERNALS, затем выберите «Согласен».

5. Перейдите на вкладку «Использовать счетчики», затем проследите за тем, как увеличивается объем памяти в режиме ожидания.

6. Вы также можете более подробно рассмотреть каждый процесс, который использует вашу физическую память, на вкладке «Процессы».

Проверьте оперативную память с помощью средства диагностики памяти Windows

Запуск Windows Diagnostics – отличный способ тщательно проверить физическую память вашего компьютера на наличие ошибок.

1. Нажмите клавишу «Windows + R», введите «mdsched.exe», затем выберите «ОК».

2. Выберите «Перезагрузить сейчас» и проверьте наличие проблем (рекомендуется).

3. Тест начнется и может занять несколько часов. Следуйте инструкциям на экране после завершения теста.

Пустая резервная память в Windows с RaMMap

В дополнение к мониторингу использования памяти, RaMMap может также использоваться для очистки вашего резервного списка вручную.

1. Щелкните правой кнопкой мыши файл приложения RaMMap и выберите «Запуск от имени администратора».

2. Выберите «Очистить», затем «Очистить резервный список».

3. Ваша резервная память теперь должна быть значительно ниже.

Очистка резервной памяти с интеллектуальным очистителем резервных списков

Intelligent Standby List Cleaner (ISLC) – это бесплатный инструмент, предлагаемый Wagnardsoft, который автоматически очищает резервную память вашего компьютера на основе нескольких редактируемых условий.

1. Откройте веб-браузер, перейдите на официальную страницу форума приложения, выберите «Официальная загрузка здесь», затем выберите «Сохранить файл».

2. Перейдите в папку «Загрузки», щелкните правой кнопкой мыши архив ISLC 7z и выберите «Запуск от имени администратора». Выберите «Да», когда появится окно контроля учетных записей. Перейдите в папку, выберите «ОК», затем «Извлечь».

3. После извлечения щелкните правой кнопкой мыши ISLC Intelligent Standby List Cleaner и выберите «Запуск от имени администратора». Выберите «Да», когда появится диалоговое окно UAC.

4. Выберите «Очистить резервный список», чтобы вручную очистить резервную систему. Измените значения для: Размер списка не менее, а объем свободной памяти меньше, чем соответствует вашим требованиям.

Исправьте утечку памяти, обновив драйверы

Хотя существует несколько инструментов для проверки устаревших драйверов, лучше проверять их по отдельности, чтобы убедиться, что все обновлено.

1. Введите диспетчер устройств в поиске Windows, затем выберите «Открыть», как только результаты появятся.

2. Откройте раздел оборудования.

3. Щелкните правой кнопкой мыши устройство, затем выберите «Обновить драйвер».

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock detector