Главная » Просмотр файлов » Сетевое ПО Лекция 2

Сетевое ПО Лекция 2 (1061283), страница 2

Файл №1061283 Сетевое ПО Лекция 2 (Электронные лекции) 2 страницаСетевое ПО Лекция 2 (1061283) страница 22017-12-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Опрос (polling). Этот метод предусматривает наличие еще одного базовогопримитива test (проверить), с помощью которого процесс-получательможет анализировать состояние буфера.2. Прерывание (interrupt). Этот метод использует программное прерываниедля уведомления процесса-получателя о том, что сообщение помещено вбуфер. Хотя такой метод и очень эффективен (он исключает многократныепроверки состояния буфера), у него имеется существенный недостаток усложненноепрограммирование,связанноеспрерываниямипользовательского уровня, то есть прерываниями, по которым вызываются6Сетевое ПО.

Лекция 2(2014г.)(Механизмы межпроцессноговзаимодействия(Inter-Process Communication, IPC) в сети.)процедуры пользовательского режима.Если при взаимодействии двух процессов оба примитива — send и receive —являются блокирующими, говорят, что процессы взаимодействуют по сетисинхронно(рис.2.1),впротивномслучаевзаимодействиесчитаетсяасинхронным (рис. 2.2).Синхронное является более простым, его легко реализовать. Оно такжеболее надежно, так как гарантирует процессу-отправителю, возобновившемусвое выполнение, что его сообщение было получено.

Главный недостаток ограниченный параллелизм и возможность возникновения клинчей.Обычно в ОС имеется один из двух видов примитивов, но ОС являетсяболее гибкой, если поддерживает как блокирующие, так и неблокирующиепримитивы.5 Буферизация при передачи сообщенийПри передаче сообщений могут возникнуть ситуации, когда принимающийпроцесс оказывается не готовым обработать сообщение при его прибытии, нодля процесса было бы желательным, чтобы операционная система на времясохранила поступившее сообщение в буфере для последующей обработки.Способ буферизации зависит от способа синхронизации процессов приобмене сообщениями.5.1 Буферизация при синхронном взаимодействие процессовПри использовании синхронных, то есть блокирующих примитивов,можно вообще обойтись без буферизации сообщений операционной системой.При этом возможны два варианта организации работы примитивов. В первом случае процесс-отправитель подготавливает сообщение всвоей памяти и обращается к примитиву send, после чего процессблокируется. ОС отправителя ждет, когда процесс-получатель выполнит на своемкомпьютере примитив receive, в результате чего ОС получателянаправитслужебноесообщение-подтверждениеготовностикСетевое ПО.

Лекция 2(2014г.)(Механизмы межпроцессноговзаимодействия(Inter-Process Communication, IPC) в сети.)приему основного сообщения. После полученияподтвержденияОСнакомпьютере-отправителе7такогоразблокируетпроцесс-отправитель и тот немедленно после этого пошлетсообщение по сети. Процесс-получатель после обращения кпримитиву receive также переводится своей ОС в состояниеожидания, из которого он выходит при поступлении сообщения посети. Сообщение немедленно копируется ОС в память процессаполучателя, не требуя буферизации, так как процесс ожидает егоприхода и готов к его обработке. Буферизация не требуется и при другом варианте обменасообщениями, когда процесс-отправитель посылает сообщение всеть, не дожидаясь прихода от получателя подтверждения оготовности к приему.

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

