Вычислительные системы (ВС)

Вычислительные системы, сети и телекоммуникации

Контрольные вопросы по предмету

0


Подпишитесь на бесплатную рассылку видео-курсов:

Смотреть лекцию по частям


Текст видеолекции

Лекция 2. Вычислительные системы (ВС).
1. Классификация ВС.2. Архитектура ВС.3. Организация функционирования ВС.4. Комплексирование ВС.5. Типовые структуры ВС.
Контрольно-оценочное средство – тестовые задания
1. Классификация ВС.
Вычислительная система – это совокупность взаимосвязанных и взаимодействующих компьютеров (процессоров), периферийного оборудования и программного обеспечения, предназначенных для подготовки и решения задач пользователя. Необходимо понимать разницу между компьютерами и вычислительной системой: компьютеры оснащены специальными программными системами, являются технической базой и инструментом для информационных систем.Информационная система немыслима без персонала, взаимодействующего с компьютерами и телекоммуникациями.Вычислительная система с технической точки зрения – это комплекс вычислительных средств, объединенных в информационно-вычислительную сеть.Принципы построения современных вычислительных систем:• децентрализация управления;• иерархическая (сетевая) структура;• совмещение операций;• программно-техническая платформа.Рассматривая вычислительные системы, нельзя не упомянуть об автоматизированных информационных системах, в которых значительная часть рутинных операций информационного процесса выполняется с помощью технических средств под управлением человека. В противовес им существуют неавтоматизированные информационные системы – в них все операции по обработке информации выполняются самими работниками без применения технических средств и компьютерной техники. Структура любой вычислительной автоматизированной системы может быть представлена совокупностью обеспечивающих ее подсистем, к которым относятся следующие.Техническое обеспечение – комплекс технических средств, предназначенных для работы АИС, к ним относятся компьютеры, комплектация, лини связи, расходные материалы и т.д. Сюда же входит документация на оборудование.Математическое обеспечение – совокупность математических моделей, алгоритмов, инструкций для реализации профессиональных задач АИС.Программное обеспечение  - набор программ для реализации деятельности АИС.Информационное обеспечение – совокупность данных, профессиональных сведений, хранящихся, возможно, в разных источниках.Организационное обеспечение – набор документов, регулирующих взаимоотношения работников данной АИС.Правовое обеспечение – правовые нормы, а именно, федеральные законы, указы, постановления, приказы, письма министерств, ведомств, местных органов власти, которые регламентируют создание и функционирование АИС.Методическое обеспечение – совокупность нормативных актов и инструкций по финансовому, инвестиционному, юридическому анализу для разработки алгоритмов обработки различной информации в поддержку принятия решений.Эргономическое обеспечение – средства и метода для создания оптимальных условий высокоэффективной работы АИС.Лингвистическое обеспечение – система искусственных языков, терминов, специальных названий в той профессиональной области, где создана и функционирует АИС.Коротко классификацию вычислительных систем можно представить так.• Назначение: универсальные, специализированные.• Тип: многопроцессорные, многомашинные.• Характер устройств: однородные, неоднородные.• Территория: совмещенные, разобщенные.• Управление: централизованные, децентрализованные, смешанные.• Режим работы: оперативные (реальный масштаб времени), неоперативные (инерционные).• Способ соединения элементов: с шинной схемой, с канальной схемой, с конвейерной схемой, с коммуникационной (переключаемой) схемой, с распределенной схемой.
В настоящее время наметился кризис классической структуры ЭВМ, связанный с исчерпанием всех основных идей последовательного счета. Возможности микроэлектроники также не безграничны, давление пределов ощутимо и здесь.Дальнейшее поступательное развитие вычислительной техники напрямую связано с переходом к параллельным вычислениям, с идеями построения многопроцессорных систем и сетей, объединяющих большое количество отдельных процессоров и (или) ЭВМ. Но следует отметить, что при несомненных практических достижениях в области параллельных вычислений до настоящего времени отсутствует их единая теоретическая база.Термин вычислительная система появился в начале - середине 60-х гг. при появлении ЭВМ III поколения. Это время знаменовалось переходом на новую элементную базу - интегральные схемы. Следствием этого явилось появление новых технических решений: разделение процессов обработки информации и ее ввода-вывода, множественный доступ и коллективное использование вычислительных ресурсов в пространстве и во времени. Появились сложные режимы работы ЭВМ - многопользовательская и многопрограммная обработка.Отражая эти новшества, и появился термин “вычислительная система”. Он не имеет единого толкования в литературе, его иногда даже используют применительно к однопроцессорным ЭВМ. Однако общим здесь является подчеркивание возможности построения параллельных ветвей в вычислениях, что не предусматривалось классической структурой ЭВМ.Под вычислительной системой (ВС) будем понимать совокупность взаимосвязанных и взаимодействующих процессоров или ЭВМ, периферийного оборудования и программного обеспечения, предназначенную для подготовки и решения задач пользователей. Отличительной особенностью ВС по отношению к ЭВМ является наличие в них нескольких вычислителей, реализующих параллельную обработку. Создание ВС преследует следующие основные цели:- повышение производительности системы за счет ускорения процессов обработки данных;- повышение надежности и достоверности вычислений;- предоставление пользователям дополнительных сервисных услуг.Параллелизм в вычислениях в значительной степени усложняет управление вычислительным процессом, использование технических и программных ресурсов. Эти функции выполняет операционная система ВС.Самыми важными предпосылками появления и развития вычислительных систем служат экономические факторы. Анализ характеристик ЭВМ различных поколений показал, что в пределах интервала времени, характеризующегося относительной стабильностью элементной базы, связь стоимости и производительности ЭВМ выражается квадратичной зависимостью - “законом Гроша”: производительность вычислительной машины всегда пропорциональна квадрату её стоимости.Построение же вычислительных систем позволяет существенно сократить затраты, так как для них существует линейная формула зависимости стоимости вычислительной системы от производительности самой системы и ее комплектующих.На рисунке представлены графики изменения стоимости вычислений для ЭВМ и ВС, зависимость стоимости Свс и Сэвм от производительности. Для каждого поколения ЭВМ и ВС существует критический порог сложности решаемых задач Пкр, после которого применение автономных ЭВМ становится экономически невыгодным, неэффективным. Критический порог определяется точкой пересечения двух приведенных зависимостей. Кроме выигрыша в стоимости технических средств, следует учитывать и дополнительные преимущества. Наличие нескольких вычислителей в системе позволяет совершенно по-новому решать проблемы надежности, достоверности результатов обработки, резервирования, централизации хранения и обработки данных, децентрализации управления и т.д.Основные принципы построения, закладываемые при создании ВС:• возможность работы в разных режимах;• модульность структуры технических и программных средств;• унификация и стандартизация технических и программных решений;• иерархия в организации управления процессами;• способность систем к адаптации, самонастройке и самоорганизации.ВС очень сильно отличаются друг от друга своими возможностями и характеристиками. Различия наблюдаются уже на уровне структуры.Структура ВС - это совокупность комплексируемых элементов и их связей. В качестве элементов ВС выступают отдельные ЭВМ и процессоры. Существует большое количество признаков, по которым классифицируют вычислительные системы: по целевому назначению и выполняемым функциям, по типам и числу ЭВМ или процессоров, по архитектуре системы, режимам работы, методам управления элементами системы, степени разобщенности элементов вычислительной системы и др. Однако, основными из них являются признаки структурной и функциональной организации вычислительной системы.Поговорим подробнее о различных классификациях ВС.По назначению вычислительные системы делят на универсальные, проблемно-ориентированные и специализированные. Универсальные ВС предназначаются для решения самых различных задач. Проблемно-ориентированные используются для решения определенного круга задач в сравнительно узкой сфере. Специализированные системы ориентированы на решение узкого класса задач. Специализация ВС может устанавливаться различными средствами:• во-первых, сама структура системы (количество параллельно работающих элементов, связи между ними и т.д.) может быть ориентирована на определенные виды обработки информации: матричные вычисления, решение алгебраических, дифференциальных и интегральных уравнений и т.п. Практика разработки ВС типа суперЭВМ показала, чем выше их производительность, тем уже класс эффективно решаемых ими задач;• во-вторых, специализация ВС может закладываться включением в их состав специального оборудования и специальных пакетов обслуживания техники.По типу вычислительные системы различаются на многомашинные и многопроцессорные ВС. Многомашинные вычислительные системы (ММС) появились исторически первыми. Уже при использовании ЭВМ первых поколений возникали задачи повышения производительности, надежности и достоверности вычислений. Для этих целей использовали комплекс машин, схематически показанный на рис. а.Положения 1 и 3 электронного ключа (ЭК) обеспечивало режим повышенной надежности. При этом одна из машин выполняла вычисления, а другая находилась в “горячем” или “холодном” резерве, т.е. в готовности заменить основную ЭВМ. Положение 2 электронного ключа соответствовало случаю, когда обе машины обеспечивали параллельный режим вычислений. Здесь возможны две ситуации:а) обе машины решают одну и ту же задачу и периодически сверяют результаты, решения. Тем самым обеспечивался режим повышенной достоверности, уменьшалась вероятность появления ошибок в результатах вычислений. Примерно по такой же схеме построены управляющие бортовые вычислительные комплексы космических аппаратов, ракет, кораблей. Например, американская космическая система “Шатл” содержала пять вычислительных машин, работающих по такой схеме;б) обе машины работают параллельно, но обрабатывают собственные потоки заданий. Возможность обмена информацией между машинами сохраняется. Этот вид работы относится к режиму повышенной производительности. Она широко используется в практике организации работ на крупных вычислительных центрах, оснащенных несколькими ЭВМ высокой производительности.Схема, представленная на рис. a, была неоднократно повторена в различных модификациях при проектировании разнообразных специализированных многомашинных вычислительных систем. Основные различия многомашинных вычислительных систем заключаются, как правило, в организации связи и обмена информацией между ЭВМ комплекса. Каждая из них сохраняет возможность автономной работы и управляется собственной ОС. Любая другая подключаемая ЭВМ комплекса рассматривается как специальное периферийное оборудование.Многопроцессорные вычислительные системы (МПС) строятся при комплексировании нескольких процессоров (рис. б). В качестве общего ресурса они имеют общую оперативную память (ООП). Параллельная работа процессоров и использование ООП обеспечиваются под управлением единой общей операционной системы. По сравнению с ММС здесь достигается наивысшая оперативность взаимодействия вычислителей-процессоров. Многие исследователи считают, что использование многопроцессорных вычислительных систем является основным магистральным путем развития вычислительной техники новых поколений. На рисунке - Типы ВС: а - многомашинные комплексы; б - многопроцессорные системыОднако многопроцессорные системы имеют и существенные недостатки. Они в первую очередь связаны с использованием ресурсов общей оперативной памяти. При большом количестве комплексируемых процессоров возможно возникновение конфликтных ситуаций, когда несколько процессоров обращаются с операциями типа “чтение” и “запись” к одним и тем же областям памяти. Помимо процессоров к ООП подключаются все каналы (процессоры ввода-вывода), средства измерения времени и т.д. Поэтому вторым серьезным недостатком многопроцессорных систем является проблема коммутации абонентов и доступа их к ООП. От того, насколько удачно решаются эти проблемы, и зависит эффективность применения многопроцессорных систем. Это решение обеспечивается аппаратурно-программными средствами. Процедуры взаимодействия очень сильно усложняют структуру ОС многопроцессорной системы. Накопленный опыт построения подобных систем показал, что они эффективны при небольшом числе комплексируемых процессоров (2,4 до 10).По типу ЭВМ или процессоров, используемых для построения ВС, различают однородные и неоднородные системы. Однородные системы предполагают комплексирование однотипных ЭВМ (процессоров), неоднородные - разнотипных. В однородных системах значительно упрощаются разработка и обслуживание технических и программных (в основном ОС) средств. В них обеспечивается возможность стандартизации и унификации соединений и процедур взаимодействия элементов системы. Упрощается обслуживание систем, облегчаются модернизация и их развитие. Вместе с тем существуют и неоднородные ВС, в которых комплексируемые элементы очень сильно отличаются по своим техническим и функциональным характеристикам. Обычно это связано с необходимостью параллельного выполнения многофункциональной обработки. Так, при построении многомашинных систем, обслуживающих каналы связи, целесообразно объединять в комплекс связанные, коммуникационные машины и машины обработки данных. В таких системах коммуникационные ЭВМ выполняют функции связи, контроля получаемой и передаваемой информации, формирования пакетов задач и т.д. ЭВМ обработки данных не занимаются не свойственными им работами по обеспечению взаимодействия в сети, а все их ресурсы переключаются на обработку данных. Неоднородные системы находят применение и в многопроцессорных системах. Многие ЭВМ, в том числе и ПЭВМ, могут использовать сопроцессоры: десятичной арифметики, матричные и т.п.По степени территориальной разобщенности вычислительных модулей ВС делятся на системы совмещенного (сосредоточенного) и распределенного (разобщенного) типов. Обычно такое деление касается только многомашинных систем. Многопроцессорные системы относятся к системам совмещенного типа. Более того, учитывая успехи микроэлектроники, это совмещение может быть очень глубоким. При появлении новых СБИС (сверхбольших интегральных схем) появилась возможность иметь в одном кристалле несколько параллельно работающих процессоров.Совмещенные и распределенные многомашинные системы сильно различаются оперативностью взаимодействия в зависимости от удаленности ЭВМ. Время передачи информации между соседними ЭВМ, соединенными простым кабелем, может быть много меньше времени передачи данных по каналам связи. Как правило, все выпускаемые в мире ЭВМ имеют средства прямого взаимодействия и средства подключения к сетям ЭВМ. Для ПЭВМ такими средствами являются нуль-модемы, модемы и сетевые карты как элементы техники связи.По методам управления элементами ВС различают централизованные, децентрализованные и со смешанным управлением. Помимо параллельных вычислений, производимых элементами системы, необходимо выделять ресурсы на обеспечение управления этими вычислениями. В централизованных ВС за это отвечает главная, или диспетчерская, ЭВМ (процессор). Ее задачей являются распределение нагрузки между элементами, выделение ресурсов, контроль состояния ресурсов, координация взаимодействия. Централизованный орган управления в системе может быть жестко фиксирован или эти функции могут передаваться другой ЭВМ (процессору), что способствует повышению надежности системы. Централизованные системы имеют более простые ОС. В децентрализованных системах функции управления распределены между ее элементами. Каждая ЭВМ (процессор) системы сохраняет известную автономию, а необходимое взаимодействие между элементами устанавливается по специальным наборам сигналов. С развитием ВС и, в частности, сетей ЭВМ интерес к децентрализованным системам постоянно растет.В системах со смешанным управлением совмещаются процедуры централизованного и децентрализованного управления. Перераспределение функций осуществляется в ходе вычислительного процесса исходя из сложившейся ситуации.По принципу закрепления вычислительных функций за отдельными ЭВМ (процессорами) различают системы с жестким и плавающим закреплением функций. В зависимости от типа ВС следует решать задачи статического или динамического размещения программных модулей и массивов данных, обеспечивая необходимую гибкость системы и надежность ее функционирования.По режиму работы ВС различают системы, работающие в оперативном и неоперативном временных режимах. Первые, как правило, используют режим реального масштаба времени. Этот режим характеризуется жесткими ограничениями на время решения задач в системе и предполагает высокую степень автоматизации процедур ввода-вывода и обработки данных.Наибольший интерес у исследователей всех рангов (проектировщиков, аналитиков и пользователей) вызывают структурные признаки ВС. От того, насколько структура ВС соответствует структуре решаемых на этой системе задач, зависит эффективность применения ЭВМ в целом. Структурные признаки, в свою очередь, отличаются многообразием: топология управляющих и информационных связей между элементами системы, способность системы к перестройке и перераспределению функций, иерархия уровней взаимодействия элементов. В наибольшей степени структурные характеристики определяются архитектурой системы.

 
2. Архитектура вычислительных системАрхитектуру вычислительной системы определяет параллелизм потока данных и потока заданий (команд).Различают следующие архитектурные группы:1. Локальная обработка (одиночные данные – одиночные команды).2. Конвейерная обработка (одиночные данные – множественные команды).3. Многозадачная обработка (множественные данные – одиночные команды).4. Матричная обработка (множественные данные – множественные команды).
Система администрирования определяет организацию вычислительного процесса.Вычислительные алгоритмы образуют вычислительный граф системы, осуществляющий обработку информации в соответствии с принятой технологией решения.Типы платформ:• Локальный комплекс. • Терминальный комплекс. • Многомашинный комплекс. • Информационно-вычислительная сеть (локальная, региональная, глобальная).Архитектура ВС - совокупность характеристик и параметров, определяющих функционально-логическую и структурную организацию системы. Понятие архитектуры охватывает общие принципы построения и функционирования, наиболее существенные для пользователей, которых больше интересуют возможности систем, а не детали их технического исполнения. Поскольку ВС появились как параллельные системы, то и рассмотрим классификацию архитектур под этой точкой зрения.Эта классификация архитектур была предложена Флинном  в начале 60-х гг. В ее основу заложено два возможных вида параллелизма (свойство систем, заключающееся в исполнении вычислений одновременно либо совмещённо по времени): независимость потоков заданий (команд), существующих в системе, и независимость (несвязанность) данных, обрабатываемых в каждом потоке. Классификация до настоящего времени еще не потеряла своего значения. Однако подчеркнем, что, как и любая классификация, она носит временный и условный характер. Своим долголетием она обязана тому, что оказалась справедливой для ВС, в которых ЭВМ и процессоры реализуют программные последовательные методы вычислений. С появлением систем, ориентированных на потоки данных и использующих ассоциативную обработку, классификация может быть некорректной.Согласно данной классификации существуют четыре основные архитектуры ВС, представленные на рисунке:1) одиночный поток команд - одиночный поток данных (ОКОД), (в английской аббревиатуре Single Instruction Single Data (SISD)), - одиночный поток инструкций - одиночный поток данных;2) одиночный поток команд - множественный поток данных (ОКМД), или Single Instruction Multiple Data (SIMD), - одиночный поток инструкций - множественный поток данных;3)множественный поток команд - одиночный поток данных (МКОД), или Multiple Instruction Single Data (MISD), - множественный поток инструкций - одиночный поток данных;4)множественный поток команд - множественный поток данных (МКМД), или Multiple Istruction Multiple Data (MIMD), - множественный поток инструкций - множественный поток данных. Архитектура ВС: а - ОКОД (SISD)-архитектура; б - ОКМД (SIMD)-архитектура; в - МКОД (MISD)-архитектура; г - МКМД (MIMD)-архитектураКоротко рассмотрим отличительные особенности каждой архитектуры.Архитектура ОКОД охватывает все однопроцессорные и одномашинные варианты систем, т.е. с одним вычислителем. Все ЭВМ классической структуры попадают в этот класс. Здесь параллелизм вычислений обеспечивается путем совмещения выполнения операций отдельными блоками АЛУ-арифметико-логического устройства, а также параллельной работой устройств ввода-вывода информации и процессора. Закономерности организации вычислительного процесса в этих структурах достаточно хорошо изучены.Архитектура ОКМД предполагает создание структур векторной или матричной обработки. Системы этого типа обычно строятся как однородные, т.е. процессорные элементы, входящие в систему, идентичны, и все они управляются одной и той же последовательностью команд. Однако каждый процессор обрабатывает свой поток данных. Под эту схему хорошо подходят задачи обработки матриц или векторов (массивов), задачи решения систем линейных и нелинейных, алгебраических и дифференциальных уравнений, задачи теории поля и др. В структурах данной архитектуры желательно обеспечивать соединения между процессорами, соответствующие реализуемым математическим зависимостям. Как правило, эти связи напоминают матрицу, в которой каждый процессорный элемент связан с соседними.По данной схеме строились системы: первая суперЭВМ - ILLIAC-IV, отечественные параллельные системы - ПС-2000, ПС-3000. Идея векторной обработки широко использовалась в таких известных суперЭВМ, как Cyber-205 и Gray-I, II, III. Узким местом подобных систем является необходимость изменения коммутации между процессорами, когда связь между ними отличается от матричной. Кроме того, задачи, допускающие широкий матричный параллелизм, составляют достаточно узкий класс задач. Структуры ВС этого типа, по существу, являются структурами специализированных суперЭВМ.Третий тип архитектуры  - МКОД предполагает построение своеобразного процессорного конвейера, в котором результаты обработки передаются от одного процессора к другому по цепочке. Выгоды такого вида обработки понятны. Прототипом таких вычислений может служить схема любого производственного конвейера. В современных ЭВМ по этому принципу реализована схема совмещения операций, в которой параллельно работают различные функциональные блоки, и каждый из них делает свою часть в общем цикле обработки команды.В ВС этого типа конвейер должны образовывать группы процессоров. Однако при переходе на системный уровень очень трудно выявить подобный регулярный характер в универсальных вычислениях. Кроме того, на практике нельзя обеспечить и “большую длину” такого конвейера, при которой достигается наивысший эффект. Вместе с тем конвейерная схема нашла применение в так называемых скалярных процессорах суперЭВМ, в которых они применяются как специальные процессоры для поддержки векторной обработки.Архитектура МКМД предполагает, что все процессоры системы работают по своим программам с собственным потоком команд. В простейшем случае они могут быть автономны и независимы. Такая схема использования ВС часто применяется на многих крупных вычислительных центрах для увеличения пропускной способности центра. Большой интерес представляет возможность согласованной работы ЭВМ (процессоров), когда каждый элемент делает часть общей задачи. Общая теоретическая база такого вида работ практически отсутствует. Но можно привести примеры большой эффективности этой модели вычислений. Подобные системы могут быть многомашинными и многопроцессорными. Наиболее полное представлении о разновидностях архитектур вычислительных систем параллельного действия дает классификация, предложенная и изображенная на рисунке. Архитектура SIMD лежит в основе вычислительных систем, управляемых одним потоком команд, обрабатывающим несколько потоков данных. К разновидностям таких систем относятся массивно-параллельные и векторные процессоры (компьютеры).Массивно-параллельный процессор, с точки зрения общей структуры, можно представить как решетку достаточно большого размера, с узлами которой связаны однотипные процессоры определенной мощности, каждый из которых имеет свою локальную память. Единый блок управления активизирует процессоры на выполнение одной и той же последовательности команд, но над разными данными, загружаемыми в локальные модули памяти. Определенную гибкость системе придает предусматриваемое в локальных процессорах условное выполнение команд (по некоторым элементам адресованной ему информации процессор сам принимает решение, выполнять или не выполнять очередную команду).

 
3. Организация функционирования ВС.Вычислительные системы создаются, в конечном итоге, для оптимального управления.Управление – это функция самоорганизованной системы, которая обеспечивает сохранение ее структуры, поддерживает режим деятельности, реализует ее программы, цели развития и жизни.Цель управления формируется при воздействии внешнего объекта на систему. Система включается в работу и реализует функции управления. При этом все действия или операции, осуществляемые этой системой, представляют собой упорядоченную совокупность, которую называют технологией управления, основанной на исходной (начальной) информации.Процесс управления по отношению к какому-либо другому процессу (явлению, объекту) обладает следующими свойствами:• сопричастность (взаимные отношения);• сознательность (или стихийность);• алгоритмизация (упорядоченная совокупность операций для достижения намеченной цели за конечное число шагов).Принятие решения – акт целенаправленного воздействия на объект управления, основанный на анализе ситуации, определении цели, разработки программы достижения этой цели.Различают следующие уровни управления:стратегический, функциональный, операционный.Решение задачи управления заключается в определении состояния системы в любой момент времени. Анализ связи между процессом управления и управляемым объектом позволяет ответить на важный вопрос, в каких случаях необходимо автоматизировать некоторые процессы с привлечением средств вычислительной техники.Процедура управления по шагам:1 шаг. Сбор и обработка исходной информации.2 шаг. Анализ, диагноз, прогноз, синтез информации (систематизация) и определение на этой основе цели управления (целеполагание).3 шаг. Поиск общего решения, т.е. методов (пути), ведущих к поставленной (выбранной, намеченной) цели; конкретизация этого решения в виде планирования (проектирования, программирования) принятия решения с учетом промежуточных целей управления; организация деятельности для достижения этой цели.4 шаг. Принятие решения и контроль за его выполнением (сбор и обработка итоговой информации).Идея создания программ, способных выполняться на любой вычислительной машине, зародилась достаточно давно. Об этом свидетельствует множество разработок и проектов, поддержанных в свое время на различных уровнях вплоть до международного. Однако в последующие годы развитие индустрии программирования пошло по руслу интенсификации использования аппаратных средств и об идее "универсального" программирования временно забыли.Изначально причиной интереса к переносимому, или мобильному, программному обеспечению были следующие факторы:• экономический, обусловленный соображениями сокращения затрат на перенос программ с одной платформы на другую;• технологический, вызванный быстрой сменой аппаратной базы вычислительных систем;• сетевой, определяемый возникновением и распространением корпоративных и глобальных вычислительных сетей.В современной ситуации идея создания мобильного программного обеспечения (ПО) возродилась. Причиной тому послужили факторы как экономического, так и технологического характера. С экономической точки зрения к фактору экономии средств на разработке ПО добавился фактор повторного использования программ, который объясняется тем, что за прошедшие годы создан богатейший банк программных средств. За истекший период развитие программной индустрии прошло ряд этапов, в результате чего значительно повысились требования к качеству, надежности и безопасности функционирования программ и программных комплексов, появилась концепция открытых информационных систем. Это в свою очередь вызвало интерес к надежному мобильному ПО. Кроме того, со стороны пользователей наметилась тенденция к снижению зависимости от поставщиков аппаратных и программных платформ.В появившихся за последние годы работах по мобильным вычислениям рассматриваются в основном процессы переноса ПО между однопроцессорными платформами. Однако производительность однопроцессорных ЭВМ близка к пределу, обеспечиваемому технологической базой. Для продолжения наращивания вычислительной мощности в рамках современных технологий необходим переход к параллельным вычислениям. Ведущие фирмы-производители уже сосредоточили свои усилия на разработке многопроцессорных систем. Серьезным препятствием для перехода к "массовым" параллельным вычислениям является отсутствие единого рынка программ для подобной техники и принципиальные трудности в его расширении, вызванные качественным отличием в архитектуре многопроцессорных систем. Для преодоления данного препятствия необходима разработка такой концепции переносимого (мобильного) программного обеспечения, на базе которой возможно создание единого рынка программных средств однопроцессорных и многопроцессорных вычислительных систем.При построении модели мобильного ПО необходимо учитывать возможность использования в инструментальной вычислительной системе разных принципов построения архитектуры. В основе переносимого ПО многопроцессорных вычислительных систем должна лежать такая формальная модель, которая удовлетворяла бы различным архитектурным принципам, определяемым двумя видами механизмов: механизмом управления и механизмом передачи данных. Существует три основных типа архитектурной организации, основанные на различных механизмах управления вычислениями:• архитектуры с управлением потоком команд;• архитектуры с управлением потоком данных;• архитектуры с управлением потоком запросов.Архитектуры с управлением потоком команд реализуют принудительное (синхронное) управление в однопроцессорных и многопроцессорных вычислительных системах. В этом случае программист, инструментальная среда программирования или операционная система должны директивно определять последовательность выполнения вычислений. Архитектуры с управлением потоком данных реализуют принцип параллельного управления потоком данных (автоматическое выполнение вычислений по готовности аргументов), а архитектуры с управлением потоком запросов — рекурсивный принцип (автоматическое выполнение вычислений по запросу результата). В последних двух случаях па¬раллельное выполнение программы осуществляет¬ся естественным путем по мере продвижения вычислительного процесса.Значительное влияние на организацию вычислительного процесса оказывает также механизм доступа к данным. Доступ к данным может быть организован либо посредством ссылок к глобально доступным областям данных (доступ по имени), либо с помощью дублирования данных в аргументах исполняемых операторов (доступ по значению). В основе современных архитектур вычислительных систем лежат различные комбинации механизмов доступа к данным и управления.Универсальная модель вычислений должна удовлетворять следующим условиям:• модель данных не должна зависеть ни от разрядности инструментальной машины,  ни от формы представления в ней любого вида информации (например, форматов представления действительных чисел или порядка следования байтов  в слове);• модель алгоритма не должна быть ориентирована на какую-либо определенную архитектуру (т. е. не должна явно определять механизмы данных и управления) и не должна использовать временные и аппаратные характеристики инструментальной ЭВМ.При построении универсальной модели вычислений необходимо опираться на такие фундаментальные понятия, как вычислительный алгоритм и вычислительная машина. В качестве основного объекта будем рассматривать вычислительный алгоритм (или вычислительную функцию), под которым будем понимать прикладной алгоритм, ориентированный на выполнение на цифровой вычислительной системой с использованием арифметических действий (и численных методов на их основе) и логических функций. Под универсальной вычислительной машиной (УВМ) будем понимать машину, способную выполнять любой вычислительный алгоритм, а под универсальной абстрактной вычислительной машиной — УВМ, не имеющую физической реализации и поэтому свободную от детализации ее устройств и механизмов исполнения алгоритма. Детализация универсальной абстрактной вычислительной машины может изменяться в зависимости от уровня абстракции.  Для решения задач конкретизации, конфигурирования и параметризации иерархической модели необходим достаточно мощный по своим возможностям математический аппарат, в качестве которого целесообразно использовать специальную тензорную алгебру. Основными достоинствами тензорного аппарата применительно к вычислительным системам являются:• возможность описания разнородных составляющих вычислительного процесса (алгоритмов, программ, аппаратуры);• отсутствие ограничений на сложность моделируемых объектов;• возможность выполнения алгебраических преобразований (например, с целью оптимизации системы). 
4. Комплексирование ВС.Для построения вычислительных систем необходимо, чтобы элементы или модули, комплексируемые в систему, были совместимы. Понятие совместимости имеет три аспекта: аппаратурный, или технический, программный и информационный. Техническая (Hardware) совместимость предполагает, что еще в процессе разработки аппаратуры обеспечиваются следующие условия:• подключаемая друг к другу аппаратура должна иметь единые стандартные, унифицированные средства соединения: кабели, число проводов в них, единое назначение проводов, разъемы, заглушки, адаптеры, платы и т.д.;• параметры электрических сигналов, которыми обмениваются технические устройства, тоже должны соответствовать друг другу: амплитуды импульсов, полярность, длительность и т.д.;• алгоритмы взаимодействия (последовательности сигналов по отдельным проводам) не должны вступать в противоречие друг с другом.Программная совместимость требует, чтобы программы, передаваемые из одного технического средства в другое (между ЭВМ, процессорами, между процессорами и внешними устройствами), были правильно поняты и выполнены другим устройством.Если обменивающиеся устройства идентичны друг другу, то проблем обычно не возникает. Если взаимодействующие устройства относятся к одному и тому же семейству ЭВМ, но стыкуются разные модели (например, ПК на базе устаревших i486 и Pentium), то в таких моделях совместимость обеспечивается снизу-вверх, т.е. ранее созданные программы могут выполняться на более поздних моделях, но не наоборот. Если стыкуемая аппаратура имеет совершенно разную систему команд, то следует обмениваться исходными модулями программ с последующей их трансляцией.Информационная совместимость комплексируемых средств предполагает, что передаваемые информационные массивы будут одинаково интерпретироваться стыкуемыми модулями ВС. Должны быть стандартизованы алфавиты, разрядность, форматы, структура и разметка файлов, томов.В создаваемых ВС стараются обеспечить несколько путей передачи данных, что позволяет достичь необходимой надежности функционирования, гибкости и адаптируемости к конкретным условиям работы. Эффективность обмена информацией определяется скоростью передачи и возможными объемами данных, передаваемыми по каналу взаимодействия. Эти характеристики зависят от средств, обеспечивающих взаимодействие модулей и уровня управления процессами, на котором это взаимодействие осуществляется. Сочетание различных уровней и методов обмена данными между модулями ВС наиболее полно представлено в универсальных суперЭВМ и больших ЭВМ, в которых сбалансированно использовались все методы достижения высокой производительности. В этих машинах предусматривались следующие уровни комплексирования (см. рис.): 1) прямого управления (процессор - процессор);2) общей оперативной памяти;3) комплексируемых каналов ввода-вывода;4) устройств управления внешними устройствами (УВУ);5) общих внешних устройств.На каждом из этих уровней используются специальные технические и программные средства, обеспечивающие обмен информацией.ИПУ – интерфейс прямого управления, Пр-р - процессорООП – общая оперативная памятьАКК - адаптера “канал-канал”, СК – селекторный канал, МК – мультиплексный каналАПД – аппаратура передачи данныхУВУ – управление внешними устройствами, НМД – накопитель на магнитных дискахВнУ – внешние устройстваУровень прямого управления служит для передачи коротких однобайтовых приказов-сообщений. Последовательность взаимодействия процессоров сводится к следующему. Процессор-инициатор обмена по интерфейсу прямого управления (ИПУ) передает в блок прямого управления байт-сообщение и подает команду “прямая запись”. У другого процессора эта команда вызывает прерывание, относящееся к классу внешних. В ответ он вырабатывает команду “прямое чтение” и записывает передаваемый байт в свою память. Затем принятая информация расшифровывается и по ней принимается решение. После завершения передачи прерывания снимаются, и оба процессора продолжают вычисления по собственным программам. Видно, что уровень прямого управления не может использоваться для передачи больших массивов данных, однако оперативное взаимодействие отдельными сигналами широко используется в управлении вычислениями. У ПЭВМ типа ГВМ PC (гибридные вычислительные машины комбинированного действия) этому уровню соответствует комплексирование процессоров, подключаемых к системной шине.Уровень общей оперативной памяти (ООП) является наиболее предпочтительным для оперативного взаимодействия процессоров. В этом случае ООП эффективно работает при небольшом числе обслуживаемых абонентов.Уровень комплексируемых каналов ввода-вывода предназначается для передачи, больших объемов информации между блоками оперативной памяти, сопрягаемых в ВС. Обмен данными между ЭВМ осуществляется с помощью адаптера “канал-канал” (АКК) и команд “чтение” и “запись”. Адаптер - это устройство, согласующее скорости работы сопрягаемых каналов. Обычно сопрягаются селекторные каналы (СК) машин как наиболее быстродействующие. Скорость обмена данными определяется скоростью самого медленного канала. Скорость передачи данных по этому уровню составляет несколько Мбайт в секунду. В ПЭВМ данному уровню взаимодействия соответствует подключение периферийной аппаратуры через контроллеры и адаптеры.Уровень устройств управления внешними устройствами (УВУ) предполагает использование встроенного в УВУ двухканального переключателя и команд “зарезервировать” и “освободить”. Двухканальный переключатель позволяет подключать УВУ одной машины к селекторным каналам различных ЭВМ. По команде “зарезервировать” канал - инициатор обмена имеет доступ через УВУ к любым накопителям. Обмен канала с накопителями продолжается до полного завершения работ и получения команды “освободить”. Только после этого УВУ может подключиться к конкурирующему каналу. Только такая дисциплина обслуживания требований позволяет избежать конфликтных ситуаций.На четвертом уровне с помощью аппаратуры передачи данных (АПД) (мультиплексоры – разделение на входы и выходы, сетевые адаптеры, модемы и др.) имеется возможность сопряжения с каналами связи. Эта аппаратура позволяет создавать сети ЭВМ.Пятый уровень предполагает использование общих внешних устройств. Для подключения отдельных устройств используется автономный двухканальный переключатель.Пять уровней комплексирования получили название логических потому, что они объединяют на каждом уровне разнотипную аппаратуру, имеющую сходные методы управления. Различные уровни комплексирования позволяют создавать самые различные структуры ВС.Второй логический уровень позволяет создавать многопроцессорные ВС. Обычно он дополняется и первым уровнем, что позволяет повышать оперативность взаимодействия процессоров. Вычислительные системы сверхвысокой производительности должны строиться как многопроцессорные. Центральным блоком такой системы является быстродействующий коммутатор, обеспечивающий необходимые подключения абонентов (процессоров и каналов) к общей оперативной памяти.Пятый уровень комплексирования используется в специальных случаях, когда в качестве внешнего объекта используется какое-то дорогое уникальное устройство. В противном случае этот уровень малоэффективен. Сочетание уровней и методов взаимодействия позволяет создавать самые различные многомашинные и многопроцессорные системы.




 
5. Типовые структуры ВС.
Приведем несколько примеров использования вычислительных систем, которые используются в настоящее время повсеместно.ВС может быть представлена как автоматизированная вычислительная система – АИС, обязательно содержит:- информацию как продукт системы управления,- информационную технологию – средство обработки информации,- персонал – реализует информационные процессы, используя информационные технологии.АИС способствует:- сокращению потока бумажных носителей,- снижению трудоемкости выполняемых работ,- повышению профессионального уровня персонала,- улучшению комфортности условий работы.Автоматизированная информационная система реализуется через создание автоматизированных рабочих мест (АРМ). Автоматизированное рабочее место – конечная совокупность технических, программных и математических средств, с помощью которых автоматизируется персональное рабочее место. Это – технологическое понятие.АРМ – рабочее место специалиста, оснащенное компьютерной системой с входящими в нее информационными ресурсами для выполнения профессиональных функций. Кроме компьютера и комплекса программ, АРМ может содержать обучающую систему, средства настройки и эксплуатации АРМ.АРМ руководителя, АРМ специалиста и АРМ технического работника отличаются уровнем возможностей управления профессиональным процессом.АРМ специалиста включает в себя:- базу данных с персональной и корпоративной информацией,- возможность оперативного поиска информации,- средства оперативной связи с внешними источниками информации,- возможность моделирования процессов с учетом имеющегося опыта работы,- средства многофункциональности и гибкости системы.Составляющие АРМ не подвержены жестко регламентированным стандартам, их возможности могут варьировать в зависимости от профессиональных задач специалиста.
Коротко рассмотрим еще один тип вычислительных систем – кластерные суперкомпьютеры и особенности их архитектуры.Существует технология построения больших компьютеров и суперкомпьютеров на базе кластерных решений. По мнению многих специалистов, на смену отдельным, независимым суперкомпьютерам должны прийти группы высокопроизводительных серверов, объединяемых в кластер.Кластер - это связанный набор полноценных компьютеров, используемый в качестве единого вычислительного ресурса.Удобство построения кластерных ВС заключается в том, что можно гибко регулировать необходимую производительность системы, подключая к кластеру с помощью специальных аппаратных и программных интерфейсов обычные серийные серверы до тех пор, пока не будет получен суперкомпьютер требуемой мощности. Кластеризация позволяет манипулировать группой серверов как одной системой, упрощая управление и повышая надежность.Важной особенностью кластеров является обеспечение доступа любого сервера к любому блоку как оперативной, так и дисковой памяти. Эта проблема успешно решается, например, объединением систем SMP-архитектуры на базе автономных серверов для организации общего поля оперативной памяти и использованием дисковых систем RAID для памяти внешней (SMP — Shared Memory multiprocessing, технология мультипроцессирования с разделением памяти).Для создания кластеров обычно используются либо простые однопроцессорные персональные компьютеры, либо двух- или четырех- процессорные SMP-серверы. При этом не накладывается никаких ограничений на состав и архитектуру узлов. Каждый из узлов может функционировать под управлением своей собственной операционной системы. Чаще всего используются стандартные ОС: Linux, FreeBSD, Solaris, Unix, Windows NT. В тех случаях, когда узлы кластера неоднородны, то говорят о гетерогенных кластерах.При создании кластеров можно выделить два подхода. Первый подход применяется при создании небольших кластерных систем. В кластер объединяются полнофункциональные компьютеры, которые продолжают работать и как самостоятельные единицы, например, компьютеры учебного класса или рабочие станции лаборатории. Второй подход применяется в тех случаях, когда целенаправленно создается мощный вычислительный ресурс. Тогда системные блоки компьютеров компактно размещаются в специальных стойках, а для управления системой и для запуска задач выделяется один или несколько полнофункциональных компьютеров, называемых хост-компьютерами. В этом случае нет необходимости снабжать компьютеры вычислительных узлов графическими картами, мониторами, дисковыми накопителями и другим периферийным оборудованием, что значительно удешевляет стоимость системы.Основные достоинства кластерных суперкомпьютерных систем:• высокая суммарная производительность;• высокая надежность работы системы;• наилучшее соотношение производительность/стоимость;• возможность динамического перераспределения нагрузок между серверами;• легкая масштабируемость, то есть наращивание вычислительной мощности путем подключения дополнительных серверов;• удобство управления и контроля работы системы.Наряду с достоинствами, как и у любой технологии, у кластеризации имеются свои недостатки:• задержки разработки и принятия общих стандартов;• большая доля нестандартных и закрытых разработок различных фирм, затрудняющих их совместное использование;• трудности управления одновременным доступом к файлам;• сложности с управлением конфигурацией, настройкой, развертыванием, оповещениями серверов о сбоях и т.п.