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

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

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






Данную архитектуру мы считаем нужным описать в трех представлениях. Пред­ставление процессов разъясняет реализацию распределения; многоуровневое пред­ставление помогает понять механизм разделения задач в 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; просмотров: 519. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

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

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

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

ПРОФЕССИОНАЛЬНОЕ САМОВОСПИТАНИЕ И САМООБРАЗОВАНИЕ ПЕДАГОГА Воспитывать сегодня подрастающее поколение на со­временном уровне требований общества нельзя без по­стоянного обновления и обогащения своего профессио­нального педагогического потенциала...

Типы конфликтных личностей (Дж. Скотт) Дж. Г. Скотт опирается на типологию Р. М. Брансом, но дополняет её. Они убеждены в своей абсолютной правоте и хотят, чтобы...

Гносеологический оптимизм, скептицизм, агностицизм.разновидности агностицизма Позицию Агностицизм защищает и критический реализм. Один из главных представителей этого направления...

Функциональные обязанности медсестры отделения реанимации · Медсестра отделения реанимации обязана осуществлять лечебно-профилактический и гигиенический уход за пациентами...

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