- •Введение
- •Техническое описание задач.
- •Достоинства и недостатки операционной системы
- •Аппаратные требования
- •Устан6овка программного продукта
- •Актуальность темы
- •Технологическое описание
- •Повышение производительности
- •Поиск типичных узких мест
- •Отслеживание использования памяти
- •Как избежать перегрузки процессора
- •Повышение производительности виртуальной памяти
- •Программы и процессы
- •Управление дополнительными ресурсами процессора
- •Настройка автоматически выполняемых программ
- •Управление загружаемыми службами
- •Другие средства измерения производительности системы
- •Консоль Быстродействие
- •Отслеживание счетчиков с помощью Системного монитора
- •Добавление счетчиков
- •Изменение параметров вывода Диаграммы
- •Сохранение и загрузка настроек Системного монитора
- •Дополнительные возможности системы
- •Техника безопасности
- •Заключение
- •Список литературы
Отслеживание использования памяти
Самая частая причина замедления работы системы под управлением Windows — заполнение физической памяти. При этом Windows начинает так называемую «подкачку» (paging) — перемещение блоков кода и данных программ (каждый такой блок называется страницей — page) из физической памяти на жесткий диск. Обращение к файлу подкачки время от времени — нормальное явление, не ухудшающее производительность системы, но частые запросы данных из файла на диске могут заметно снизить общую скорость работы системы. Эта проблема становится особенно заметной при переключении между несколькими программами, активно использующими память, на компьютере, который не содержит достаточного количества физической памяти. В результате диск почти постоянно находится в работе, потому что система пытается «перекачать» данные с него в память и обратно.
Самый быстрый способ получить информацию об использовании памяти в данный момент — запустить Диспетчер задач Windows и взглянуть на строку состояния внизу любой вкладки. Статистика использования памяти приведена в правой части вкладки в виде двух чисел, а точнее дроби. Первое число (числитель) представляет собой текущий объем выделенной памяти — количество физической и виртуальной памяти, используемой всеми выполняемыми процессами. (Виртуальная память, собственно, и есть файл подкачки.) Знаменатель — общее количество доступной памяти (физической и виртуальной). Само по себе это число способно лишь предупредить о том, что память скоро закончится совсем, — другими словами, выделенная память примерно совпадает с доступной.
Для того чтобы узнать об использовании памяти подробнее, переключитесь на вкладку Быстродействие и взгляните на таблицы в нижней части диалогового окна. Учтите: числа и подписи к ним могут означать абсолютно не то, что подумали. Они способны ввести в заблуждение даже эксперта по Windows и запутать его, сделать неверные выводы. В таблице 2.1 рассказывается о том, как можно использовать эти данные для ответов на наиболее типичные вопросы об использовании памяти.
Таблица 2.1 - Расшифровка данных Диспетчера задач
Категория |
Значение |
Смысл |
1 |
2 |
3 |
Всего (Totals) |
Дескрипторов (Handles) |
Уникальные идентификаторы, позволяющие программам обращаться к системным ресурсам, таким как файлы, ключи реестра, шрифты и растровые изображения. Теоретически это значение может использоваться для выявления программ, не освобождающих системные ресурсы после завершения работы. На практике оно оказывается полезным в основном для разработчиков, использующих специализированные средства отладки для выявления утечек памяти в приложениях |
|
Потоков (Threads) |
Поток — объект внутри процесса, выполняющий инструкции программы. Многопоточные программы могут делать несколько операций одновременно. Как и предыдущее, это значение полезно в основном для разработчиков программ в процессе тестирования приложений |
|
Процессов (Processes)
|
Общее количество процессов (программ, подсистем и служб), инициированных всеми пользователями данного компьютера |
Выделение памяти (Commit Charge) |
Всего (Total) |
Общее количество физической и виртуальной памяти, занимаемой операционной системой и всеми программами в настоящий момент. Это значение также отображается в нижнем правом углу окна Диспетчера задач. Выделение памяти растет по мере открытия программ и файлов данных и должно уменьшаться при их закрытии |
|
Предел (Limit) |
Общее количество физической и виртуальной памяти, доступной операционной системе и всем приложениям, которые о тоже отображается в нижнем правом углу Диспетчера задач. Чтобы увеличить предельное значение, добавьте в компьютер оперативной памяти и/или увеличьте размер файла подкачки
|
|
|
Продолжение Таблицы 2.1 |
1 |
2 |
3 |
|
Пик (Peak)
|
Максимальное общее количество памяти, использовавшееся на протяжении текущего сеанса (в килобайтах). Если это значение часто оказывается близким или равным Пределу, в систему нужно нарастить память |
Физическая память (Physical memory) |
Всего (Total)
|
Полное количество физической памяти данного компьютера (в килобайтах). Поделите на 1024, чтобы перевести это значение в мегабайты
|
|
Доступно (Available)
|
Общий объем физической памяти (в килобайтах), который будет выделен выполняемым программам прежде, чем начнется обмен данными с файлом подкачки. Windows всегда старается зарезервировать некоторое количество памяти для новых приложений, даже если оно превышает количество установленной физической |
|
Системный кэш (System Cache) |
Общее количество физической памяти (в килобайтах), используемое для хранения часто вызываемых программ и данных. Windows пытается отвести под системный кэш как можно больше памяти, но при необходимости будет уменьшать объем кэша для предоставления программам и функциям операционной системы свободной памяти |
Память ядра (Kernel Memory) |
Всего (Total) |
Полный объем оперативной памяти (в килобайтах), занимаемый основными компонентами операционной системы (включая драйверы) |
|
Выгружаемая (Paged) |
Объем памяти (в килобайтах), используемой основными компонентами Windows и отображенной на страницы в виртуальной памяти |
|
Невыгружаемая (Nonpaged)
|
Объем кода операционной системы и драйверов (в килобайтах), который должен выполняться в физической памяти и не может быть перенесен в виртуальную |
Когда система начинает замедлять работу и подозреваете, что дело в памяти, быстрая проверка вкладки Быстродействие может дать вам полезные сведения. Если общий размер выделенной памяти превышает общий объем физической памяти, Windows приходится «перекачивать» страницы между быстрой оперативной памятью и гораздо более медленной виртуальной памятью в файле подкачки, что приводит к замедлению скорости системы. На рисунке 2.3 показан пример компьютера, не отвечающего минимальным требованиям Microsoft. Его производительность весьма низка, как ясно показывают приведенные на рисунке числа.
В этом примере выделено 171 896 Кбайт памяти (около 171 Мбайт), что в несколько раз превышает физическую память компьютера (32 240 Кбайт или 32 Мбайт). В такой конфигурации многие программы и данные будут вызываться операционной системой из виртуальной памяти и обращение к файлу подкачки будет происходить каждый раз при переключении между приложениями.
Рисунок 2.3 - Объем выделенной памяти не должен значительно превышать объем физической
Несмотря на одновременную работу множества процессов, на компьютере с 1 Гбайт RAM меньше четверти общего объема оперативной памяти может быть затребовано под данные и программы. Свободная память не пропадает в бездействии, потому что Windows отводит значительную ее часть под кэширование загруженных ранее программ и файлов данных. При этом значительно возрастает скорость работы с компьютером. Когда запускаете программу или загружаете файл, Windows проверяет наличие требуемого файла в кэше; если он там есть, загрузка происходит за ничтожную долю того времени, которое требуется на загрузку такого же файла с диска. Операция, которая могла бы занять 8-10 секунд при обращении к диску, может выполниться за 2-3 секунды, если все требуемые файлы уже находятся в кэше.
Даже если вам не приходится сталкиваться с существенными падениями производительности, разумно время от времени проверять параметры использования памяти. Особое внимание следует уделять пиковому значению выделенной памяти, которое говорит о максимальной нагрузке на память в течение текущего сеанса. Если это значение существенно превышает объем физической памяти, для системного кэша ресурсов явно хватать не будет, что заметно замедлит работу компьютера.
Если работаете с приложениями, которые часто загружают и перегружают большие файлы данных (программы редактирования видео, системы автоматизированного проектирования или программы для работы с базами данных), системный кэш Windows может быть особенно полезен. Для таких программ оперативной памяти не может быть много. Рост быстродействия с увеличением объема памяти может быть невероятным, особенно на компьютере с относительно медленным жестким диском.
Неудивительно, что лучшее решение проблем с производительностью — добавление памяти. Можно, конечно, избавиться от постоянных обращений к файлу подкачки, закрыв несколько приложений. Чтобы выяснить, какие программы используют больше всего памяти, откройте Диспетчер задач, перейдите на вкладку Процессы и дважды щелкните на заголовке колонки Память (Me musage), чтобы отсортировать список в порядке убывания. При этом процессы, задействующие больше всего памяти, окажутся наверху списка, как показано на рисунке 2.4.
Список выполняемых программ и процессов особенно полезен в том случае, если собираетесь запустить требовательную к памяти программу на компьютере, практически лишенном свободной оперативной памяти. Закрыв ненужные приложения, почти всегда сможете «выиграть» достаточно памяти, чтобы избежать замедления работы из-за обращений к файлу подкачки.
Рисунок 2.4 - Сортировка списка процессов по использованию памяти