Вычислительные комплексы. Начиная с 60-х годов для повышения надежности и производительности СОД, несколько ЭВМ связывались между собой, образуя многомашинный вычислительный комплекс. Вычислительные системы. СОД, настроенная на решение задач, конкретной области применения, называется вычислительной системой.
Основы вычислительных систем
Развитие точных методов в программировании привело к возникновению различных формальных моделей программ, в том числе и моделей параллельных программ.
Рассмотрим модели параллельных программ, прототипом которых явились операторные схемы программ, в частности схемы Янова.
В.Е.Котовым и А.С.Нариньяни была предложена формальная модель параллельных вычислений, названная асинхронной моделью.
Асинхронная программа над памятью M (A-программа) представляет собой множество X блоков и массивов блоков. Блок x образован парой (y, 0), где y – предикат над MCÌM, MC – управляющая память, O – оператор над памятью M. С O-оператором связаны входные и выходные наборы переменных из М. По входному набору О-оператор вычисляет значение переменных выходного набора. Предикат y– спусковая функция блока x.
Кроме асинхронной программы, в понятие асинхронной модели входит и асинхронная система. Асинхронная система представляет собой совокупность правил, позволяющих для заданной асинхронной программы X и заданного начального значения памяти M осуществить некоторый процесс вычислений.
Чтобы получить более формальное определение пары "программа–система", вводится конструкция метасистемы, которая сопоставляет каждому начальному состоянию памяти некоторое множество вычислительных процессов. Приведем некоторые понятия и обозначения.
Пусть A– множество операторов над памятью M.
Для каждого момента t множество операторов вычислительного процесса можно разбить на 4 непересекающихся множества:
+At – включающиеся в t;
-At– выключающиеся в t;
pAt– находящиеся во включенном состоянии;
0At– находящиеся в выключенном состоянии.
Q = {q} – множество состояний метасистемы, q0– начальное состояние.
F–
функция, однозначно сопоставляющая каждому множеству
одно из его подмножеств в соответствии с состоянием q.
y
– функция, ставящая в соответствие каждому набору
некоторое состояние q (
– предыстория процесса Р до момента t включительно).
Каждому оператору aiÎA сопоставляется счетчик ci с начальным значением Æ. Текущее значение счетчика ciфиксирует разность между числом имевших место включений и числом имевших место выключений оператора ai.
Тогда модель Котова–Нариньяни можно записать в виде рекурсивных соотношений:
qt = Y(M0, P||t-1); |
At=At-1\+At-1È -At-1; |
*At=F1(0At, qt); |
+At Í *At; |
рAt=рAt-1\-At-1È +At; |
-At Í рAt. |
В основу модели Карпа – Миллера легло представление программы как множества элементарных операторов, использующих ячейки памяти и воздействующих на них, для которых указаны правила включения и выключения. Формально параллельная схема программы R = (M, A, G ) определяется следующим образом.
1. М – множество ячеек памяти.
2. A={a,b,...} – конечное множество операторов; для каждого оператора из А заданы:
K(a) – количество символов выключения оператора a (целое положительное число);
Д (а) £ М – множество входных ячеек оператора а;
Т (а) £ М – множество выходных ячеек оператора а.
3.Четверка Г = (а, q0,S,t) – управление схемы,
где q0– выделенное начальное состояние.
При
этом каждому оператору а сопоставлены один символ включения
и множество символов выключения {a1, ..., ak(a)};
где
,
![]()
t – функция переходов – частичная функция из QxS в Q, всюду определенная на QxSt.
Управление Г формирует последовательность выполнения операторов. Элементы из Si обозначают акты включения операторов, элементы из St– акты выключения. Включение оператора а допустимо лишь в таком состоянии q, что значение t (q, a) определено. После включения оператора завершение его работы допустимо в произвольном состоянии, поскольку функция t всюду определена на QxSt. При включении оператор а использует значения ячеек из Д (а), при выключении он засылает свои результаты в ячейки из Т(а) и формирует символ выключения, который соответствует одному из K(а) направлений условной передачи.
Дело в том, что разработанные программы и подготовленные данные для отдельного компьютера и предназначенные для локального использования, практически не содержали средств защиты Проблема обеспечения достоверности функционирования ВС имеет много общего с проблемой достоверности передачи дискретной информации по каналам связи (КС).