Розподілене програмування h2>
С. С. Гайсарян, Інститут системного програмування
РАН p>
Розвиток
сучасної обчислювальної апаратури характеризується чітко вираженою
тенденцією розповсюдження багатопроцесорних комп'ютерів і обчислювальних мереж
як локальних, так і глобальних. Вже недалеко той час, коли навіть персональні
комп'ютери будуть мати кілька процесорів а найбільш потужні з них можуть навіть
мати мережеву архітектуру. p>
Тому
в галузі програмного забезпечення викликають все більший інтерес мови та інші
інструментальні засоби, що підтримують розробку розподілених програм.
При цьому можна виділити три рівні розподіленого програмування: p>
розподілене
програмування в малому; p>
розподілене
програмування у великому; p>
розподілені
прикладні програмні системи. p>
Розподілене
програмування в малому пов'язане з паралельним виконанням операторів однієї
програми (наприклад, паралельним виконанням циклів). Технологія розробки
розподілених програм пов'язана з реалізацією комунікаційних пакетів, а також
мов програмування і бібліотек, що полегшують використання таких пакетів.
Прикладами комунікаційних пакетів можуть служити такі широко використовувані
пакети як PVM і MPI. З мов, що спираються на ці пакети слід виділити
перш за все HPF/2 (High Performance Fortran, version 2) і мову, розроблений
в ИСП РАН, - mpC. Серед численних бібліотек найбільш цікаві різноманітні
алгебраїчні бібліотеки (наприклад, ScalaPack), а також бібліотеки, що вводять
паралельні конструкції в стандартні мови програмування (один з таких
бібліотек DPJ - Data Parallel Java - розробляється в ИСП РАН). p>
Розподілене
програмування у великому полягає в розробці розподілених програмних
систем. Останнім часом широко використовуються об'єктно-орієнтовані
технології розробки таких систем. Найбільш відомі такі технології пов'язані
з системою стандартів OMG (стандарт CORBA). p>
Розподілені
прикладні програмні системи призначені для підтримки колективних
розробок та інших видів колективної діяльності в самих різних областях.
У таких системах використовуються новітні досягнення в галузі обчислювальної
техніки та комунікацій. Прикладом такої системи може бути система POLITeam
(GMD-FIT, Німеччина), основною метою якої є забезпечення оперативної
роботи уряду Німеччини, розташованого в двох містах - Берліні та Бонні,
в даний час є в наявності як апаратні, так і програмні засоби,
що дозволили реалізувати і успішно експлуатувати таку систему. З проектом
POLITeam пов'язано одне з провідних наукових напрямків GMD - "Системи
підтримки спільних розробок на основі комунікації "(Communication and
Cooperation Systems). Це одне з інтенсивно розвиваються
науково-дослідних і прикладних напрямків сучасної інформатики.
Широко відомі такі системи для організації спільної роботи як система
Totem, розроблена в Університеті м. Санта-Барбара, Каліфорнія, США, система Transis,
розроблена в Університеті м. Єрусалиму, Ізраїль, система Horus Корнельського
Університету (США) та багато інших. При розробці та реалізації перерахованих
систем застосовувалися різні підходи, що дозволяє розробити їх
аналітичний огляд з метою вибору найбільш дешевого і прийнятного підходу. Це
відноситься і до інструментальних програмних засобів, які використовуються для
реалізації систем підтримки спільних розробок. Одним з широко відомих
інструментальних засобів, що використовуються при розробці та реалізації таких
систем, є пакет Rampart Toolkit, розроблений в AT & T Bell
Laboratories, Нью-Джерсі, США. Для реалізації системи підтримки спільних
розробок у рамках проекту POLITeam використовувалася інша не менш відома
інструментальна система LinkWorks фірми Digital Equipment Corporation, США. p>
Список літератури h2>
Для
підготовки даної роботи були використані матеріали з сайту http://www.citforum.ru/
p>