ЖУРНАЛ «СТА» №3/2004
строения систем с высокой живуче- стью, сохраняющих функциональ- ность при своей аппаратной деграда- ции (выходе из строя отдельных узлов кластера). В чём «тонкое место» приведённого в проекте кластера? Именно в про- грамме master , которая является син- хронизатором работы системы (напом- ню, во время активной работы хостов сам синхронизатор пассивен, и на его локальном хосте работает agent так же, как и на всех других хостах)! Однако ничто не препятствует за- пуску некоторого подобия master на всех без исключения узлах кластера, и чтобы при этом только одна про- грамма master из всех была активной, а все остальные (неактивные) пассив- но выполняли бы прослушивание её команд с целью кратчайшей реакции на обнаружение отсутствия работо- способной программы master в систе- ме. Какая из программ master будет ак- тивной, должно определяться в резуль- тате некоторой состязательной проце- дуры, которая проводится при началь- ной загрузке системы и при обнаруже- нии (по таймауту), что текущая актив- ная программа master неработоспособ- на. Например, каждая программа master на различных хостах может уве- домлять прочие хосты о своей готовно- сти; было бы хорошо, если временные задержки активации хостов заведомо различались. Здесь можно предложить рассмотреть некоторые «смешные» способы, например, поскольку кла- стер — сугубо сетевое творение, ис- пользовать в качестве задержки акти- визации хоста…MACадрес его сетево- го адаптера (вот уж точно не совпадет с другими!). Такая динамическая кластерная система могла бы стать особенно ин- тересной именно в QNXисполнении, учитывая embeddedвозможности этой ОС. Каждый модуль кластера вполне мог бы реализовываться на ка- комлибо умеренно мощном компью- тере, скажем, SBC формата PC/104 (Advantech, Octagon Systems, Fastwel, Diamond Systems, Lippert и др.) с про- цессором AMD 5x86. Всё программ- ное обеспечение как QNX, так и целе- вого кластера — в DiskOnChip. Вся взаимосвязь модуля с кластером осу- ществлялась бы посредством гальва- нически развязанного Ethernet, чтобы модули могли произвольно «на ходу» как добавляться, так и изыматься из кластера. А программное обеспечение кластера достаточно быстро и легко П Р О Г РАММНО Е ОБ Е С П Е Ч Е НИ Е / СИС Т ЕМЫ Р Е АЛ Ь НО ГО В Р ЕМЕ НИ 61 СТА 3/2004 www.cta.ru ● ПРОЦЕССОРЫ VME и СРСI ● ПЛАТЫ ввода-вывода VME и СРСI ● МОДУЛИ PMC ● КОММУНИКАЦИОННЫЕ КОНТРОЛЛЕРЫ ● ВЫСОКОСКОРОСТНЫЕ ИНТЕРФЕЙСЫ ВНЕШНЕЙ ПАМЯТИ ● ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ РЕАЛЬНОГО ВРЕМЕНИ ДЛЯ ОТВЕТСТВЕННЫХ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ #98 www.prosoft.ru devctl( DCMD_CLUST_GTF, … devctl( DCMD_CLUST_STS, … devctl( DCMD_CLUST_STK, … write( … ) read( … ) t (время) master agent сетевая среда передачи Рис. 3. Хронология распределённого вычислительного процесса
Made with FlippingBook
RkJQdWJsaXNoZXIy MTQ4NjUy