Главная страница
Навигация по странице:

  • Промежуточное ПО, основанное на координации. Данный вид интерфейсного слоя программного обеспечения для создания приложений основан на парадигме публикация/подписка

  • ЛЕКЦИЯ 11 КОГЕРЕНТНОСТЬ МНОГОУРОВНЕВОЙ ПАМЯТИ Модели состоятельности памяти

  • Любая реализация разделяемой памяти многопроцессорных вычислительных систем характеризуется совокупностью признаков : способ реализации

  • Операционные сети сущ. ОС. Обзор содержания дисциплины операционные системы Обсуждение функций и эксплуатационных требований к ос


    Скачать 356.76 Kb.
    НазваниеОбзор содержания дисциплины операционные системы Обсуждение функций и эксплуатационных требований к ос
    АнкорОперационные сети сущ
    Дата18.03.2021
    Размер356.76 Kb.
    Формат файлаdocx
    Имя файлаОС.docx
    ТипДокументы
    #186086
    страница13 из 16
    1   ...   8   9   10   11   12   13   14   15   16

    Примером систем, основанных на объектах, является технология CORBA (Common Object Request Broker Architecture – архитектура распределенных объектных приложений). Технология CORBA представляет


    собой систему типа клиент-сервер, в которой клиентский процесс может осуществлять операции с объектами, расположенными на серверах.

    Архитектура CORBA разработана для неоднородных аппаратных и программных платформ. Согласование разно платформенных клиента и сервера реализуется через посредников ORB (Object Request Broker – брокер объектных запросов). Каждый объект системы CORBA описывается на специальном языке описания интерфейсов IDL (Interface Definition Language).

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

    Чтобы вызвать метод объекта, клиентский процесс сначала должен получить ссылку на этот объект. Ссылку можно получить либо напрямую от создавшего объект процесса, либо при помощи поиска этого объекта или его метода по имени в специальном каталоге. Когда ссылка на объект получена, клиентский процесс упаковывает параметры вызываемого метода в стандартную структуру и связывается с клиентским ORB-посредником. Тот, в свою очередь, посылает сообщение серверному ORB-посреднику, который вызывает метод объекта. Весь механизм схож с вызовом удаленной процедуры RPC.

    Задача ORB-посредников заключается в сокрытии всех низкоуровневых деталей связи и распределения от клиентской и серверной программ. В частности ORB-посредники скрывают от клиента расположение сервера, аппаратное обеспечение ORB сервера, информацию о том, является ли сервер двоичной программой или сценарием, является ли объект активным в настоящий момент, способ общения двух ORB-посредников (ТСР/IP, RPC, общая память и т.д.).

    Для связи через интернет между клиентским и серверным ORB- посредниками используется протокол IIOP (Internet InterORB Protocol). Для обеспечения возможности использования в системах CORBA объектов, не предназначенных специально для этого, каждый объект оснащается адаптером объекта (упаковщик, обрабатывающий рутинные операции типа формирования ссылок на объект, активация объекта в случае, если тот при вызове находится в неактивном состоянии).

    Основной недостаток системы CORBA заключается в том, что каждый объект расположен только на одном сервере, что означает низкую производительность для объектов, одновременно используемых многими клиентами. Обычно архитектура CORBA приемлемо работает только в небольших системах (например, в пределах локальной сети).

    Промежуточное ПО, основанное на координации.

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

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

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

    ЛЕКЦИЯ 11 КОГЕРЕНТНОСТЬ МНОГОУРОВНЕВОЙ ПАМЯТИ

    Модели состоятельности памяти

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

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

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

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

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

    • способ реализации (аппаратный, программный, аппаратно-программный);

    • тип разделяемых объектов данных архитектуры процессора и/или операционной системы (слово, кэш-строка, страница, сегмент, фрагмент, объект);
    • модель состоятельности памяти, определяющая допустимые последовательности доступа в память (SRSW – "один читатель/один писатель", MRSW – "много читателей/один писатель", MRMW – "много читателей/много писателей");

    • политика обеспечения когерентности данных (модификация, объявление несостоятельными);
    • 1   ...   8   9   10   11   12   13   14   15   16


    написать администратору сайта