Главная » Просмотр файлов » В. Столлингс - Операционные системы

В. Столлингс - Операционные системы (1114679), страница 130

Файл №1114679 В. Столлингс - Операционные системы (В. Столлингс - Операционные системы) 130 страницаВ. Столлингс - Операционные системы (1114679) страница 1302019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Альтернативный подход состоит в применении блокирующих, или синхрон-,'з" ных„примитивов. Блокирующий вызов Вепб не возвращает управление процессУ '" до тех пор, пока письмо не будет отправлено (ненадежный сервис), или до тех ., пор, пока сообщение не будет доставлено адресату и не будет получено подтвер- -' ждение получения (надежный сервис). Блокирующий весе'ъе не возвращает Управление до тех пор, пока сообщение не будет помещено в буфер-приемник. ф 'ф а 1. Вызов процедуры — широко распространенная, используемая и понятная абстракция. 2.

Использование вызова удаленных процедур позволяет задавать удаленный интеРфейс как множество именованных опеРаций опРеделенного типа. 1'а ким образом, интерфейс можно точно документировать, и распределенные программы смогут выполнять статическую проверку типов. 3. Поскольку интерфейсы стандартизованы и точно определены, коммуника ционный код может генерироваться автоматически. 4. Поскольку интерфейсы стандартизованы и точно определены, разработчики могут создавать клиентские и серверные модули, которые требуют мини мальных доработок при переносе между различными компьютерными платформами и операционными системами.

Вызов удаленной процедурц Рис. 13Л2. Мехап м .Ова удаленп про„,дур Механизм вызова удаленных процедур может рассматриваться как усовершенствованная надежная блокирующая передача сообщений. Набросок архитектуры ВРС представлен на рис. 13.10,б; более детально она приведена на Рис. 13.12. Вызывающая программа осуществляет обычный вызов процедуры с параметрами на своей машине, например СА1 1, Р~Х, У), где Р— имя процедуРы. Х вЂ” передаваемые аргуменгы, а У вЂ” возвращаемые значения. Этот вызов может приводить к прозрачному для пользователя выполнению удаленной процедуры на другой машине.

В адресное пространство пользователя должна быть включена процедура-заглушка Р (которая также может быть динамически подключена в момент вызова). Эта процедура создает сообщение, которое идентиФицирует вызываемую процедуру и включает передаваемые ей параметры. Затем процедура-заглушка пересылает зто сообщение удаленной системе и ожидает от нее ответ. Когда ответ получен, заглушка возвращает управление вызывающей программе, передавая ей возвращаемые значения. 'Часть 6.

Распределенные систе Глава 13. Распределенные вычисления, архитектура... На удаленной машине с вызываемой процедурой связана другая программа- заглушка. Когда поступает сообщение, заглушка обрабатывает его и генерирует локальный вызов САЕХ. Р~Х, У) Таким образом, эта удаленная процедура вызывается лак~льна, так что не надо специально заботиться а передаче параметров„состоянии стека и т.п. — вызов абсолютно идентичен вызову обычной локальной процедуры.

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

Передача параметров по значению идеально подходит для вызова удаленной процедуры: параметры при этом просто копируются в сообщение и пересылаются удаленной системе. Реализовать передачу параметров по ссылке сложнее — при этом для каждого объекта потребуется свой, уникальный в пределах системы, указатель. Накладные расходы при реализации возможности передачи параметров по ссылке обычно настолько велики, что овчинка выделки не стоит.

Представление параметров Еще одни вопрос заключается в способе представления параметров и результата работы процедуры в сообщении. Если вызывающая и вызываемая программы написаны на одном языке программирования для одного типа машин, находящихся под управлением одной и той же операционной системы, то представление параметров проблем не вызывает. Однако если перечисленные характеристики различны, то иемедленно возникают вопросы представления чисел ~и даже текста) в различных системах. Использование архитектуры, в которой эти вопросы решаются на уровне представления, приводит к высоким накладным расходам, так чта зачастую ответственность за преобразование передаваемых параметров ложится на средства вызова удаленных процедур (см., например, ~01ВВ871).

Наилучший подход к решению этой проблемы заключается в использовании стандартизованного формата для распространенных объектов, таких„ как целые числа, числа с плавающей запятой, символы и строки. В таком случае при передаче данные конвертируются из представления в данной конкретной машине в стандартное представление. Связывание клиент/сервер Связывание (Ь1пй1пй) определяет, каким образом будет установлена взаимосвязь между удаленной процедурой и вызывающей программой. Связывание формируется, когда два приложения устанавливают логическую связь и готовятся к обмену командами и данными. Непостоянное связывание (попрега1э1еп1 Ыпй~пя) означает, что логическая связь между двумя процессами устанавливается во время вызова удаленной процедуры и немедленно уничтожается после получения возвращаемого значения.

Поскольку соединение требует поддержки информации о состоянии на обоих концах, оно потребляет ресурсы. Соответственно, непостоянное связывание по-,: зволяет эти ресурсы сэкономить. На, с другой стороны, при этом мы получаем,': излишние накладные расходы по установлению связывания при каждом вызове процедуры, так что этот метод плохо подходит в случае частого вызова удален ных процедур одной и той же вызывак1щей программой. При постоянном связывании (регэ1э1еп$ Ьшйшя) связь устанавливается при вызове удаленной процедуры, но по окончании вызова не уничтожается. Эта же связь может использоваться и для других вызовов удаленных процедур. Если в течение предопределеннога промежутка времени не осуществляется ни один вы зов, такая связь с целью экономии ресурсов разрывается. Этот метод хороша подходит для интенсивного вызова удаленных процедур, позволяя множеству вызовов использовать одно и та же соединение.

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

Для обеспечения большей гибкости и большей степени параллельности реализованы различные варианты асинхронного КРС, сохраняющие простоту и удобство традиционных вызовов удаленных процедур )АХАХ92). Асинхронные вызовы не блокируют вызывающую программу; ответ может быть получен вызывающей программой тогда, когда он ей потребуется, так что клиент может продолжать работу параллельно с обработкой его запроса сервером.

Обычно асинхронный ВРС используется для того, чтобы позволить клиенту сделать несколько запросов к серверу, каждый со своим набором данных, не дожидаясь его ответов. Синхронизация клиента и сервера при этом может быть выполнена одним из двух способов. 1. Приложение-клиент дожидается ответа на все отправленные запросы. 2. По окончании выполнения последовательности асинхронных ВРС клиент выполняет синхронный вызов удаленной процедуры. Сервер ответит на синхронный вызов толька по окончании обработки всех предшествующих асинхронных вызовов.

В некоторых схемах асинхронные вызовы не требуют ответа от сервера, в сервер не может послать сообщение в ответ. В других схемах ответ требуется (или позволяется), но клиент его не ожидает, выполняя другие действия. Объектно-ориентированный механизм Объектно-ориентированные технологии становятся все более распространен ными как при создании операционных систем, так и при разработке систем кли ент/сервер. При таком подходе клиент и сервер обмениваются сообщениями ме жду объектами.

Связь между объектами может как осуществляться на основ Глава 13. Распределенные вычисления, архитектура... ббпр ф ~ '! -' 1 ) ,--ом аомена сообщениями или вызова удаленных процедур, так и быть разратаиа л качестве надстройки над объектно-ориентированными возможностями оро ционнай системы.

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

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

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

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