Главная » Просмотр файлов » Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)

Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619), страница 12

Файл №1162619 Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)) 12 страницаЭ. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619) страница 122019-09-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Единственно возможным видом связи является передача сообщений (messagepassing). Мультикомпьютерные операционные системы в основном организованытак, как показано на рис. 1.9.Каждый узел имеет свое ядро, которое содержит модули для управления ло­кальными ресурсами — памятью, локальным процессором, локальными дискамии т. д. Кроме того, каждый узел имеет отдельный модуль для межпроцессорноговзаимодействия, то есть посылки сообщений на другие узлы и приема сообще­ний от них.52Глава 1. ВведениеМашина АМашина СМашина В"IГ3 п.Распределенные приложенияI II IСлужбы распределенной операционной системыЯдроЯдроЯдроСетьРис. 1.9. Общая структура мультикомпьютерных операционных системПоверх каждого локального ядра лежит уровень программного обеспеченияобщего назначения, реализуюгций операционную систему в виде виртуальноймашины, поддерживающей параллельную работу над различными задачами. Наделе, как мы сейчас кратко рассмотрим, этот уровень может даже предоставлятьабстракцию мультипроцессорной машины.

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

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

Кроме того,мы нуждаемся в учете того, блокируется ли посылающий или принимающийпроцесс. На рис. 1.10 продемонстрирован вариант с буферизацией и блоки­ровкой.ВозможнаяточкасинхронизацииОтправительБуфер -^отправителя,ir±ПолучательБуферполучателяS2СетьРис. 1.10.

Возможности блокировки и буферизациипри пересылке сообщений1.4. Концепции программных решений53Существует всего два возможных места буферизации сообщений — на сторо­не отправителя или на стороне получателя. Это приводит к четырем возможнымточкам синхронизации, то есть точкам возможной блокировки отправителя илиполучателя. Если буферизация происходит на стороне отправителя, это дает воз­можность заблокировать отправителя, только если его буфер полон, что показаноточкой синхронизации S1 на рисунке.

С другой стороны, процедура помещениясообщения в буфер может возвращать состояние, показывающее, что операцияуспешно выполнена. Это позволяет отправителю избежать блокировки по при­чине переполнения буфера. Если же отправитель ие имеет буфера, существуеттри альтернативных точки блокировки отправителя: отправление сообщения(точка 52), поступление сообщения к получателю (точка S3), принятие сообще­ния получателем (точка S4). Отметим, что если блокировка происходит в точке52, S3 или S4, наличие или отсутствие буфера на стороне отправителя не имеетникакого значения.Блокировка получателя имеет смысл только в точке синхронизации S3 и мо­жет производиться, только если у получателя нет буфера или если буфер пуст.Альтернативой может быть опрос получателем наличия входящих сообщений.Однако эти действия часто ведут к пустой трате процессорного времени илислишком запоздалой реакции на пришедшее сообщение, что, в свою очередь,приводит к переполнению буфера входящими сообщениями и их потере [52].Другой момент, важный для понимания семантики обмена сообщениями, —надежность связи.

Отличительной чертой надежной связи является получениеотправителем гарантии приема сообщения. На рис. 1.10 надежность связи озна­чает, что все сообщения гарантированно достигают точки синхронизации S3.При ненадежной связи всякие гарантии отсутствуют. Если буферизация произ­водится на стороне отправителя, о надежности связи ничего определенного ска­зать нельзя. Также операционная система не нуждается в гарантированно надеж­ной связи в случае блокировки отправителя в точке S2.С другой стороны, если операционная система блокирует отправителя до дос­тижения сообщением точки S3 или S4, она должна иметь гарантированно надеж­ную связь.

