Диссертация (1148255), страница 3
Текст из файла (страница 3)
Алгоритм ролей и переходов для узлов МАС, в отличие от описанныхранее алгоритмов, учитывает высокую динамичность системы и обеспечивает её устойчивость к сбоям отдельных узлов.123. Концепция и интерфейс прикладного взаимодействия с DSM системойупрощают её использование и перенос на альтернативные аппаратныеплатформы, а также обеспечивают более высокий уровень защиты от ошибок прикладного программиста по сравнению с предложенными ранее.Теоретическая и практическая значимость.
Проведенное исследование стимулирует развитие МАС в сфере IoT. Разработанные методы и алгоритмы позволяют упростить создание прикладных решений в данной области.Результаты, изложенные в диссертации, могут быть использованы для разработки новых МАС систем, а также способов организации мультиагентного взаимодействия. При этом, впервые DSM система реализована для маломощныхустройств без MMU, что расширяет возможности их применения.Представленные механизмы позволяют снизить «порог вхождения» в область создания ПО для МАС, предоставляя прикладным разработчикам простой способ координации множества устройств, снижая тем самым стоимостьновых разработок в данной области.Основные научные результаты диссертационной работы внедрены в коммерческий продукт ОСРВ МАКС (операционная система реального временидля мультиагентных когерентных систем) и, вместе с ОС, используются в серийно производящемся оборудовании АО «ПКК Миландр»1 .Методология и методы исследования.
Методология исследования характерна для области предметной инженерии и заключается в идентификации ианализе проблемы, формулировании цели и задач, анализа состояния исследований и существующей литературы по вопросу, проектировании решения, выборесредств и технологий, реализации, проведении экспериментов и апробации.В качестве методов используются перечисленные ниже.– эмпирический метод (анализ литературы);1Один из ведущих российских разработчиков интегральных микросхем.13– методы сравнения, обобщения, причинно-следственный (анализ существующих решений);– метод индукции (формирование теоретического решения);– методы объектно-ориентированного программирования (программная реализация);– моделирование и эксперимент (анализ результатов реализации).Кроме того, системный, причинно-следственный и сравнительный виды анализа были применены для получения практически всех основных научных результатов.Положения, выносимые на защиту.1.
Модель консистентности, позволяющая добиться лучших характеристикв заданной предметной области по сравнению с моделями, взятыми за основу.2. Алгоритм ролей и переходов для узлов МАС, обеспечивающий устойчивость системы к сбоям отдельных узлов.3. Концепция и интерфейс прикладного взаимодействия с DSM системой,упрощающие её использование и перенос на альтернативные аппаратные платформы, а также обеспечивающие более высокий уровень защиты от ошибокприкладного программиста.4. Модель, алгоритм и концепция воплощены в программном решенииМАКС DSM, произведены измерения характеристик решения на специальносозданном оборудовании и программной имитационной модели.Степень достоверности и апробация результатов. Достоверность результатов работы обеспечивается анализом состояния исследований в даннойобласти, докладами и публикациями по основным результатам, проведеннымиэкспериментами и успешным внедрением.Основные результаты диссертационного исследования докладывались и обсуждались на следующих мероприятиях.14– X Всероссийской межведомственной научной конференции «Актуальныенаправления развития систем охраны, специальной связи и информациидля нужд органов государственной власти Российской Федерации» проводимой Академией Федеральной службы охраны Российской Федерации7-8 февраля 2017 года в г.
Орёл;– IV Научно–практической конференции OS DAY «Операционная системакак платформа», проводимой Институтом системного программированияРАН (ИСП РАН), 23-24 мая 2017 года в г. Москва;– Семинаре «Актуальные проблемы создания бортовой системы навигациии навигационно-гидрографического обеспечения морских робототехнических комплексов (МРТК)», проводимом АО «ГНИНГИ» под руководством ФГБУ «ГНИИЦ РТ» 27 октября 2017 года в г.
Санкт-Петербург.Результаты исследования в виде программной реализации разработанныхмеханизмов внедрены и являются существенной частью российской операционной системы реального времени МАКС.Механизм распределённой общей памяти, интегрированный в ОСРВМАКС, был внедрён [8] и демонстрировался в работе на серийно выпускаемой АО «ПКК Миландр» продукции на 20-й Международной выставке электронных компонентов, модулей и комплектующих «ЭкспоЭлектроника» 25-27апреля 2017 года.Публикации.
По основным теоретическим и практическим результатамдиссертации лично автором опубликовано 5 статей [2–6] в журналах из перечня, рекомендованного ВАК Минобрнауки России для публикации результатовдиссертационных исследований.Также автор является обладателем Свидетельства о государственной регистрации программы для ЭВМ № 2016617143 на ОСРВ МАКС (операционнаясистема для мультиагентных когерентных систем) от 28 июня 2016 г., выданного Федеральной службой по интеллектуальной собственности [7].15Личный вклад автора. Все основные научные положения, выводы ирекомендации, составляющие содержание диссертационного исследования, получены автором лично.Структура и объем диссертации.
Диссертация состоит из введения,основной части (содержащей 3 главы), заключения, списка сокращений и условных обозначений, списка литературы, списка иллюстративного материала, списка таблиц и приложения. Общий объем диссертации – 133 стр., работа содержит30 рис. и 4 табл. Список литературы включает 53 наименования на 7 страницах.16Глава 1. Исследования и терминологияпредметной областиКак было рассмотрено выше, обеспечение когерентности данных — однаиз основных задач в МАС.
Вместе с тем данная задача имеет концептуальныеаналоги также и в других областях научного поиска. Выделение направленияМАС, с одной стороны, позволило точнее очертить круг исследуемых вопросов,характерных именно для данного направления, с другой же – первоисточникиотдельных проблем нового направления стали менее очевидны, что осложняет использование существующих решений или подходов, развитых в смежныхнаправлениях. Ситуацию зачастую также осложняет отсутствие единой терминологической базы у исследователей разных направлений, поэтому одна и таже задача может встречаться в разных публикациях под различными «именами». С целью введения в проблемную область и знакомства с используемойразнообразной терминологией в данной главе рассмотрим ряд публикаций посвящённых исследуемой теме и выделим наиболее употребительные термины,часть из которых будем использовать в дальнейшем1 .1.1.
Концепции доски объявлений и DSM в МАСОдна из базовых концепций координации агентов в теории МАС – «доскаобъявлений» (англ. blackboard) [21], описывающая систему взаимодействиянескольких «источников знаний» посредством некоторой общей структуры данных (рис. 1.1). В качестве иллюстрации часто предлагают представить группуспециалистов, расположившихся рядом с доской, и совместно решающих некоторую задачу, обмениваясь промежуточными результатами посредством заметокна этой доске и наблюдая, что на ней пишут другие участники.1Далее выделено заведомо больше терминов, чем используется в работе, однако каждый из выделенныхтерминов может представлять интерес с точки зрения развития данного исследования в будущем.17Источник знанийДоска объявленийИсточник знанийРисунок 1.1 – Концепция доски объявленийДанная концепция была весьма популярна на заре развития МАС, но постепенно исследовательская активность по этой теме снизилась [52, с. 398].
Возможно, дело в том, что за красивой метафорой по сути не было концептуальнойновизны, и даже там, где термин «доска объявлений» использовался, наравнес ним часто можно было встретить альтернативный термин «общие данные»(англ. shared data) [52, с. 397] или «общая память» (англ.
shared memory)[38, с. 82], используемый в литературе существенно чаще.Так как МАС, по сути, являются децентрализованными системами, расширим исходную концепцию, заменив центральное хранилище данных децентрализованным — то есть распределённым. В обновленном виде концепцию можноназвать «распределённая доска объявлений» или «распределённая общаяпамять» (англ. distributed shared memory – DSM).
Последний термин точно соответствует предмету настоящего исследования и сопровождается множеством публикаций и по сегодняшний день.1.2. Возникновение концепции DSMТермин DSM существовал еще до выделения МАС в отдельное научноенаправление и, по всей видимости, зародился в процессе развития многопроцессорных вычислительных систем, относясь изначально к аппаратному обеспечению. В некоторых источниках можно встретить утверждение, что аппаратное обеспечение зачастую намного опережает программное [9, с. 590].
Обычноимеется в виду ситуация, когда аппаратные решения создаются быстрее, чемэффективные методики их программного использования. Однако возможна ситуация, когда проблемы, встающие перед ПО, когда-то уже были решены в тойили иной форме разработчиками аппаратуры. По отношению к исследуемому18нами вопросу мы, по всей видемости, имеем дело именно с такой ситуацией.Обзор архитектур многопроцессорных вычислительных систем можно найти, например, в книге [9]. Наиболее яркие представители – мультипроцессоры,мультикомпьютеры и распределённые системы.
Кратко резюмируем соответствующее развитие вычислительных систем, выявив предпосылки возникновения DSM.Мультипроцессоры — системы с несколькими процессорами, имеющимиобщую память (англ. shared-memory multiprocessor, рис. 1.2). Как мы видим, понятие «общая память» присутствует уже здесь, а сравнение рис. 1.1 и1.2 очевидно показывает идентичность концепций. Память является в данномслучае общей на физическом уровне (одни и те же микросхемы памяти доступны нескольким центральным процессорам). Проблемы синхронизации ужеимеются, так как несколько процессоров одновременно работают с общим ресурсом, но синхронизировать требуется только доступ к памяти (так как памятьимеется в единственном экземпляре, проблема синхронизации содержимого невозникает).Центральный процессорОбщая памятьЦентральный процессорРисунок 1.2 – Концепция мультипроцессорной системы с общей памятьюВ простейшем случае проблема с синхронизацией доступа решается использованием общей шины работы с памятью (рис.
1.3, а), что предотвращает саму возможность одновременно выполняемых операций с последней. Однако с возрастанием количества центральных процессоров (ЦП), общая шинабыстро становится узким местом системы, для предотвращения чего к каждому центральному процессору может быть добавлена собственная кэш-память(рис. 1.3, б ). С одной стороны, это позволяет реализовать многие операции чтения данных без задействования общей шины, локально, но, с другой, возникаетпроблема обеспечения когерентности кэшей. Процедуры, обеспечивающие этукогерентность, называются протоколом поддержки когерентности кэшей19(англ. cache-coherence protocol). Несмотря на то, что проблема решается нааппаратном уровне, концептуально она очень близка исследуемой нами проблеме.ЦПЦПОбщая памятьЦПЦПОбщая памятьКэшКэшШинаШина(а) Элементарный вариант(б ) Вариант с кэшемРисунок 1.3 – Система с общей памятью и шиной данныхС ростом количества ядер резко возрастает сложность аппаратуры и требования к ресурсам процессора для обеспечения согласованности кэшей.
Существуют опасения, что барьер применения данной технологии — несколько сотенпроцессоров. Проблема имеет собственное название барьера согласованности (англ. coherency wall). Один из вариантов решения — отказ от общейпамяти вообще и переход к концепции локальной, а значит распределённойпамяти (англ. distributed memory), в которой взаимодействие между процессорами организуется через механизмы передачи сообщений по шине данных(рис. 1.4). В отличие от мультипроцессоров, которые предлагают простую модель взаимодействия множества центральных процессоров посредством общейпамяти, здесь мы имеем так называемые тесно связанные процессоры, общейпамяти не имеющие — такие системы называются уже мультикомпьютерами (атакже кластерными компьютерами, англ.