Главная » Просмотр файлов » И.А. Волкова, И.Г. Головин, Л.Е. Карпов - Системы программирования

И.А. Волкова, И.Г. Головин, Л.Е. Карпов - Системы программирования (1114897), страница 30

Файл №1114897 И.А. Волкова, И.Г. Головин, Л.Е. Карпов - Системы программирования (И.А. Волкова, И.Г. Головин, Л.Е. Карпов - Системы программирования) 30 страницаИ.А. Волкова, И.Г. Головин, Л.Е. Карпов - Системы программирования (1114897) страница 302019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 30)

Примером системы, позволявшей создавать прикладные системы типаклиент/сервер на вызовах удаленных процедур, является система DCE (DistributedComputing Environment), предложенная группой Open Software Foundation (OpenGroup). Процесс подготовки программ на языке Си к работе выглядит в системе DCEтак:Генерация ключаФайл определения IDLКомпилятор IDLФайл-заголовок клиента/сервера (*.h)Код клиента/сервераКод переходника клиента/сервераКомпилятор СиКомпилятор СиМодуль клиента/сервераМодуль переходника клиента/сервераБиблиотекаКомпоновкаПрограмма клиента/сервера105В состав DCE входит много компонентов: языки, библиотеки, службы.Созданные клиенты и серверы могут оказаться самыми разными.

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

Этакомпиляция формирует три файла:•••файл-заголовок (например, "interface.h")файл клиентского переходникафайл серверного переходникаВ файл-заголовок из исходного описания на IDL передаются уникальныйидентификатор интерфейса, определения типов, констант и описания функций(прототипы). Клиентский переходник содержит те процедуры, которые будетнепосредственно вызывать клиентская программа. Эти процедуры непосредственноотвечают за подбор параметров и их упаковку в исходящие сообщения споследующими обращениями к системе для их отправки. Переходник также занимаетсяраспаковкой ответов, приходящих от сервера, и передачей значений, содержащихся вэтих ответах, клиенту. Серверный переходник организован также, но по отношению ксерверу.Следующий шаг – написание реальных программ клиента и сервера.

После ихкомпиляции и компоновки (с библиотечными добавками) формируются обеисполняемые программы – клиентская и серверная.В целом, DCE – это попытка стандартизовать понятие удаленного вызовапроцедуры. Впоследствии, когда широко распространились принципы и приемыобъектно-ориентированного программирования, система DCE также была расширена идополнена объектно-ориентированными языками.5.2. Технологии COM/DCOMТехнология COM (Component Object Model) и ее вариант для распределенныхсистем DCOM (Distributed COM) была разработана компанией Microsoft.

DCOMявляется расширением технологии СОМ и включает в себя среду распределенныхвычислений DCE и механизм удаленного вызова процедур.Общий подход при использовании той или технологии таков: клиентскаяпрограмма использует объекты своего программного сервера так, как если бы этиобъекты являлись частью клиентской программы. Основную роль, как и во всехсистемах клиент/сервер, играет интерфейс объектов, формируемый при помощинекоторого языка IDL, в данном случае – объектно-ориентированного. Клиент знает обиспользуемых объектах только их интерфейсы. Сервер предназначен для реализацииобъектов, он представляет собой программу, содержащую, кроме всего прочего, ещеодин или несколько объектов, построенных в соответствии с моделью СОМ.106Реализации объектов создаются на основе нескольких классов, каждый из которыхпредставляет различные варианты поведения объекта.Переходкобъектно-ориентированномувзаимодействиюпривелксущественному пересмотру модели удаленного вызова процедуры и появлению моделиудаленного обращения к методу.

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

Как и прииспользовании "классического" удаленного вызова процедуры, при удаленномобращении к методу не только клиент не знает о том, что взаимодействует с удаленнымсервером, но и сервер не знает, что обращение к нему осуществлено со стороны.Система автоматически строит взаимодействия клиента и сервера, независимоот того, как клиент и сервер распределены по компьютерам: они могут исполняться•••на одном компьютере в рамках единого процесса, при этом взаимодействиемежду клиентом и сервером происходит при помощи интерфейса объекта ведином адресном пространстве с использованием динамических библиотек.на одной машине в рамках разных процессов, при этом между клиентом исервером возникают два промежуточных звена, а схема взаимодействиястановится похожей на сокращенную схему удаленного обращения к методу(с переходниками, маршалингом и демаршалингом, но без выхода в сеть).на различных (вообще говоря, несовместимых друг с другом аппаратно иимеющих разные операционные системы) компьютерах в рамкахинформационной сети (технология DCOM), использующих модельудаленного обращения к методу полностью, включая сериализацию иобработку сообщений.Система СОМ не является системой программирования в классическомзначении этого термина.

Это, скорее, система библиотек компонентов и правил ихиспользования. Однако система COM содержит все элементы, необходимые дляпостроения распределенной системы, в частности, компонентную модель, библиотекиклассов, которые могут быть импортированы для анализа структуры серверов СОМ,универсальный протокол обмена между клиентами и серверами и другие.ТехнологиюСОМмогутподдерживатьсамыеразличныеязыкипрограммирования. В настоящий момент наиболее широко используются Visual Basic,Си++ и Delphi. Однако разработчик системы (компания Microsoft) объявила этутехнологию устаревшей и активно продвигает другой подход – технологию .NET.Основной недостаток технологии COM, который и привел к отказу от нее, этосерьезные ограничения в организации взаимодействия между разными платформами,которые постоянно возникают в глобальных сетях.

Определенными недостатками иограничениями обладает и выбранный для систем COM язык Microsoft IDL, в которомнедостаточно развиты средства объявления типов данных, из которых строитсяпрограмма. В целом, технологию COM/DCOM обычно используют для построениянебольших распределенных систем, имеющих не очень большое число узлов.1075.3. Брокеры объектов CORBAБолее адекватно соответствующим принципам построения распределенныхсистем, чем системы "клиент-сервер", надо признать системы не двухуровневые, аимеющие, по крайней мере, еще один "промежуточный" уровень, позволяющийразделить решаемые задачи на "клиентские" и "серверные" части.

В двухуровневыхсистемах клиентские части чаще всего связаны с отображением данных в виде,адекватно соответствующем конкретной прикладной области, назначение серверныхчастей – выполнять основные прикладные программы и программы системнойподдержки. Наличие промежуточного уровня (для обозначения которого частоиспользуется англоязычный термин middleware) существенно расширяет возможностираспределенных систем. Системы "клиент-сервер" в качестве одной из самых своихсерьезных проблем имеют ограниченность возможностей сервера по связи со многимиклиентами одновременно.

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

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

Одним из примеров такой стандартизации являетсястандарт брокера объектов CORBA (Common Object Request Broker Architecture).Брокером объектов называют распределенные системы программного обеспечения,основанные на использовании понятия распределенного объекта и модели удаленногообращения к методам этого объекта, являющейся объектно-ориентированнымрасширением модели удаленного вызова процедуры.Стандарт CORBA – это спецификация для создания и управления объектноориентированными приложениями, распределенными в вычислительной сети. Внастоящее время выработано несколько версий стандарта CORBA, первая из которыхбыла разработана в начале 90-х годов консорциумом Open Management Group,включавшим более 800 компаний.

Характеристики

Тип файла
PDF-файл
Размер
1,2 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6311
Авторов
на СтудИзбе
312
Средний доход
с одного платного файла
Обучение Подробнее