МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


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


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

Модель вычислительного процесса





Создание модели

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

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

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

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

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

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

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

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

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

Выходом может служить отказ от введения в модели дискретных систем времени и тактированных последовательностей изменений состояний, а замена их – причинно-следственными связями между событиями. Модели такого типа называют асинхронными. (Если возникает необходимость осуществить привязку ко времени, то моменты или интервалы времени представляют как события. Таким образом, существенно синхронные системы могут описываться в терминах асинхронных моделей.) Замена временных связей причинно-следственными дает возможность более наглядно описать структурные особенности функционирования систем.

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

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

Условие соответствует таким ситуациям в моделируемой системе, как наличие данного для операции в программе, состояние некоторого регистра в устройстве ЭВМ, наличие деталей на конвейере и т.п. Определенные сочетания условий разрешают реализоваться некоторому событию (предусловия события), а реализация события изменяет некоторые условия (постусловия события), т.е. события взаимодействуют с условиями, а условия – с событиями. [2]

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

Модель вычислительного процесса

Абстрактно модель вычислительного процесса можно представить в виде схемы черного ящика.

Определим вычисления, определяющие процесс P и протекающие в вычислительных ресурсах Rкак обработку операционного пакета Iin, в результате чего формируется выходной пакет Iout. Пусть момент начала вычислений определяется входным управляющим воздействием Cin, а их завершение фиксируется по выдаче вычислительным ресурсом управляющего сигнала Cout. Графическое обозначение этих вычислений представлено на рисунке 1. Иерархическая организация вычислений позволяет говорить о том, что процесс можно разделить на более мелкие подпроцессы, каждый из которых может выполняться в отведенной для этого части общих ресурсов. При этом, одни и те же ресурсы могут повторно использоваться при выполнении различных вычислений, разделяясь подпроцессами во времени.


Рисунок 1 - Процесс как вычисления, протекающие в ресурсе

В данном случае ключевыми абстракциями, важными факторами, являются исходные данные – входной пакет Iin и входное управляющее воздействие Cin. В результате работы вычислительного процесса на выходе получится выходной пакет Iout и входное управляющее воздействие Cout.

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

1. Условие готовности данных (Information - условие). Перед запуском процесса на его информационных входах должны присутствовать все необходимые аргументы и функции, составляющие операционный пакет. Отсутствие каких-либо данных к моменту запуска процесса ведет к получению неправильного результата. То есть, если существуют процессы, результаты которых являются аргументами рассматриваемого процесса, то они должны завершиться к моменту запуска текущего процесса.

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

4. Условия подтверждения использования результатов (Acknowledge - условие). Ресурсы, занимаемые процессом, могут освобождаться или повторно использоваться только после того, как результаты вычислений будут использованы всеми процессами, являющихся приемниками этих результатов в качестве аргументов. В противном случае данные будут потеряны, что приведет к неправильным вычислениям. Необходимость задержки в освобождении ресурсов мотивируется тем, что память, используемая для хранения операндов, является разделяемым ресурсом. В нее записываются результаты вычислений элементарного процесса. Из нее же происходит чтение аргументов, необходимых другим процессам.

Информация о выполнении условий готовности в рассматриваемой модели подтверждается наборами соответствующих управляющих сигналов:

1. сигналами готовности элементов операционного пакета;

2. сигналами готовности необходимых вычислительных ресурсов;

3. сигналами, подтверждающими отсутствие конфликтов при использовании разделяемых ресурсов.

Эти входные сигналы формируются на основе выходных сигналов завершающихся процессов. Завершение элементарного вычислительного процесса одновременно подтверждает готовность результатов и использование им, в качестве своих аргументов, результатов, полученных ранее в процессах - <передатчиках>. Естественно, что при более сложном представлении процессов, схема их взаимодействия и моменты формирования управляющих сигналов тоже будут сложнее [3].





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.