автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Языковые средства программирования в объектно-базированной среде КЛАСТОС

кандидата физико-математических наук
Березин, Евгений Герольдович
город
Москва
год
1993
специальность ВАК РФ
05.13.11
Автореферат по информатике, вычислительной технике и управлению на тему «Языковые средства программирования в объектно-базированной среде КЛАСТОС»

Автореферат диссертации по теме "Языковые средства программирования в объектно-базированной среде КЛАСТОС"



российская академия наук

институт проблем кибернетики

На правах рукоппсц УДК 681.3.06

БЕРЕЗИН Евгений Герольдовнч

ЯЗЫКОВЫЕ СРЕДСТВА ПРОГРАММИРОВАНИЯ В ОБЪЕКТНО-БАЗИРОВАННОЙ СРЕДЕ КЛАСТОС.

Специальность 05.13.11 - "Математическое и программное обеспечепп? оьгшслптсльных машин, комплешл», систем п сетей".

I Автореферат диссертации ■ на соискание ученой степени кандидата физико-математических паук

I

I /

, ! i

I *

Моснпа 1993

/ /

/

российская академия- наук институт проблем кибернетики

Ш правах рукописи УДК 681.3,00

БЕРЕГШИ Евгений Герольдович

ЯЗЫКОВЫЕ СРЕДСТВА ПРОГРАММИРОВАНИЯ В ОБЪЕКТНО-БАЗИРОВАННОЙ СРЕДЕ КЛАСТОС.

Специальность 05.13.11 - "Математическое н программное обеспечение

нычислитеЛьшлх млишп, комплекаш, систем п сетей". |

I ■ !

I - ;

,' А'1И1орсфсриш ош'<:<¡ипиции I • );11 соисхчнш: учашй стс.т'.ии ышЛи^ита филика-мпгненптичсскиг ниук

I

Мискьа 1!Ш

Работа выполнена в Институте Проблем Кибернетики РАН.

Научный руководитель:

кандидат фиэико-иатеыатичеышх наук старший иаучщдй сотрудник И.Б.Бурдонов

Официальные опцоненты:

доктор физико-математических наук

Профессор,

Ю.Г.Дадаев

кандидат фнзико-матсматическнх наук старший научный сотрудник А.Н.Бирюков

Ведущая организация:

Факультет вычислительной математики и кибернетики МГУ

Защита состоится " * ^Р^. 1993 г. »/ У часов да

заседании специализированного совета К.СОЗ,78.01 Института Проблей Кцберьетшш РАН. ' ^

Адрес:117312, Москва, уд. Вавилова дом 37 Автореферат разослан в

1993 г»

Учонь|й секретер!» -срецц^щзароаапвого совета, Ii.0Q3.78.pl

■м.а.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы.