В противном случае мы можем оказаться в ситуации, когда отправи­тель ждет подтверждения получения, а сообщение было потеряно при передаче.Отношение между блокировкой, буферизацией и гарантиями относительно на­дежности связи суммированы в табл. 1.4.Т а б л и ц а 1 . 4 . С о о т н о ш е н и е между б л о к и р о в к о й , буферизациейи надежностью связиТочка синхронизацииБуферизацияотправителяГарантия надежнойсвязиБлокировка отправителя до наличиясвободного места в буфереДаНет необходимостиБлокировка отправителядо посылки сообщенияНетНет необходимостиБлокировка отправителядо приема сообщенияНетНеобходимаБлокировка отправителядо обработки сообщенияНетНеобходима54Глава 1.

ВведениеМножество аспектов проектирования мультикомпьютерных операционныхсистем одинаково важны для любой распределенной системы. Основная разницамежду мультикомпьютерными операционными системами и распределеннымисистемами состоит в том, что в первом случае обычно подразумевается, что аппа­ратное обеспечение гомогенно и полностью управляемо.

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

Главную роль в этом играет мультикомпьютерная опе­рационная система.Один из распространенных подходов — задействовать виртуальную памятькаждого отдельного узла для поддержки общего виртуального адресного про­странства. Это приводит нас к распределенной разделяемой памяти {DistiibutedShared Memory, DSM) со страничной организацией. Принцип работы этой памя­ти следующий. В системе с DSM адресное пространство разделено на страницы(обычно по 4 или по 8 Кбайт), распределенные по всем процессорам системы.Когда процессор адресуется к памяти, которая не является локальной, происходитвнутреннее прерывание, операционная система считывает в локальную памятьстраницу, содержащую указанный адрес, и перезапускает выполнение вызвавшейпрерывание инструкции, которая теперь успешно выполняется.

Этот подходпродемонстрирован на рис. 1.11, а для адресного пространства из 16 страници четырех процессоров. Это вполне нормальная страничная организация, если несчитать того, что в качестве временного хранилища информации используетсяне диск, а удаленная оперативная память.В этом примере при обращении процессора 1 к коду или данным со страницыО, 2, 5 или 9 обращение происходит локально. Ссылки на другие страницы вызы­вают внутреннее прерывание.

Так, например, ссылка на адрес со страницы 10вызывает внутреннее прерывание операционной системы, и она перемещает стра­ницу 10 с машины 2 на машину 1, как показано на рис. 1.11, б.Одно из улучшений базовой системы, часто позволяющее значительно повы­сить ее производительность, — это репликация страниц, которые объявляются1.4. Концепции программных решений55закрытыми на запись, например, страниц, содержащих текст программы, констан­ты «только для чтения» или другие закрытые на запись структуры. Например,если страница 10 — это секция текста программы, ее использование процессором 1приведет к пересылке процессору 1 ее копии, а оригинал в памяти процессора 2будет продолжать спокойно храниться, как показано на рис. 1.11, в.

В этом слу­чае процессоры 1 и 2 оба смогут обращаться к странице 10 так часто, как им по­надобится, не вызывая при этом никаких внутренних прерываний для выборкипамяти.Разделяемое глобальное адресное пространство01 2 3 45 6 7 8 9 10 11 1 2 | l 3 | l 4 | l 5:^^^^sxz7 11£ II 2 II 510Процессор1Процессор213 1512 14Процессор3щщ [| 1 1 з|[б]|]4 [|7 |[l1• ПамятьПроцессор4ш\щ[TjRo]Процессор1.11 Процессор2Процессор3Процессор4|0 ||2 IjTj 1 1 ||3 IfTj[|Т][Т|[гГ|[T][io]mjTo] 1процессор1Процессор2Процессор3IРис. 1 . 1 1 . Страницы адресного пространства распределены по четырем машинам (а).Ситуация после обращения процессора 1 к странице 10 (б). Ситуация, когдазапись в страницу 10 невозможна и необходима репликация (в)Другая возможность — это репликация также и не закрытых на запись стра­ниц, то есть любых страниц.

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

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

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