Лабораторная работа № 5 МОНИТОРИНГ ПРОИЗВОДИТЕЛЬНОСТИ ОС WINDOWS
Автор: student | Категория: Технические науки / Информатика и программирование | Просмотров: 7171 | Комментирии: 0 | 06-03-2014 20:10

Лабораторная работа № 5

 

МОНИТОРИНГ ПРОИЗВОДИТЕЛЬНОСТИ ОС WINDOWS  

 

Цель работы: практическое знакомство с методикой использования системного монитора (монитора производительности) perfmon для поиска узких мест в вычислительной системе

 

1 КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

 

1.1. Мониторинг производительности ОС с помощью системного монитора

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

Счетчики производительности. Семейство операционных систем MS Windows  (Windows NT 4.0, Windows 2000, Windows XP, Windows Vista, Windows 7) получает информацию о производительности от аппаратных и программных компонентов компьютера. Системные компоненты (драйверы режима ядра) в ходе своей работы генерируют данные о производительности. Такие компоненты называются объектами производительности. В ОС имеется ряд объектов производительности, обычно соответствующих аппаратным компонентам, таким как память, процессоры, внешние устройства и т. д.

Каждый объект производительности предоставляет счетчики, которые собирают данные производительности (performance counters). Счетчик производительности представляет собой механизм, с помощью которого в MS Windows производится сбор сведений о производительности различных системных ресурсов. В MS Windows имеется предопределенный набор счетчиков производительности, с которыми можно взаимодействовать — некоторые из этих счетчиков присутствуют на всех компьютерах с установленной ОС Windows, а некоторые относятся к определенным приложениям и имеются только на некоторых компьютерах. Каждый счетчик относится к определенной области функций системы. В качестве примера можно привести счетчики, следящие за загрузкой процессора, использованием памяти и количеством полученных или переданных по сети байтов. Экземпляр компонента PerformanceCounter можно использовать для непосредственного подключения к существующим счетчикам производительности и для динамического взаимодействия с данными этих счетчиков.

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

Примером категории счетчиков производительности в Windows является категория «Память». Системные счетчики в этой категории отслеживают такие данные, как количество доступных и кэшируемых байтов. Чтобы узнать в приложении количество кэшируемых байтов, нужно создать экземпляр компонента PerformanceCounter и связать его с категорией «Память», а затем выбрать в этой категории соответствующий счетчик (в данном случае счетчик кэшируемых байтов).

Некоторые объекты (такие как Память и Сервер) имеют только один экземпляр,  другие объекты производительности могут иметь множество экземпляров. Если объект имеет множество экземпляров, то можно добавить счетчики для отслеживания статистики по каждому экземпляру или для всех экземпляров одновременно.

Например, если в системе установлены несколько процессоров, или процессор имеет несколько ядер, то объект Процессор будет иметь множество экземпляров. В случае, если объект поддерживает множество экземпляров, то при объединении экземпляров в группу появятся родительский экземпляр и дочерние экземпляры, которые будут принадлежать данному родительскому экземпляру.

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

В зависимости от определения счетчика это значение может соответствовать текущему использованию ресурса (мгновенное значение) или может быть средним значением двух измерений за период времени между выборками. Например, при извлечении значения счетчика потоков из категории Process для конкретного процесса извлекается число потоков на момент последнего измерения. Полученная величина является мгновенным значением. Тем не менее, при извлечении значения счетчика Pages/Sec категории Memory извлекается значение в секундах, которое вычисляется на основе среднего числа страниц, полученных между двумя последними выборками.

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

Для работы со счетчиками производительности используется встроенная в ОС Windows (NT, 2000, XP, Vista, 7) программа Perfomance Monitor (perfmon.exe). Она не представлена в Главном меню,  но ее всегда можно запустить посредством команды “Выполнить”, далее в строке набрать perfmon.exe. В ОС MS Vista используется меню Поиск, в строке поиска вводится имя запускаемого приложения. Для добавления счетчиков необходимо вызвать правой кнопкой мыши контекстное меню на поле графиков (рис. 1), выбрать объект, счетчик, экземпляры счетчика и нажать кнопку “Добавить”.

 

 

Удалить

 

 

Рисунок 1. Внешний вид программы Perfomance Monitor в MS Windows XP

 

В качестве примера рассмотрим последовательность действий при построения графика  зависимости размера рабочего множества страниц процесса Блокнот (Notepad) от времени.

1.Запустить Блокнот.

2.Запустить системный монитор perfmon.

3.Используя кнопку Удалить (рис. 1), очистить окно вывода и перечень выводимых графиков.

4.Правой кнопкой мыши вызвать контекстное меню, выбрать Пункт Добавить счетчики.

5.В окне Добавить счетчики (рис.2) выбрать из списка Объект категорию Процесс, далее из списка процессов выбрать  процесс notepad, выбрать счетчик Рабочее множество из списка счетчиков – рис. 2.

 

Рисунок 2. Добавление нового счетчика

  1. Нажать кнопки Добавить и Закрыть.

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

Управление формой представления графиков производится с помощью окна свойств, которое открывается с помощью кнопки Свойства.

Диапазон значений вертикальной шкалы задается в окне Свойства: системный монитор см. рис. 3.

Свойства

 

 

Очистка окна

 

 

Рисунок 3. Окно Свойства: системный монитор, закладка График

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

На рис. 4 показан полученный график изменения рабочего множества программы notepad в процессе создания текстового файла.

 

 

Рисунок 4 График изменения рабочего множества процесса notepad при создании файла

2. МЕТОДИКА ВЫПОЛНЕНИЯ

 

  1. Построить графики изменения количества потоков приложений Notepad и Open Office при создании документа, содержащего текст из одного слова.
  2. Для приложения Калькулятор построить 2-3 наиболее динамично изменяющихся графика изменения текущего приоритета потоков при вычислении значения арифметического выражения, перемещении калькулятора по экрану, перемещении курсора мыши по экрану в области окна калькулятора.
  3. Для приложения Open Office построить график изменения объема используемого файла подкачки при последовательном открытии 3-4 файлов увеличивающегося размера.
  4. Выполнить индивидуальные задания для бригад согласно табл. 1

 

Таблица Индивидуальные задания для бригад

№№ бригад

Задание

1, 3

Для программы Проводник построить графики изменения количества потоков в процессе запуска приложения

2, 4

Показать характер изменения во времени общего количества выполняющихся с системе потоков

5, 7, 8

Для каждого ядра процессора выяснить, в каком режиме ядро работает больше времени – пользовательском или системном 

6, 9, 10

Для каждого ядра процессора выяснить, сколько процентов времени ядро выполняет обработку прерываний.

 

 

3. ОТЧЕТ О РАБОТЕ

 

Готовится в письменном виде с помощью текстового процессора.

Содержание отчета:

1.Результаты, полученные при выполнении заданий 1 - 3.

2.Результаты, полученные при выполнении индивидуальных заданий.

3.Выводы по работе.

 

4.   КОНТРОЛЬНЫЕ ВОПРОСЫ

 

  1. Назначение счетчиков производительности.
  2. Категории  и экземпляры счетчиков.
  3. Управление параметрами создаваемых графиков (масштаб, цвет и толщина линий).
  4. Влияние активности окна приложения на текущий приоритет его потоков.