Студопедия — Архитектурное решение. Данную архитектуру мы считаем нужным описать в трех представлениях
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Архитектурное решение. Данную архитектуру мы считаем нужным описать в трех представлениях






Данную архитектуру мы считаем нужным описать в трех представлениях. Пред­ставление процессов разъясняет реализацию распределения; многоуровневое пред­ставление помогает понять механизм разделения задач в Ship System 2000; наконец, представление декомпозиции на модули демонстрирует распределение обязан­ностей между несколькими крупными элементами системы: системными функ­циями (system functions) и группами системных функций (system function groups). Охарактеризовав архитектуру в категориях этих трех представлений, мы обсу­дим ряд проблем сопровождения и применения линейки продуктов, с которыми столкнулась компания CelsiusTech.

Представление процессов: удовлетворение требований по распределению и средства расширения линейки продуктов

На каждом процессоре исполняется набор Ada-программ; с другой стороны, Ada- программы исполняются в основном на одном процессоре. Каждая программа может состоять из нескольких Ada-задач. Системы в линейке продуктов SS2000 насчитывают до 300 Ada-программ.

Требование» касающееся исполнения на распределенной вычислительной плат­форме, оказывает на программную архитектуру серьезное влияние. Во-первых, оно подразумевает конструирование системы как набора взаимодействующих процессов и тем самым вводит в действие представление процессов. Само нали­чие представления процессов свидетельствует о применении тактики реализации производительности «введение параллелизма». Кроме того, в распределенных системах возникают задачи, связанные с предотвращением взаимоблокировки, протоколами передачи данных, отказоустойчивостью (на случай отказа процес­сора или канала связи), сетевым управлением, предотвращением насыщения и про­изводительностью (обеспечивающей координацию задач). Для обеспечения рас­пределенности применяется ряд соглашений. Они отвечают требованиям по распределенности архитектуры — в частности, тем ее аспектам, которые связаны с линейками продуктов. Среди задач и межкомпонентных соглашений нужно отметить следующие.

♦ Компоненты взаимодействуют путем передачи строго типизированных со­общений. Абстрактный тип данных и управляющие программы предостав­ляются компонентом, передающим сообщение. Строгая типизация позво­ляет устранять целые классы ошибок на этапе компиляции. Сообщение как основной механизм взаимодействия между компонентами обеспечивает возможность их написания вне зависимости от деталей (изменяемой) реа­лизации, касающихся представления данных.

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

♦ Средства назначения Ас1а-задач участвуют в реализации модели поточной обработки.

Выполняя свои функции, производитель данных не знает, кто окажется их потребителем. Содержание и обновление данных концептуально отделены от их использования. Это наглядный пример применения тактики реализации моди­фицируемости под названием «введение посредника» посредством образца класс­ной доски. Основным потребителем данных выступает компонент человеко-ма­шинного интерфейса. Компонент, в котором содержится репозитарий, называется универсальным менеджером объектов (common object manager, COOB).

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

Ниже перечислены соглашения по производству данных.

♦ Отправка данных производится только в случае их изменения. Это предот­вращает появление в сети избыточного трафика сообщений.

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

♦ С данными, которые они изменяют, компоненты связаны отношением при­надлежности; они поставляют процедуры доступа, исполняющие роль дис­петчеров. Поскольку к каждому блоку данных напрямую обращается толь­ко тот компонент, которому этот блок принадлежит, состязательность исключается.

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

♦ Благодаря распределению данных время отклика на запрос о поиске сокра­щается.

Рис. 15.13. Применение (и обход) менеджера СООВ

 

♦ В системе обеспечивается долгосрочная непротиворечивость данных. Крат­косрочная противоречивость допускается.

♦ Сетевые соглашения заключаются в следующем:

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

♦ Каналы передачи данных устойчивы к ошибкам. Приложения ориентиру­ются на устранение ошибок по большей части за счет внутренних ресурсов.

♦ «Пропуск» приложением нерегулярных обновлений данных считается до­пустимым. К примеру, местоположение судна постоянно меняется, и про­пущенное обновление информации о местоположении можно будет вывес­ти на основе сопутствующих обновлений.

♦ Существует также ряд других соглашений, не относящихся ни к одному из вышеперечисленных аспектов:

♦ Настраиваемость языка Ada широко задействуется как механизм повтор­ного использования.

♦ Применяются стандартные протоколы исключений языка Ada.

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







Дата добавления: 2015-04-16; просмотров: 521. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

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

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

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

Образование соседних чисел Фрагмент: Программная задача: показать образование числа 4 и числа 3 друг из друга...

Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

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

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

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия