Измерения параметров функционирования систем
Для анализа поведения системы обеспечивают результаты измерений, которые проводят, наблюдая за системо. Наблюдать - это значит взаимодействовать с системой, то есть наблюдатель должен быть хотя бы пассивным посредником при передаче определенно информации в системе.
Кониепиия наблюдателя
Наблюдатель может быть внутренним либо внешним.
Внешний наблюдатель рассматривает систему как "черный ящик", который содержит ограниченное число известных функци. Наблюдение сводится к измерению изменений в реакции системы при контролируемых изменениях рабочей нагрузки. Этот подход используется при сравнительной оценке систем.
Внутренний наблюдатель обеспечивает измерения и контроль за изменениями. происходящими внутри системы. Целями наблюдения могут быть диагностика аппаратуры, отладка программ, анализ производительности системы и т.п.
Наблюдаемое поведение системы есть последовательность изменений наблюдаемых состояний системы. Наблюдаемое состояние, отражающее поведение системы даже на самом нижнем уровне системы - это состояние всех запоминающих элементов в системе: основной памяти, регистрово, внешне, регистровой памяти внешних устройств и т.д. Обычно в понятие состояния системы включают лишь память, отражающую значения объектов в программе.
Описание поведения программ (последовательность переходов из состояния в состояние) базируются на понятии состояния. Существуют два подхода описания поведения программ:
• денотационны. - Программа рассматривается как отображение Ф: X=>Y, где X - исходные данные, a Y - результаты (акцент ставится на преобразовании программо данных). Отображение состоит из последовательности отображений {Oi}, реализуемых операторами программы, которые изменяют значения ее переменных. Таким образом, поведение программы описывается непосредственно в терминах значений ее элементов памяти. В этом случае явно отражены только действия программы которые вызвали изменение памяти программы. Все остальные действия (например, передача управления) восстанавливаются однозначно лишь в силу последовательного, детерминированного характера вычислений.
• операционный. - Динамика программы рассматривается как последовательность событий (под событием понимается смена состояния). В этом походе значительно расширяется понятие состояния. В него включены не только непосредственно память программы, но и другие виды памяти в системе. Обязательным условием использования данного подхода является то, что действия, изменяющие значения в них, были различимы для наблюдателя (микрокоманды, команды, функции, системный вызов, посылка сообщения и т.д.).
Данные, собираемые в ходе измерений, можно подразделить по форме на четыре категории: трассы, относительная активность, частотные характеристики действий и статистические (усредненные) характеристики действий. Под действием понимается выполнение микрокоманды, команды, функции, системного вызова, посылки сообщения и т.д.
1. Трассы - исследуемое действие А& описывается тройкой:
(Afc, и , Г,), где
Ак - признак исследуемого действия либо соответствующее ему событие;
U - время начала i-ro наступления действия;
Ti - продолжительность i-ro действия.
При использовании операционного подхода вполне логично для характеристики действия использовать три события: начало, продолжение и окончание действия.
2. Относительная активность - показывает какую часть времени от общего
времени работы программы заняло время выполнения действия At:
гк = ------ \ ак \т)йт, где
0 0
3.
<2к(т )=1 ,если система находится в состоянии, соответствующем выполнению действия At; и ак(т)=0 в противном случае;
t и to - моменты начала и окончания измерения, причем t>to.
Частотные характеристики действия. Основной такой характеристикой является частота выполнения исследуемого действия. Эта величина, Ск , измеряется числом событий вк , инициирующих действие А^:
Ск
О
2ХМ,
К
где
где t>tn>to и gfcf-r )=1 если т=п и е^(т )=0, в противном случае;
tn - время наступления вк.
4. Статистические (усредненные) характеристики действий. В этом случае действие характеризуется функцие распределения времени его выполнения, если оно изменяется от одного его выполнения к другому.
Пусть f£ (Т) - функция распределения времени выполнения действия А& к моменту окончания его я-го наступления, тогда
fk СП |
где Т - длительность /-го наступления А&;
g(Ti ,Т2 )=1 если Ti=T2 и нулю в противном случае.
Виды наблюдателей
Все средства наблюдения за информационными потоками в вычислительных системах можно подразделить на программные, микропрограммные и аппаратные.
1. Программный наблюдатель - это специализированная программа (или комплекс программ), встроенная в измеряемую систему. Наблюдатель выступает посредником между теми компонентами системы, за которыми он наблюдает. Следствием этого является конкуренция за ресурсы системы между наблюдателем и теми программами, которые образуют рабочую нагрузку. Таким образом, программный наблюдатель всегда изменяет измеряемую систему.
В течение периода измерения программны наблюдатель периодически прерывает работу системы для измерений и сбора данных. Это делается либо с помощью программных прерываний, либо через прерывания по времени. В первом случае всякое измеряемое событие в системе сопровождалось прерыванием. При обработке этого прерывания собирают и фиксируют все необходимые данные о состоянии системы. При использовании техники прерываний по времени вместо фиксации каждого изменения в системе наблюдатель фиксирует ее состояния через определенные или случайные промежутки времени (в данном случае работа системы прерывается, и на внешнем носителе фиксируется ее состояние вне зависимости от того были или нет какие-либо изменения). С помощью техники программных прерываний доступна любая из четырех форм измерений: трассы, относительная активность, частота и распределение. Однако ее применение связано с изменением и внедрением в существующее программное обеспечение. Изменение области программных прерывани может нарушить целостность системы.
2. Микропрограммные наблюдатели. С микропрограммного уровня доступны
такие индикаторы аппаратуры, которые с вышележащих уровней не доступны. Однако
применение техники микропрограммирования имеет два серьезных недостатка:
• использование специализированно дорогостоящей аппаратуры;
• события, возникающие в системе на столь низком уровне, трудно транслировать в события более высокого уровня, на котором обычно работает программист.
3. Аппаратные наблюдатели подразделяются на внутренние и внешние. Внешний
аппаратный наблюдатель подключается к определенным точкам системы, "подслушивает"
сигналы на ее линиях, обрабатывает и записывает их у себя, вне измеряемо системы.
Аппаратный наблюдатель представляет собо совершенно автономную систему, которая
не нуждается ни в какой помощи со стороны измеряемо системы. Он практически не
вмешивается в ее работу, а, стало быть, не изменяет ее поведения.
Техника наблюдения может быть построена либо на непосредственном измерении электрических параметров надлежащих линий, либо на подключении через разъемы к соответствующим "избыточным" линиям, либо на применении внутрисхемных эмуляторов. Обработка собираемой информации может быть как программной так и нет. Она может быть выполнена post factum, а может происходить в реальном масштабе времени.
Дата добавления: 2015-08-21; просмотров: 853;