|
||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Контроль использования памяти в Windows
Самый простой способ узнать, сколько оперативной памяти используется в данный момент времени — открыть Диспетчер задач (Task Manager), нажав [Ctrl]+[Shift]+[Esc], и перейти на вкладку «Быстродействие» (Performance) (рис.3.8). Подробное описание информации вкладки «Быстродействие» для Windows XP представлено в табл. 3.1.
Таблица 3.1. Расшифровка данных Диспетчера задач
Вкладка «Быстродействие» для Windows 7 имеет значимые нововведения по сравнению с соответствующей вкладкой Диспетчером задач Windows XP. Число в графе «Всего» (Total) раздела «Физическая память» (Physical Memory) указывает на общий объем оперативной памяти для данной системы. В графе «Кэшировано» (Cached) указано количество физической памяти, которая недавно использовалась системными ресурсами. Она остается в кэше на случай, если снова понадобится системе, но доступна для других процессов. В новой графе «Доступно» (Available) указывается количество неиспользуемой в данный момент физической памяти, а в графе «Свободно» (Free) — количество памяти, которая используется кэшем, но не содержит полезной информации. В разделе «Память ядра» (Kernel Memory) содержатся две графы — «Выгружаемая» (Paged) и «Невыгружаемая» (Nonpaged). В сумме они указывают, сколько памяти использует ядро. Выгружаемая — это виртуальная память, а невыгружаемая — физическая. В разделе «Система» (System) появились графы «Дескрипторов» (Handles) и «Потоков» (Threads), связанные с составными компонентами процессов. В графе «Дескрипторов» указывается количество идентификаторов объектов (дескрипторов), которые используются запущенными в данный момент процессами. В графе «Потоков» указано число подпроцессов, запущенных в рамках более крупных процессов. Цифра в графе «Процессов» (Processes), естественно, указывает на общее количество запущенных процессов, которые можно увидеть на вкладке «Процессы». В графе «Время работы» (Up Time) указано, сколько времени прошло с последнего запуска компьютера. В графе «Выделено» (Commit) содержится информация о файле подкачки. Первая цифра указывает на общий объем используемой в данный момент физической и виртуальной памяти, а вторая — на общий объем памяти для данного компьютера в принципе. Еще более подробную информацию можно получить, нажав кнопку «Монитор ресурсов» и выбрав вкладку «Память» (рис. 3.9).
Рис. 3.9. Вкладка «Память» окна монитора ресурсов Windows 7
На вкладке «Память» есть таблица «Процессы», в которой перечислены все запущенные процессы, а сведения об используемой памяти для каждого процесса разбиты на несколько категорий (рис.3.10). Рис. 3.10. Таблица «Процессы» В колонке «Образ» указывается имя исполняемого файла процесса. Процессы, запущенные приложениями, узнать очень легко — например, процесс «Winword.exe» со всей очевидностью принадлежит текстовому редактору Word. Процессы с именем «svchost.exe» представляют различные службы операционной системы. Название службы указывается в скобках рядом с именем процесса. В колонке «ИД процесса» указывается номер процесса — уникальное сочетание цифр, позволяющее идентифицировать запущенный процесс. В столбце «Завершено» указывается объем виртуальной памяти в килобайтах, зарезервированный системой для данного процесса. Сюда входит и используемая физическая память, и сохраненные в файле подкачки страницы. В графе «Рабочий набор» указывается объем физической памяти в килобайтах, используемой процессом в данный момент времени. Рабочий набор складывается из общей и частной памяти. В колонке «Общий» указан объем физической памяти в килобайтах, которую данный процесс использует совместно с другими. Использование одного сегмента памяти или страницы подкачки для родственных процессов позволяет сэкономить место в памяти. При этом физически сохраняется только одна копия страницы, которая затем сопоставляется с виртуальным адресным пространством других процессов, которые к ней обращаются. Например, все процессы, инициированные системными библиотеками DLL — Ntdll, Kernel32, Gdi32 и User32 — используют общую память. В столбце «Частный» указывается объем физической памяти в килобайтах, используемой исключительно данным процессом. Именно это значение позволяет определить, сколько памяти нужно тому или иному приложению для работы. В графе «Ошибок отсутствия страницы в памяти/сек.» указано среднее за последнюю минуту количество ошибок отсутствия страницы в памяти в секунду. Если процесс пытается использовать больше физической памяти, чем доступно в данный момент времени, система записывает часть данных из памяти на диск — в файл подкачки. Последующее обращение к данным, сохраненным на диск, и называется ошибкой отсутствия страницы в памяти. При запуске приложений и работе с файлами диспетчер памяти отслеживает объем рабочего набора для каждого процесса и фиксирует запросы на дополнительные ресурсы памяти. По мере увеличения рабочего набора процесса, диспетчер соотносит эти запросы с потребностями ядра и других процессов. Если доступного адресного пространства недостаточно, диспетчер уменьшает объем рабочего набора, сохраняя данные из памяти на диск. В дальнейшем при чтении этих данных с диска возникает ошибка отсутствия страницы в памяти. Это вполне нормально, но если ошибки происходят одновременно для разных процессов, системе требуется дополнительное время для чтения данных с диска. Слишком частые ошибки отсутствия страницы в памяти, соответственно, снижают быстродействие системы. Это проявляется в неожиданном замедлении работы всех приложений, которое затем также неожиданно прекращается. Замедление связано с активным перераспределением данных между физической памятью и подкачкой. Отсюда следует вывод: если ошибки отсутствия страницы в памяти для того или иного процесса происходят слишком часто и притом регулярно, компьютеру не хватает физической памяти. Чтобы было удобнее наблюдать за процессами, вызывающими частые ошибки отсутствия страницы в памяти, можно отметить их флажками. При этом выбранные процессы переместятся наверх списка, а в графике ошибок отсутствия страницы в памяти будут представлены оранжевой кривой. Стоит учитывать, что распределение памяти зависит от целого ряда других факторов, и мониторинг ошибок отсутствия страницы в памяти — не лучший и не единственный способ выявления проблем. Тем не менее, он может послужить неплохой отправной точкой для наблюдения. В таблице «Процессы» приводятся детальные сведения о распределении памяти между отдельными процессами, а таблица «Физическая память» дает общую картину использования RAM. Ее ключевой компонент — уникальная гистограмма, показанная на рис. 3.11.
Каждая секция гистограммы обозначена собственным цветом и представляет определенную группу страниц памяти. По мере использования системы, диспетчер памяти в фоновом режиме перемещает данные между этими группами, поддерживая тонкий баланс между физической и виртуальной памятью для обеспечения эффективной работы всех приложений. Рассмотрим гистограмму поподробнее. Слева расположена секция «Зарезервированное оборудование», обозначенная серым цветом: это память, выделенная на нужды подключенного оборудования, которую оно использует для взаимодействия с операционной системой. Зарезервированная для оборудования память заблокирована и недоступна диспетчеру памяти. Обычно объем памяти, выделенной оборудованию, составляет от 10 до 70 Мбайт, однако этот показатель зависит от конкретной конфигурации системы и в некоторых случаях может достигать нескольких сотен мегабайт. К компонентам, влияющим на объем зарезервированной памяти, относятся: • BIOS; • компоненты материнской платы — например, усовершенствованный программируемый контроллер прерываний ввода/вывода (APIC); • звуковые карты и другие устройства, осуществляющие ввод/вывод с отображением на память; • шина PCI Express (PCIe); • видеокарты; • различные наборы микросхем; • флеш-накопители.
Секция «Используется», обозначенная зеленым цветом, представляет количество памяти, используемой системой, драйверами и запущенными процессами. Количество используемой памяти рассчитывается, как значение «Всего» за вычетом суммы показателей «Изменено», «Ожидание» и «Свободно». В свою очередь, значение «Всего» — это показатель «Установлено» за вычетом показателя «Зарезервированное оборудование». Оранжевым цветом выделена секция «Изменено», в которой представлена измененная, но не задействованная память. Фактически она не используется, но может быть в любой момент задействована, если снова понадобится. Если память не используется достаточно давно, данные переносятся в файл подкачки, а память переходит в категорию «Ожидание». Секция «Ожидание», обозначенная синим цветом, представляет страницы памяти, удаленные из рабочих наборов, но по-прежнему с ними связанные. Другими словами, категория «Ожидание» — это фактически кэш. Страницам памяти в этой категории присваивается приоритет от 0 до 7 (максимум). Страницы, связанные с высокоприоритетными процессами, получают максимальный приоритет. Например, совместно используемые процессы обладают высоким приоритетом, поэтому связанным с ними страницам присваивается наивысший приоритет в категории «Ожидание». Если процессу требуются данные с ожидающей страницы, диспетчер памяти сразу же возвращает эту страницу в рабочий набор. Тем не менее, все страницы в категории «Ожидание» доступны для записи данных от других процессов. Когда процессу требуется дополнительная память, а свободной памяти недостаточно, диспетчер памяти выбирает ожидающую страницу с наименьшим приоритетом, инициализирует ее и выделяет запросившему процессу. В категории «Свободно», обозначенной голубым цветом, представлены страницы памяти, еще не выделенные ни одному процессу или освободившиеся после завершения процесса. В этой секции отображается как еще не задействованная, так и уже освобожденная память, но на самом деле, еще не задействованная память относится к другой категории — «Нулевые страницы», которая так называется, потому что эти страницы инициализированы нулевым значением и готовы для использования. С системой управления памятью в Windows 7 связано одно весьма распространенное заблуждение. Как видно из рис. 3.11, секция свободной памяти — одна из самых маленьких в гистограмме. Тем не менее, ошибочно на этом основании полагать, будто Windows 7 потребляет чересчур много памяти и что система не может нормально работать, если свободной памяти так мало. На самом деле, все совсем наоборот. В контексте принятого в Windows 7 подхода к управлению памятью, свободная память бесполезна. Чем больше памяти задействовано, тем лучше!!! Заполняя память до максимума и постоянно перемещая страницы из одной категории в другую с использованием системы приоритетов, Windows 7 повышает эффективность работы и предотвращает попадание данных в файл подкачки, не давая ошибкам отсутствия страницы в памяти замедлить быстродействие.
Порядок выполнения работы
2. Перейдите на вкладку «Память» и обратите внимание на соотношение секций в гистограмме физической памяти. 3. Начните запускать приложения. По мере запуска следите за изменением гистограммы. Запустив как можно больше приложений, начните закрывать их по одному и наблюдайте, как изменяется соотношение секций в гистограмме физической памяти. РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.007 сек.) |