Главная » Просмотр файлов » Введение в распределённые алгоритмы. Ж. Тель (2009)

Введение в распределённые алгоритмы. Ж. Тель (2009) (1185665), страница 18

Файл №1185665 Введение в распределённые алгоритмы. Ж. Тель (2009) (Введение в распределённые алгоритмы. Ж. Тель (2009).pdf) 18 страницаВведение в распределённые алгоритмы. Ж. Тель (2009) (1185665) страница 182020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

В соответствии с этим переходы в системе разделяются надва типа: переходы первого типа связаны с изменением внутренних состоянийпроцесса, а переходы второго типа связаны с комбинированным осуществлениемсобытий отправления-приема сообщения двумя процессами.2.1. Системы переходов и алгоритмы59Определение 2.7. Пусть задано семейство процессов р\, . .. , pN.

Тогда бу­дем говорить, что система переходов S = (С, — Т) порождена распределен­ным алгоритмом для семейства процессов р\, ...,р ы при их синхроннойвзаимосвязи, если выполнены соотношения:1) С = {(cPi, . . . , cPN) : Ур е Р : ср Е Zp}',2) —>•= (Upep —>р) U (Up><76p:p^q —>pq), где• ~^Pi представляет собой множество пар(Cpi, . . .

, cPi, . .. , cPN), . . . , (cPl, . .. , cpi, . . . , cPN),для которых справедливо включение (cPi, ср.)е \~1р.',• —представляет собой множество пар(• • • >сРп ■■■, cPj, ...),cpi, . . . , Ср., . . .),для которых существует такое сообщение т € М , что имеют местовключения(cPi, т, c'Pi)e НР1 и (сР1, т, c'Pj)e Нр 3) X = {(сPl, . .. , cPN) (Vр € Р : Ср € /р)}•В некоторых распределенных системах допускается смешанная форма взаи­мосвязи; процессы в таких системах имеют примитивы для совершения обменовсообщениями как в синхронном, так и в асинхронном режиме.

Располагая темидвумя моделями, которые были определены выше, нетрудно построить модельи для этого типа распределенных систем. Конфигурации для таких систем опре­деляются состояниями процессов и совокупностью сообщений, пребывающих наэтапе (асинхронной) пересылки. Переходы системы включают в себя все типыпереходов, представленные в определениях 2.6 и 2.7.Синхронизация и ее влияние на алгоритмы.

Как уже было отмечено, прирешении многих задач синхронный обмен сообщениями можно рассматриватькак особый случай асинхронного обмена сообщениями. Множество выполненийв случае синхроного обмена сообщениями ограничивается лишь теми выполне­ниями, в которых за событием отправления сообщения непосредственно следуетсоответствующее ему событие приема сообщения (см. [48]). Поэтому мы счита­ем асинхронный обмен сообщениями более общим видом модели, нежели син­хронный обмен сообщениями, и в дальнейшем мы будем заниматься разработкойалгоритмов преимущественно для этого более общего случая.Тем не менее, нужно проявить определенную аккуратность, если алгоритм,разработанный в расчете на асинхронный обмен сообщениями, выполняется в си­стеме с синхронным обменом сообщениями.

Сокращение недетерминизма в ком­муникационной подсистеме должно быть уравновешено возрастанием недетер­минизма в процессах системы, ибо в противном случае это может привести квозникновению взаимной блокировки.В качестве иллюстрации мы рассмотрим простой пример, в котором два про­цесса посылают друг другу некоторую информацию. В асинхронном случае каж­дый процесс может вначале отправить сообщение, а затем получить сообщение60Гл. 2.

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

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

При каждом выполнении коммуникационной подсистемой будет вы­бран один из возможных порядков действия для каждого процесса, т. е. симмет­рия будет нарушена коммуникационной подсистемой.Когда мы даем описание какого-либо алгоритма, рассчитанного на асинхронныйобмен сообщениями, и утверждаем, что этот алгоритм может быть использовани в системах с синхронным обменом сообщениями, мы тем самым неявно предпо­лагаем, что для этого в алгоритме нужно ввести указанный недетерминизм, и этовсегда возможно.2.1.4. СправедливостьИногда при исследовании поведения систем возникает необходимость ограни­читься рассмотрением только так называемых справедливых выполнений.

Усло­вия справедливости позволяют исключить из рассмотрения такие выполнения,в которых некоторые события оказываются допустимыми всегда (или бесконечночасто), но при этом ни разу не осуществляются в виде переходов (из-за того чтовыполнение продолжается всякий раз за счет осуществления других событий).Определение 2.8. Выполнение считается слабо справедливым, если ника­кое событие не может оказаться допустимым в каждой из бесконечного числаподряд идущих конфигураций, не осуществившись при этом ни разу в этом вы­полнении. Выполнение считается сильно справедливым, если никакое событие,не может оказаться допустимым в бесконечном множестве конфигураций, не осу­ществившись при этом ни разу в этом выполнении0 Приведенное здесь определение слабой и сильной справедливости не является достаточно строгим.

Более корректное определение этих понятий таково:2.2. Как обосновывать свойства систем переходов61Условия справедливости можно включить в явном виде в состав определе­ния формальной модели, как это было сделано в работе Манны и Пнуели [138].Большинство алгоритмов, с которыми нам предстоит иметь дело в настоящейкниге, не зависят от этих условий; поэтому мы предпочли не включать их в со­став модели, а вместо этого будем явно оговаривать эти условия всякий раз, когдаони используются в том или ином алгоритме или задаче. Вопрос о целесообраз­ности включения допущений справедливости в состав модели распределеннойсистемы вызвал немало споров. Сложилось убеждение, что на допущения спра­ведливости не следует рассчитывать; вместо этого сами алгоритмы должны бытьустроены так, чтобы они не зависели от этих допущений.

Обсуждение некоторыхзамысловатых аспектов, связанных с допущениями справедливости, можно найтив работе [89].2.2. Как обосновывать свойства систем переходовЕсли имеется распределенный алгоритм для некоторой задачи, то необходимоубедиться в том, что данный алгоритм правильно решает эту задачу. Исходя изсамой задачи можно определить, какими свойствами должен обладать требуемыйалгоритм ее решения; после этого нужно показать, что предложенное решениеобладает этими свойствами. Проблема верификации распределенных алгоритмовпривлекла большое внимание, и существует много работ, в которых обсуждают­ся формальные методы верификации (см, например, [46, 89, 115, 138]). В этомпараграфе мы обсудим ряд простых, но при этом наиболее часто используемыхметодов обоснования корректности распределенных алгоритмов.

Эти методы ос­новываются только на определении понятия системы переходов.Многие свойства распределенных алгоритмов, нуждающиеся в проверке, от­носятся к одному из двух типов: условие безопасности и условие живости .Условие безопасности требует, чтобы каждая достижимая конфигурация в лю­бом выполнении системы обладала определенным свойством. Условие живоститребует, чтобы хотя бы одна достижимая конфигурация в любом выполнениисистемы обладала определенным свойством. Формальное изучение вопроса о том,как устроены свойства безопасности и живости, было предпринято в работе Альперна и Шнейдера [6]. Они установили, что каждая возможная спецификация(свойство множества выполнений) может быть представлена в виде конъюнкциисвойств безопасности и живости.Эти условия могут возникнуть также и в более слабой форме; например, мо­жет потребоваться, чтобы они соблюдались с некоторой заданной вероятностьюна множестве всех возможных выполнений.

Другие условия, которым должны1) . каждое выполнение, оканчивающееся заключительной конфигурацией, является справедливым(как в слабом, так и в сильном смысле);2) . бесконечное выполнение Е = (yo , Yi, Y2 > • ■•) считается слабо справедливым, если не существу­ет такого натурального числа п, п > 0, и такого события е, что для любого i, i ф я, событие едопустимо в конфигурации у;, но при этом y ^ i У е(у;);3 ) . бесконечное выполнение Е = ( y o , yi, У г , • • •) считается сильно справедливым, если не суще­ствует такого натурального числа п, п > 0, и такого события е, что для любого i, i ф я, событие едопустимо в некоторой конфигурации ур, где / ^ i, но при этом y;+i ф е(ур. — Прим, перев.62Гл. 2. Модельудовлетворять алгоритмы, могут выражать требования о том, чтобы в этих алго­ритмах использовались только сведения определенного рода (см.

§2.4.4), чтобыалгоритмы были устойчивы к сбоям в отдельных процессах (см. гл. 13), чтобыпроцессы были неотличимы (см. гл. 9), и т. п.Методы верификации,описанные в этом параграфе, основываются на истин­ности у т в е р ж д е н и й о конфигурациях, достижимых по ходу выполнения.

Такогорода методы называются а с с е р т и в н ы м и 2) методами верификации. Под утвер­ждением понимается одноместное отношение на множестве конфигураций, т. е.предикат, который является истинным на множестве одних конфигураций и лож­ным на множестве других.2.2.1. Свойства безопасностиСвойством безопасности алгоритма является всякое свойство, которое мож­но сформулировать в виде следующего предложения: «Для любого выполненияалгоритма утверждение Р истинно в каждой конфигурации выполнения». Болеекратко это свойство можно сформулировать так: «Утверждение Р всегда истин­но».

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

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

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

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