3) Развитые средства поддержания проектировщика
4) Использовать готовые программные и информационные ресурсы
Разработчики общесистемных программных средств получает:
1) Новые возможности разделения труда благодаря повторному использованию программ.
2) Развитые инструментальные среды и системы программирования
3) Возможности модульной организации программных комплексов
38. Открытые системы и объектно-ориентированный подход
Суть ООПодхода: 1) Данные и процедуры объединены в объекты
2) Для связи объектов используется механизм посылки сообщений
3) Объединения в класс объектов с похожими свойствами
4) Объекты используют свойства других объектов через …. Класса
Особенности:
1) Инкапсуляция свойства ООС. Данные и процедуры скрываются от внешнего. Связь с объектами организуется набором сообщений
2) Полиморфизм (многозначность сообщений) – одинаковые сообщения по разному интерпретируются разными объектами (в зависимости от класса объекта)
3) Позднее связывание. Имя становится известно только во время выполнения программы.
4) Абстрактные типы данных. Объединение данных и определений для описания новых типов позволяет использовать новые типы наравне с существующими.
5) Наследование. Позволяет при создании новых объектов использовать свойства уже существующих.
Свойства:
1) Мобильность – инкапсуляция – позволяет скрыть машинно-зависимые части системы, которые должны быть реализованы заново при переходе на другие платформы. Гарантируется, что остальная часть системы не потребует изменений.
При реализации многое может быть взято из уже существующей системы, благодаря наследование.
2) Расширяемость – наследование, абстрактные типы данных. Позволяет сэкономить средства на создание системы, используя уже отлаженные компоненты – надежность.
Возможность конструирования абстрактных типов данных обеспечивается самим понятием классов, которые объединяют похожие объекты с одним набором операций.
3) Интероперабельность – полиморфизм, динамическое связывание. Сообщение объекту передается используя действия и некоторые дополнительные аргументы сообщения. Как это сделать – знает только сам объект – получатель сообщения.
4) Дружественность – мобильность необходима для смены старых устройств.
Расширения требуются для разработки программных способов общения человека с машиной.
39. Вычислительные системы. Назначение. Принципы построения. Признаки структурной и функциональной организации
Параллельные вычислительные процессы – конвейеризация, векторные вычислительные процессы, параллелизм.
Построение вычислительных систем: 1) Возможность работы в различных режимах 2) модульная структура 3) стандартизация 4) иерархия 5) адаптация 6) сервис
Структура ЭВМ ВС – совокупность компонентов и связей между ними. Архитектура ЭВМ – организация ЭВМ.
Функциональная классификация:
1) по назначению – универсальные и специализированные.
2) многомашинные и многопроцессорные
Основная особенность – параллельная работа процессоров и использование общей оперативной памяти обеспечивается единой общей ОС.
Недостатки: 1) возникновение конфликтов 2) применение коммутаторов.
3) по типу ЭВМ или процессоров – однородная или неоднородная
4) по степени территориальной разобщенности – совмещенные и распределенные
5) по типу управления – централизованное и децентрализованное управление
6) системы с жестким закреплением или с плавающим
7) по режиму работы – оперативный или неоперативный
40. Классификация архитектур вычислительных систем. Классификация Флинна
В основе два возможных вида параллелизма: независимость потоков заданий или команд и независимость данных, обрабатываемых в каждом потоке.
I – instruction, D – data, S – Sole, M – Multiple.
1) SISD – один поток команд и данных (ОКОД). Совмещение выполнения операций отдельными блоками АЛУ, а также параллельная обработка работы устройств ввода-вывода и процессора. Однопроцессорная ЭВМ.
2) SIMD (ОКМД)
Матричная структура. Система содержит некоторое число одинаковых сравнительно простых быстродействующих процессоров, соединенных друг с другом и с памятью данных регулярным образом так, что образуется сетка (матрица), в узлах которой размещаются процессоры. В системе имеется несколько потоков данных и один общий поток команд, т.е. все процессоры выполняют одновременно одну и ту же команду (допускается пропуск выполнения команды в отдельных процессорах), но над разными операндами, доставляемыми процессорам из памяти несколькими потоками данных. Другое название – системы с общим потоком команд. Возникает сложная задача распараллеливания алгоритмов решаемых задач для обеспечения загрузки процессоров. В ряде случаев эти вопросы лучше решаются в конвейрной системе.
3) MISD (МКОД)
Конвейрная МПС. Система имеет регулярную структуру в виде цепочки последовательно соединенных процессоров, так что информация на выходе одного процессора является входной для другого. Процессоры образуют процессорный конвейер. На вход конвейера одинарный поток данных доставляет операнды из памяти. Каждый процессор обрабатывает соответствующую часть задачи, передавая результаты соседнему процессору, который использует их в качестве исходных данных. Т.о. решение задач для некоторых исходных данных развертывается последовательно в конвейрной цепочке. Это обеспечивается подведением к каждому процессору своего потока команд, т.е. имеется множественный поток команд.
4) MIMD (МКМД)
Общий случай МПС, несколько потоков данных и команд.
41. Классификация Шора
1) Количество устройств управления
2) Количество АЛУ
3), 4) наличие и способ организации памяти команд и памяти данных.
Предполагается, что выборка данных может осуществляться двумя способами: словами или вертикальной выборкой.
Существует 6 машин.
Машина № 1.
Последовательная обработка слов при параллельной обработке разрядов. Считывание данных осуществляется выборкой всех разрядов данного слова. 1) Классические последовательные машины 2) конвейрно-скалярные 3) векторно-скалярные.
Машина № 2
Последовательная обработка битовых слоев при параллельной обработке множества слов.
Матричные машины.
42. Параллельные вычислительные системы. Основные классы современных параллельных вычислительных систем
Основныеклассы:
Massive Parallel Processing
Symmetrical MultiProcessing
Кластерныесистемы
Non-Uniform Memory Access
ParallelVectorProcessing
43. Способы доступа к модулям памяти параллельных компьютеров
1) Имеет ли каждый процессор локальную память?
2) Соединяет ли коммуникационная сеть все процессоры с общей памятью?
Способы:
1. Распределенная память. Система обмена сообщениями – только с помощью неё доступ к чужой локальной памяти.
2. Общая память – возможность прямого доступа к общей памяти посредством общей шины (высокоскоростной сети).
3. Виртуальная память «Глобальных адресов».
44. Современное состояние параллельных вычислительных технологий
Основных направлений развития высокопроизводительной вычислительной техники в настоящее время четыре. 1. Векторно-конвейерные компьютеры. Конвейерные функциональные устройства и набор векторных команд - это две особенности таких машин. В отличие от традиционного подхода, векторные команды оперируют целыми массивами независимых данных, что позволяет эффективно загружать доступные конвейеры, т.е. команда вида A=B+C может означать сложение двух массивов, а не двух чисел. Характерным представителем данного направления является семейство векторно-конвейерных компьютеров CRAY. 2. Массивно-параллельные компьютеры с распределенной памятью. Идея построения компьютеров этого класса тривиальна: возьмем серийные микропроцессоры, снабдим каждый своей локальной памятью, соединим посредством некоторой коммуникационной среды - вот и все. Достоинств у такой архитектуры масса: если нужна высокая производительность, то можно добавить еще процессоров, если ограничены финансы или заранее известна требуемая вычислительная мощность, то легко подобрать оптимальную конфигурацию и т.п. Однако есть и решающий "-", сводящий многие "+" на нет. Дело в том, что межпроцессорное взаимодействие в компьютерах этого класса идет намного медленнее, чем происходит локальная обработка данных самими процессорами. Именно поэтому написать эфф. прогу для таких компьютеров очень сложно, а для некоторых алгоритмов иногда просто невозможно. К данному классу можно отнести компьютеры Intel Paragon, IBM SP1, Parsytec, в какой-то степени IBM SP2 и CRAY T3D/T3E, хотя в этих компьютерах влияние указанного минуса значительно ослаблено. К этому же классу можно отнести и сети компьютеров, которые все чаще рассматривают как дешевую альтернативу крайне дорогим суперкомпьютерам. 3. Параллельные компьютеры с общей памятью. Вся оперативная память таких компьютеров разделяется несколькими одинаковыми процессорами. Это снимает проблемы предыдущего класса, но добавляет новые - число процессоров, имеющих доступ к общей памяти, по чисто техническим причинам нельзя сделать большим. В данное направление входят многие современные многопроцессорные SMP-компьютеры или, например, отдельные узлы компьютеров HP Exemplar и Sun StarFire. 4. Последнее направление, строго говоря, не явл-я самостоятельным, а скорее представляет собой комбинации предыдущих трех. Из нескольких процессоров (традиционных или векторно-конвейерных) и общей для них памяти сформируем вычислительный узел. Если полученной вычислительной мощности не достаточно, то объединим несколько узлов высокоскоростными каналами. Подобную архитектуру называют кластерной, и по такому принципу построены CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, последние модели IBM SP2 и другие. Именно это напр-ие явля- в настоящее время наиболее персп-м для конструирования компов с рекордными показателями производительности.