Создание и сопровождение сложных распределенных программны» систем с параллельно исполняющимися компонентами — операционных систем (ОС), систем управления базам» данных, встроенных управляющих систем, — сопряжено со значительными усилиями ц требует высокого уровня квалификации. Повысить продуктивность этой деятельности можно, применяя единый технологический Подход к разработке программ, основанный на эффективной методологии программирования. Очшь интересными и перспективными в этом отношении представляются методологии, основанные па понятии объекта и называемые объектными, или объектно-базированными. , Интегрировав многие идеи, исторически возникшие в разных областях —- от языков до операционных систем и баз данных, они характеризуются глобальным подходом К построению программных систем, и в недалеком будущем обещают стать общим свойством программистской культуры. Инкапсулировал-j ность объектов и их взаимодействия путем обмена сообщениями, лежа-! щис в основе модели объектного программирования, представляются хо-{ рошей базой для введения в эту модель свойств параллельности П распределенности. Подтверждением этому является большое чйсло объектных языков к систем с параллельными и распределенными объектами, появившихся в последние несколько лет.

Проект КЛАСТОС (первоначальное пазванис — "КЛОС") является призером применения объектного подхода к разработке онерацноц-ных систем и языков программирования. Проект направлен на построение объектно-базировашюн кластерной модели программирования, н создание реализующих эту модель среды функционирования объектов, и среды их разработки. Среда функционирования включает а качестве базового уровня микроядро и серверы кластерной операционной системы. Базовый уровень обеспечивает поведенческие аспекты объектоз кластерной модели; он ориентирован на прямое использование аппаратуры (в отличие от множества объектно-базированных систем, оформлеп-пых в виде "надстройки" над традиционной операционной системой —• как правило, UNIX). Среда разработка включает базовую систему программирования, позволяющую описывать .объекты кластерной иоделп. Характерной особенностью КЛАСТОС является пптегрироэапцост:»

; з *

cjn:;iu фушлшонирошпшя и срсды рачраГнаки. Благодаря шла риро-

ltilUHOf i И, КЛаСПфИаН МП.-Ц'ЛЬ ирпцсч atïT liU.il/Klllit !Ч\ДК> К ИНД!.1 «ЛИНИЙ ОД-

iloyiH'iiiit iioiï смасыы нонхтий. Ото, uo-iu.pnhn, 1-уш(ч:> ценно об:ии'ч:шт рачраГютиу программ и, (ю-ачорыч, «io:>inu«»vr Диспгчь ныпиаш стеиони защищенное ги, нале»:ногти и эффективности исполнения объектов.

Целы работы.

« 11(ч:.:«!Ломаши! нринаинии построен.« Па'пш<>»ч еисюмы проГрамми-ропання KJIACTOC, 0 учет ом струк iypu Кластерной модели.

* lVtpafi.ai.'a ЯП.1КИИЫХ rpiut.'ut описания иПы-кти кластерной мололи. J Ya..\4n.<i'HH n.i i«iiuii сисн.ми прогргшмирстання.

Научная шшиэпа,

Ос.шжимми новыми ропльыlov'iii Miusfio'icii следующие.:

в рачрайогапа специфическая для u.ia< тарной мололи архитектура Гщ-luriiiH СП с компонентами, рсаличуюн'ш.ми xhjk спецификации ин-тсрфг'нсо» ,межлу ои'ы'кча.ми, ячык программировании "»лемеигар-ных oiJWîKToii, и я пак опигашы «чипапиых обьектоп;

в ра ipat'ioгаю,» i.m.iia.iii,ii: сред« rua era t ичеааа и к динамического cua-Uiii<iiiii<i обы'кюи, синхронного и iii'iHixjioiiiioro тлимодейсгния fiß/.rh'Ji/!), с Ж!'«."! К»:;.! типпп'ым контролем <пячен;

* ¡>.ч»prtfioiaii нчыьоьый механизм игс-лмлеиш», t. ночможностьм рас-lipo«, хранен и я in.iv.ti rii'uiui ме.кду лсиилр'инн» исполнил >шнмж'к оС.Ы'Ктами по усптмкчеш/им пичмм;

* рачраГнл all u'Uiihoitl.i.: механизм ариидениь cciMiUi'iTipcrfiaiwioft lia-müti.i'i чГоа'кг«, с иппчацкеи cri метou i: птноси гпльных указателей по t'Vi МеЛ'д ¡'¡. I!

* jî44jj;»<>i> j asn.i M'ii.i^a-.wi: cpeaci ¡u оаисапич coriaulUJK асинхронных ы'.ьскы», г.рело! iаиляышне лолг.чоаа(Олю однородную иерархическую (алшоччиининум м«>аол1». .

Практическая ценность.

Опыт программирования микроядра и системных серверов КЛА-СТОС на начальных стадиях; проекта показал настоятельную необходимость в специфических для кластерной модели языковых средствах. В процессе работы над диссертацией такие средства были разработаны и реализованы в виде переносимой базовой системы программирования. Эта реализация работает в среде ОС UNIX на рабочей станции "Беста-88" и в настоящее прём к используется для построения новых версий МИкроядра н серверов." . •

Результаты проведенных исследований в накопленный опыт языкового дизайна могу г быть использованы в других работах по созданию объектно-базированных систем с асинхронно исполняющимися объекту

МИ. ,

Апробация работы.

результаты работы докладывались на научных семинарах отдела системного программирования (под рук. чл.-кор. РАН Ивашшкова В.П.)

Института проблем кибернетики РАН (1988-1902).

<

Публикации, f

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

I

Структура диссертации. I

Диссертация состоит из введения, 7 глаз, заключения, списка лцщ ратуры и 2 приложений. !

i •

I . '.I

| ■ I !

I

/ /

а

/

/ ;

/

/

СОДЕРЖАНИЕ РАБОТЫ

Во введении обосноиьшаегся актуальность теми диссертации, да' стся краткий обзор кластерной модели, анализируются ее характерные свойства, и определяется место КЛАСТОС в ряду других объектно-базированных систем. Дастся характеристика микроядра и системных , ; серверов, составляющих базовый уровень среды функционироьания обV .

V ектов. Обосновывается необходимость иитегрированиости среды фушс-; ■ ционирования и среды разработки. Формулируются требования к базо-• ' вой СП, являющейся минимальным базовым уровнем среды разработка.

В первой главе вводятся основные понятия кластерной модели и ; обсуждается архитектура базовой СП. Ключевыми п кластерной модели являются понятия кластера — элементарного активного объекта с одним потоком управления и собственным адресным пространством, подсистемы — составного объекта(с внутренней асинхронностью, и типа

V связи — структурного элемента спецификации интерфейсов между объ-: ; ектамн.

Любой программный продукт оформляется в среде КЛАСТОС в виде ; подсистемы или кластера. Базовая СП должна обеспечить полный цикл ¡/. разработки, начиная с исходных текстов, и кончая готовым к исполнению загрузочным модулем иодсистемы или кластера. Этот загрузочный модуль можно загружать на исполнение, или использовать как компонент \ при формировании загрузочных модулей более сложных программных ; й продуктов.

5 Архитектура базовой СГ1 отражает кругшоыосш габную гранулир^ V | иааность активных объектов, отсутствие у ник общих данных и возмог $ ность реализации одного интерфейса разними объектами. Эти свойства Г | дозволяют естсствецным образом провести два четких разграничении, ^ ^ рервое из которых разделяет способы описания элсмеитарвых и состав-|; иых объектов, а второе раздел «ет способы описания объекта к тцшщ$ $ его интерфейса. В результате, интерфейсы (типы связей), элементарны? : . (кластеры) и составные (подсистемы) объекты окалывается удобным оод- ' ' Х-: сывать на трас разных и довольно простых языках. Альтернативный здг' (• риавт разработки единого «зыка, охватывающего »сю систему поиятвф V ^астерной модели, был отвергнут по соображениям сложности раира* ! ьч/(5рткви реализации.

, ' \ Описываются «цгпекти реадезащщ базовой СП. Она включает в себ|

... ■

компоненты, |нча.11í >к>uни• ¡пик npoi ¡>aммisj>«>ií;íни.: г.лаг ..!;,:■;;•:>

днфиклшш типов спичей и язык описания íut.u «ом. Из:,;:. n; • ¡ ;.,¡: ;::.'> ixmamin кластером был получен пузем расширении ¡пир.■;..» {..ич:|чи-,-репейного языка Си; ои получал название "Снклис"'. Язык сш-пифи тнш/н <нязен и наезоищее крема реализован как ч.ил !> Сикл^са. S e:; ::: менее, требование отделения описаний гинов еллзей о г ¡к'лолнпх клас repon соблюдается.

Lío второй глине оиисываннея kohcíрукник спецификации :ц;; :.»> фейсов. Базовым элементом построения стчшфпклцнй лигерфекс-..:': :. сред»; KJIAC'i'OC является тип связи, предетавла нчцнй собой игбпр с::;:-саНии типов операций. Описание ка:илой операции залает опре.:;-л.л> ный h.'ün'i: изаимодойсзиий • ciu>cuó гиаимодействии а структуру даваемы.х сообщений.

Определены дна пила операций и, кчлиие Н Пн'ньо, лил способа üv¿.:-модейепшй: обычная операция и удаленна;: процедура. СЧ'пчшч операция ипыльзуется в тех случаях, когда взаимодействие г-

ся в передаче асинхронного сообщение о г клиента и серверу. Ул.'ггсг;-иаа процедура семантически нохо:ка на процедуру пли фу> с.Г:г-> ном последовательном :пике программнрозанц.т: она нм<..".'Г ::

оОратпые параметры, и при ее вызове подразумевается nompav получение отпета.

В окружение кластера входят типы связей, спеппфлпнру:jííuí- ;.rj изднмодейсгния, в которых кластер мо::.ег принимать участ;:л ..;•.:>.*.;; своего исполнения.

Типы связей пеподьзуютед для типового контроля при устллалпаппл сыпей между объектами, и при организации по инм взаимодейстппй. Для таього контроля введен «окашпн глобальной тикез cáe-

se и. ;

Известный ui языков с абстрак пшмп типами дашшх прпшшп отделения (пецификацик от реализации получает п кластерной моделт: д.гл:,-пейшее развитие: спецификации иитерфсассз (тгаш связан) пз про сто отделан «тс а от реализаций объектов (улсстероз и нояснстам), очая объект мол:ст представлять несколько ццтерфецсоз. Зто дглгг у.'гл циушестаа. Во-первых, ишшодгйстпуюкше с объекта: t ?г::р-п:срп чаазт возможность иметь различные гштер^с-лг.м с П:;-эт."ч::

патерфенс объекта с конкретным партерам trotrer яшепдтхеа « ем примени. Поэтому и кластерной нолелз nt:zzt емпся ;:« о

типе объекта, а о типе связи, представляющем "взгляд", "точку зрения" на объект.

В третьей главе описывается механизм управления доступом, регулирующий защиту взаимодействий объектов в среде К ЛАСТОС. Важными отличительными особенностями управления доступом в К ЛАСТОС является, во-первых, возможность установления как статических (на основе именного соответствия), так и динамических связей, и, во-вторых, типизированность связей, позволяющая осуществлять жесткий контроль взаимодействий.

Связь представляется двумя объектами: группой входов на сторожи" це сервера (принимающего сообщение объекта), и подключением на стороне клиента (объекта, посылающего сообщение). Группа входов ре-V ализует некоторый тип связи из окружения как клиента, так и серверу, а с подключением связано право вызова операций этого типа. В отличие от группы входов, которая описывается статически, подключение может порождаться и уничтожаться динамически. Кроме того, подключенце : можно передавать между кластерами, как параметр сообщений. При 1,;; этом право вызова операций по подключению переходит от передающего ! сообщение бластера к получающему.

Один и тот же тип свази может реализовыватьса различными группами входов в нескольких кластерах, или даже в одном кластере. Для посылки сообщений на входы какой-либо группы сервера, клиент не обц-? эан ничего знать о сервере, кроме типизированного подключения к атой группе. другой стороны, сервЬр может программироваться с учетом <; возможности его использования разными клиентами: одной группе входов сервера может соответствовать множество подключений, у одного или нескольких клиентов. Эти особенности управления доступом позио-Щу ляет программировать кластеры, очень мало зависящие от окрушшиц • | V исполнения, и нереиспользовать их в различных коитекстах.

■ж

К

К""'

Задача управления доступом сводится к организации порождения, уничтожение н передачи подключений. Сервер сам регулирует доступ К своим группам входов, порождая и уничтожая подключение к шш. Вла-| Щ. дельцем нового подключения является породивший его сервер. Это цод-||} ключенце далее мо&ет быть передано клиенту, ^ак параметр операции П клиенте, с передачей клиенту права владении подключением. После уничтожения сервером подключения вызовы операций по этому подключе-иаю игнорируютса ядром. • . * • -

1; в

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

В кластерной модели такой способ передачи связан с понятием сегмента, которое поддерживается на уровне ядра КЛАСТОС. Сегмеит — это непрерывная область виртуальной памяти кластера, рассматриваемая как единица управления памятью. Среди сегментов кластера выделены постоянно присутствующие сегмент кода а сегмент локального поля. Эти сегменты формируются компилятором Сиклоса; в них заносятся код функций, составляющих программу кластера, я все описанные объекты данных (кроме расположенных о статически порождаемых сегментах). • ] I

Как и любой объект данных в языке Си, сегмент занимает область па-! мяты, и представляет некоторые значения. Естественно поэтому опреде-Г лить языковое понятие типа сегмента. При этом возникают две трудности. Первая связана с тем, что размер динамически порождаемого; сегмента редко когда бывает известен заранее. В языке Си каждый тгад имеет фиксированный размер представления, п это не позволяет использовать его для статической спецификация структуры сегмента. Вторая трудность заключается в том, что о процессе исполнения кластера о дот ц тот же сегмент/может использоваться для хранения объектов разные типов, и это не позволяет типизировать область памяти сегмента статп- ¡,: чесип. ; . , ' Ьг7:'

Нами было принято компромиссное решение, согласпо которому область памяти сегмепта разбивается па лсагащую о его начала тшгазп» 11;,. ропаппую ча^ть фиксированного размера, со статически описдааексгЗ ' 1 структурой, и следующую за ней иотппазирооадпуго пасть, размер п >/ структура которой определяется о лшамтсе. Предполагается, что прп »

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

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

Стандартная библиотека языка Сиклос включает функции порождения, уничтожения, копирования н запроса длины сегмента, с помощью которых можно достаточно гибко управлять памятью кластера. Имеется возможность описания и инициализации порождаемы): в момент загрузки кластера статических сегментов. Инициализироваться может только типизированная часть статического сегмента.

Доступ к полям типизированной части сегмента производится с помощью операций языка Си "." ц "->": Доступ к данным в нетипизиро-ваниой части возможен только через указатели.

Передачу между кластерами сложных структур данных с внутренни-? ми ссылками (списков, деревьев и т.н.), естественно осуществлять, размещая эти структуры в сегментах. Здесь возникает трудность, связан-■ пая с тем, что адрес сегмента в памяти сервера после его передачи никак не связан с идресом этого сегмента в памяти клиента до передачи. Поэтому нельзя использовать в качестве внутренних ссылок обычные указатели язь|ка Си. В языке Сиклос внутрисегментная ссылка представляется специальным типом относительным указателем. Значенье относительного указателя интерпретируется, как смещение указываемого объекта .относительно начала некоторого ссгмеита, называемого базой. В некоторых случаях желательно разрешить разним кластерам работать над общими данными. Естественно, это нарушает пршииш инкапсуляции Как уступка, в кластерную модель вводится понятие разделяемо* |Ч) сегмента, который приписан одновременно к двум или нескольким £лис?ерам, в результате чего его страницы присутствуют в адресных Пространствах этих кластеров (вообще говоря, пи разным виртуальным адресам). Корректный доступ к разделяемому сегменту возможен при ; условие использования известных средств синхронизации процессов над общими данными (сигналов, семафоров и Т.д.). В кластерной модели эта средства моделируются с помощью операций, оцисашшх в типах связей. Имя разделяемого статического сегмента используется при комаоцорке

; ! / - 16 ■ V ■■■

подсистем лля ичождестлении описании одною и того же разделяемого (ViMciiia » j--а чличних оокектах.

И сдуп.мий глапе опигишнотс« конструкции «тыка опнсанна подсистем. 11олснсч ег,-а лродсганлясг соПоц совокупность пчаимогаязанных" и ИСПОЛНЯЮЩИХСЯ H режиме p<n.4CJi'[ilfí{ i)['C\.VHIi Н'ОМЛиНСПГОН, каждый in которых, h спою очередь, ложе может Оыть подсистемой. Вложенные друг н друга подсистемы оорачуют иерархию, па нижнем уроане которой на»»д>гкя кластеры. I'еа.'шчуемин ядром механизм разделения времени ииделжт процессорное нремя конкретному компоненту а соотло с rimú с ею местом а чюд иерархии п дпумн атрибутами; нрноримпом и числом Kiiiihfoiiaiwt* ко.мнотчпа н рамках объемлющей ею инд.ислемм. При-ори 11* ты 1длчь,1 очередность ныСорки на и«полнение компонентой, на-ходнчиш л и состоянии ожидания. Числи клан гоиаиия определяет долю данною компонента tío нременпом интервале, выделенном'компонентам с таким же приоритетом (и оог.емл! дцен подсистеме).

Компоненту ciaran тстиует загруючний модуль ('Ш), содержащий всю информации», необходимую ядру для организаппи его исполнения, j пк.'Мочая программный код его кластеров. ИМ может загружаться на не-1 Ношение динамически, лийо использоваться при комшшопке ИМ Полое! сложных компонентой. j

Исходный текст |кч кчмке описания подсистем представляет cofioHj последовательность описании компонентой. Описание компонента

I ¡ ■

вк.иоч.к г н сеол: ; !

! I

о пЬ'Цпфикашло ин ь-рфеиса; |

• енепификакшо реалтании;

в специфи кшпн нну i рпшец структуры. [.■

' ■ . г:

И шецифпкандд никрфгиса перечисляются имена, пходпых « выходных* раии'Моц ьочлюпен га, а также имена статических сегментов, которые миг-уг рачле/п; п.С)| с другими компонентами. Спецификация реализации ia лае г ими фг.нла 'Л M компонента н, кроме того, его дриорпрел'н число цнантогигдид а оЛьемлюшсн ¡юдсисгеме. ¡

Описания K.'.MUoneii ioa могу т вкладываться Друг » друга; при ЭТйМ роль Г>дона, определяющею оплат» нидтиюи описании, играет сиеци-фнкаты пну грешней структуры. Процесс сборки подсистем разОнши-тгя

иа ряд этапов, каждый из которых соответствует сборке одного компонента. Если в описании этого компонента опушена спецификация внутренней структуры, то считается, что данный компонент уже собран в его ЗМ находится в указанном файле. Этот ЗМ считываете* и проверяется соответствие его входных и выходных разъемов описанному интерфейсу. Далее он используется при сборке объемлющих компонентов. Если спецификация внутренней струкзгуры присутствует, то выполняется сборка ЗМ описываемого компонента, и этот модуль помещается к указанный, файл. ;

Г Структура може г содержать описания компонентов и описания ста-тичес^шх связей между ними. При установлении статической связи контролируется типовое соответствие замыкаемых разъемов — путем сравнения типов, связей, связанных с разъемами в ЗМ.

Нет необходимости все связи описывать явно: компоновщик умеет саг мостоятелъно, замыкать друг на„друга одноименные разъемы подобно тому, как это делается редактором связей при разрешении внешних ссылок. Явное замыкание требуется для связывания разноименных разъемов, ила при наличии коллизии имен разъемов (дл£ установления однозначности).

предлагаемый нами язык описания подсистем позволяет строить составные объекты с виут})еннсй асинхропностью, на базе описываемых на языке Сиклос элементарных объектов-кластеров. Подобные композшш* оввые средства можно рассматривать иак один из способов организаций повторного использования объектов. Особенностью нашего подхода являете« отделение средств композиции от средств описания элементарных объектов (что обусловлено их крупномасштабной гранулированаостыо).

В мрючецм приводятся результаты рабрты, выносимые иа защиту, описывается текущее состояние реализации базовой СИ КЛАСТОС Я обсуждаются возможные перспективы развития языковых средств.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ

о Исследовала, разработана и обоснована специфическая для кластерной модели архитектура СП, включающая о себя компоненты, реализующие язык спецификации интерфейсов, тык программирования кластеров и язык описания подсистем. Описания базовых объектов КЛАСТОС — типов связей, кластеров и подсистем, — разделены и используют различные языковые средства.

о Разработали и реализованы языковые средстпа управления доступом в среде асинхронных объектов и их взаимодействий, база-рующиеся на жестко контролируемых связях между объектами. Эти средства обеспечивают статическое и динамическое связывание объектов, динамическое управление связями, прозрачные асинхронные и синхронные взаимодействия по установленным связан.

в Разработаны и реализованы языковые средства описания, обработки и распространения параметризованных исключений, с возиогх-постью распространения глобальных (общих для нескольких аепп-хронно исполняющихся объектов) исключений по установлении« связям, и возможностью унифицированной обработки глобалышх и локальных исключений.

' ' ' ■ ' !

в Разработаны и реализованы языковые средства управления сегнеп- j

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

о Разработаны и реализованы языковые- средства оппслипа состап| пых асинхронных объектов — подсистем, обеспечивающие спецификацию коипопеитов подсистем п статических связей меаду Щ|-ми. Эта средства предоставляют пользователю Однородную комлей эицноппувд модель, отражающую иерархическую влоаепаость подсистем. /

о Реализован мобильный иросс-вариаот базозоД СП в среда ОС UNI

/

>

Üa.oum.H: j,rv/;u< 1,, ¡ :.; диитрлиши тли.ьешд » гд.'дуюимх публикациях:

1. Бсре шн Е.Г., Бурдоны» И.Б., Гайсарян С.С., К«*шл1<ш Г.IJ., Киса-мен A.C., Кузнецов С.Д. Основные концепции системы программирования КЛОС. //В сб. "Вопросы KHficjHitrruKu. Программное обеспечение высокогфоизводительнйч' систем". М: щд-во ИСК АН СССР, 1991, с.3-2-1

2. Берсшн Е.Г., Бурдоиов И.Б., Гайсарлн C.G., Кипи i он Г.В., Кога-чев A.C., Кузнецов С.Д. Система программирования КЛОС: язык СИКЛОС. // ВсП. "Вопросы кибернетики. Программное обспь:че-иис высокопроизводительных систем". М: изд-ио ИСК АН СССР, 1991, с.25-41

3. Берсзии Е.Г., Волохоа А.Г.,«Перминии ii.li. Реи.ыыннм ишьа Си-клос //В сб. "Вопросы кибернетики. Программное обеспечение высокопроизводительных систем". М: изд-в<» ИСК АН РАН, 1003. // В печати