Операционные системы мультикомпьютеров. Управление распределенной памятью

Как мы уже отмечали выше, вычисления в мультикомпьютере обычно базируются на модели обмена данными между процессами посредством передачи сообщений. Альтернативой является модель обмена данными через общую память – DSM-модель обмена данными (Distributed Shared Memory – распределенная совместно используемая память).

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

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

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

При реализации системы управления распределенной оперативной памятью центральными являются следующие вопросы:

· как организовать хранение информации о расположении удаленных данных;

· как снизить при доступе к удаленным данным накладные расходы, обусловленные коммуникационными задержками (включая затраты на выполнение коммуникационных протоколов);

· как сделать данные доступными одновременно на нескольких процессорах – проблема консистентности памяти (memory consistency).

Обычно системы управления распределенной оперативной памятью используют страничную организацию распределенной памяти. Суммарная оперативная память системы разбивается на порции одинаковой длины - страницы. Длина этих страниц принимается равной (или кратной) длине страницы оперативной памяти процессоров(если их память страничная).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: