русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Параллельная обработка информации в транспьютерных системах. Язык ОССАМ как инструментальное средство параллельного программирования транспьютерных систем.


Дата добавления: 2015-06-12; просмотров: 538; Нарушение авторских прав


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

В основе концепции однородных вычислительных систем положено три принципа, каждому из которых соответствует своя аксиома:

1)принцип параллельности операций: ему соответствует аксиома параллельности задач и алгоритма

2)принцип переменности логической структуры

3)принцип конструктивной однородности элементов и связи между ними: ему соответствует аксиома контролируемой однородности элементов

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

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

Поскольку транспьютерные система – это ОВС, в которой все элементы однородны, равноправны и имеют одинаковое количество связей с другими элементами и эти связи локальны, структурную моделью транспортной системы удобно рассматривать как решетчатый граф:



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

Язык ОССАМ язык назван в честь философа. Основными единицами, из которых строится программа на языке ОССАМ, является простые действия, из которых с помощью управляющих примитивов формируется различного рода процессы:

1)последовательный 2)параллельный 3)альтернативный 4)условие

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

Простые действия в ОССАМ: 1)присваивание 2)ввод 3)вывод 4)SKIP – процесс (пустое действие) 5)STOP – блокировка процесса 1)переменная := выражение 2)канал ? переменная , канал ? переменная 1; переменная 2; переменная 3 …N 3)канал ! выражение

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

Каналами называются средства позволяющие передавать данные между процессами.

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

Каналы, константы и переменные являются основными и новыми объектами, которыми оперирует программа на языке ОССАМ

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

Описания завершаются символом двоеточие.

Допустимо описывать несколько объектов одной директивы. В этом случае имена объектов разделяются запятыми.

Константы в ОССАМ называются именованными объектами, которым соответствует состояние неизвестных значений.

Переменными в языке ОССАМ трактуется как обозначения битовых комбинаций фиксированного размера.

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

Определение происходит иначе:

Var переменная 1,…N

DEF константа 1,..N

CHAN канал 1…N

Как правило, описания каналов располагаются перед управлением инфинитивом PAR. В ОССАМ поддерживается только один структурный тип данных – массивы.

Массивы: 1)один и тот – же массив 2)таблицы 3)обилие массивов- это массивы переменных или каналов.

[var | chan] имя массива [ количество элементов] они используются в составе определения констант DEF

TABLE [ выражение 0…N]

Описание процедуры или именование процесса выглядит следующим образом:

PROC имя [фор-е параметры]=текст процесса

SEQ

Chan |? A

Chan? B

Z:=a+b

Все действия и подпрограммы входящие в его состав.

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

Par

Seq

Рar

Char|?a

Char?b

Z:=a+b

Char 3!z

Seq

Rar

Char |!5

Char|!

Char 3|z

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

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

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

Сторож считается готовым, если логическое выражение истинно и готов охраняющий процесс.

Охраняющий процесс SKIP готов всегда:

(x>y)&char 1?a

res!a

(x<y)&char 2?b

res!b

(x=y)& skip

res !zero.code

Условный процесс или if процесс имеет следующий синтаксис:

Логическое выражение 1

Процесс 1

……………….

Логическое выражение n

Процесс n

 

If a<b

Char 1! 1

a>b

char 1 !(-1)

a=b

char 1!0

Для организации циклов используется while процесс

While процесс – последовательный цикл с неограниченным количеством повторений.

While логическое выражение и повторяемый процессы

B:=true

While b

Seq

Char 1?a

Char 2!a

If

a>10

b:=false

ОССАМ позволяет задавать такую разновидность циклов, как массивы процессов, при этом указывает, сколько процессов надо повторить, и какими являются эти процессы: 1)последовательными 2)параллельными 3)альтернативными 4)условными

Действия, выражающиеся в повторных процессах должны быть идентичны

[ALT |par |seq|if] имя счетчика = [ for количество]

В общем случае циклы FOR позволяют организовать системы с заданным количеством процессов:

Par:=[0 for 100]

Buffer [:]array[i]

Пример решения задачи выполнения сортировки одномерного массива по не возрастанию. Процедура описывает поведение элемента матричного процессора:

Proc sort (chan in, out; var default)=

Var x,m:

M:=default

Seq:=[0 for]

M?x

Alt

(x>m)&skip

seq

out!m

m:=u

not (u>m)&skip

out!x



<== предыдущая лекция | следующая лекция ==>
Основные особенности и этапы выполнения методологии канонического отображения. | MPI: назначение и организация пакета MPI, принципы построения программ для MPI. Классификация функций MPI. Функции MPI_BCAST, MPI_BARRIER, MPI_GATHER, MPI_SCATTER.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.005 сек.