При этом буфер, как правило, выбирается8Сетевое ПО. Лекция 2(2014г.)(Механизмы межпроцессноговзаимодействия(Inter-Process Communication, IPC) в сети.)размером в одно сообщение, так как процесс-отправитель не может послатьследующее сообщение, не получив подтверждения о приеме предыдущего.Сообщение помещается в буфер, поддерживаемый операционнойсистемой компьютера-получателя, если в момент его прихода процессполучатель не может обработать сообщение немедленно, например из-за того,что процесс либо не является текущим, либо не готов к приему сообщения, таккак не обратился к примитиву receive.Буфер может располагаться как в системной области памяти, так и вобласти памяти пользовательского процесса, в любом случае буферомуправляет операционная система, модули которой получают сообщения посети.5.2 Буферизация при асинхронном взаимодействие процессовДля всех вариантов обмена сообщениями с помощью асинхронныхпримитивов необходима буферизация.Поскольку при асинхронном обмене процесс-отправитель может посылатьсообщение всегда, когда ему это требуется, не дожидаясь подтверждения отпроцесса-получателя, для исключения потерь сообщений требуется буфернеограниченной длины.Так как буфер в реальной системе всегда имеет ограниченный размер, томогут возникать ситуации с переполнением буфера и на них нужно каким-тообразом реагировать.Для уменьшения вероятности потерь сообщений степень асинхронностипроцесса обмена сообщениями обычно ограничивается механизмомуправления потоком сообщений.Управление потоком заключается в том, что при заполнении буфера напринимающей стороне до некоторого опасного порога процесс-передатчикблокируется до тех пор, пока процесс-приемник не обработает часть принятыхсообщений и не разгрузит буфер до безопасной величины.

Конечно,вероятность потерь сообщений из-за переполнения буфера все равно9Сетевое ПО. Лекция 2(2014г.)(Механизмы межпроцессноговзаимодействия(Inter-Process Communication, IPC) в сети.)сохраняется, например из-за того, что служебное сообщение о необходимостиприостановки передачи сообщений может быть потеряно сетью.Асинхронный обмен с управлением потоком - это наиболее сложныйспособорганизацииобменасообщениями,таккакдляповышенияэффективности( максимизации скорости обмена и минимизации потерь), онтребует применения сложных алгоритмов приостановки и возобновленияпроцесс передачи, например таких, которые применяются в протоколе TCP.Операционнаясистемапредоставляетдляприкладныхпроцессовспециальный примитив для создания буферов сообщений.Такого рода примитив, например, create_buffer (создать буфер), процессдолжен использовать перед тем, как отправлять или получать сообщения спомощью примитивов send и receive.

При создании буфера его размер можетлибо устанавливаться по умолчанию, либо выбираться прикладным процессом.Часто такой буфер носит название порта (port), или почтового ящика(mailbox).При реализации схем буферизации сообщений необходимо также решитьвопрос о том, что должна делать операционная система с поступившимисообщениями, для которых буфер не создан.Такая ситуация может возникнуть в том случае, когда примитив sendпроцессом-передатчиком выполнен раньше, чем примитив create_bufferпроцессом-получателем.Каким образом ОС получателя сможет узнать, какому процессуадресовано вновь поступившее сообщение, если имеется несколькоактивных процессов? И как оно узнает, куда его скопировать? Один из вариантов - просто отказаться от сообщения в расчете нато, что отправитель после тайм-аута передаст сообщение повторно ик этому времени получатель уже создаст буфер. Этот подход несложен в реализации, но, к сожалению, отправитель (или скорееядро его компьютера) может сделать несколько таких безуспешных10Сетевое ПО.

Лекция 2(2014г.)(Механизмы межпроцессноговзаимодействия(Inter-Process Communication, IPC) в сети.)попыток. Еще хуже то, что после достаточно большого числабезуспешныхпопытокядроотправителяможетсделатьнеправильный вывод об аварии на машине получателя или онеправильности его адреса. Второй подход к этой проблеме заключается в том, чтобы хранитьхотя бы некоторое время поступающие сообщения в ядре ОСполучателяврасчетенато,чтовскоребудетвыполненсоответствующий примитив create_buffer. Каждый раз, когдапоступает такое «неожидаемое» сообщение, включается таймер.Еслизаданныйвременнойинтервалистекаетраньше,чемпроисходит создание буфера, то сообщение теряется.

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

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

Список файлов лекций

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