Автор работы: Пользователь скрыл имя, 10 Декабря 2013 в 19:11, контрольная работа
Одним из базовых элементов системы является процессорный модуль (ЦП), блок-схема которого показана на рис. 1.1. В ЦП, построенном на принципах быстрого проявления неисправностей, имеются два порта ServerNet, обеспечивающие его соединение через системную сеть с другими ЦП и устройствами в/в. Для реализации механизмов разделяемой общей памяти несколько ЦП могут объединяться друг с другом с помощью шины когерентности.
Одним из базовых элементов системы является процессорный модуль (ЦП), блок-схема которого показана на рис. 1.1. В ЦП, построенном на принципах быстрого проявления неисправностей, имеются два порта ServerNet, обеспечивающие его соединение через системную сеть с другими ЦП и устройствами в/в. Для реализации механизмов разделяемой общей памяти несколько ЦП могут объединяться друг с другом с помощью шины когерентности.
|
Рис. 1.1. Блок-схема ЦП.
В состав ЦП входят два микропроцессора, каждый из которых имеет независимый вторичный кэш. Каждый микропроцессор подсоединяется к шине памяти с помощью СБИС процессорного интерфейса. При выполнении обращений к памяти эти СБИС сравнивают выходы обоих микропроцессоров для обнаружения всех возможных ошибок микропроцессора и кэша. Память ЦП защищена кодом ECC, который обеспечивает коррекцию всех одиночных ошибок и обнаружение любых ошибок в отдельных микросхемах ДЗУПВ или адресных линиях. Массив микросхем памяти соединяется с шиной памяти ЦП через пару СБИС контроллеров памяти. Эти СБИС во время обращений к памяти взаимно проверяют выходы друг друга.
Как уже было отмечено, ЦП могут иметь прямой доступ к памяти других ЦП с помощью дополнительной шины когерентности. Эта шина обеспечивает аппаратную поддержку стандартных приложений UNIX или Windows NT, которые используют симметричную мультипроцессорную обработку (SMP). Каждый ЦП подсоединяется к шине с помощью пары самоконтролирующихся СБИС интерфейса когерентности. Эти СБИС обеспечивают кэш-когерентный доступ к общей памяти используя дублированную память тегов и стандартный протокол аннулирования блоков кэш-памяти. Они обеспечивают также когерентность кэш-памяти при выполнении обращений к памяти со стороны В/В. Все передачи данных по шине когерентности защищены кодом ECC. Проверка синдрома ECC для данных, пересылаемых по шине, и сравнение выходов СБИС позволяет обнаруживать сбои шины или СБИС интерфейса.
Операционная система, поддерживающая модель системы без разделения ресурсов (подобная NonStop Kernel), для увеличения степени изоляции ошибок может запретить работу с шиной когерентности. В этом режиме когерентность кэш-памяти для всех транзакций с памятью по сети ServerNet обеспечивается средствами системного программного обеспечения. Если же работа шины когерентности разрешена, то, вообще говоря, ошибка в одном ЦП может привести к отказу всех ЦП, подсоединенных к этой шине.
СБИС процессорного интерфейса
ЦП реализуют два порта ServerNet. Линии
приема данных обоих портов ServerNet подсоединяются
к обеим СБИС процессорного интерфейса.
Каждая СБИС формирует данные для
передачи по обоим портам ServerNet, но реально
данные передаются только из одного порта.
Вторая СБИС принимает данные, передаваемые
другой СБИС, сравнивает полученное значение
со значением, которое она сформировала
сама, и сигнализирует об ошибке
при любом рассогласовании
ServerNet обеспечивает широкие
возможности для
Компания Tandem разработала
системы Guardian и NonStop Kernel в расчете
на распределенную обработку данных.
В течение более двадцати последних
лет компания постепенно выявляла и
удаляла узкие места в
В настоящее время в области масштабируемых распределенных вычислений начали широко использоваться также стандартные системы UNIX. В ряде научных приложениях кластеры рабочих станций начали заменять суперкомпьютеры. Предполагается, что эта тенденция станет главной движущей силой для усиленной разработки приложений и операционной среды распределенных вычислений.
В отличие от NonStop Kernel, которая сразу же была разработана как распределенная операционная система, большинство доступных ОС таким свойством не обладают. В качестве механизма масштабирования в этих системах обычно используется симметричная мультипроцессорная обработка (SMP). Этот механизм предполагает реализацию в системе единой разделяемой (общей) памяти, разделяемой системы в/в и когерентности кэш-памяти.
Новая архитектура обеспечивает гибкую реализацию разделяемой памяти. Как показано на рис. 1.2, несколько ЦП могут быть связаны друг с другом с помощью шины когерентности. Вместо использования единой глобальной памяти, память в системе распределена по ЦП. Это приводит к неодинаковому времени доступа к памяти, однако аппаратура поддерживает глобальное адресное пространство и когерентность кэш-памяти.
С целью повышения
В такой архитектуре можно выделить три отдельных класса памяти (рис. 12.11). Наименьшее время доступа имеет локальная память, доступ к глобальной памяти, размещенной на плате локального процессора, занимает больше времени, а доступ к глобальной памяти на плате другого ЦП занимает еще больше времени. Локальная память каждого ЦП содержит копию части программного кода и данных операционной системы, доступ к которым разрешен только по чтению. Кроме того, в локальную память операционная система может поместить некоторые частные для процессора данные. Проведенная оценка показала, что размещение этих объектов в локальной памяти и случайное распределение глобальной памяти будет обеспечивать производительность, сравнимую с производительностью системы, реализующей механизмы единой глобальной памяти.
|
Рис. 1.2. Распределение памяти в четырехпроцессорной SMP-системе
Системы с разделяемой памятью могут функционировать либо в симплексном, либо в дуплексном режиме. Система, построенная на узлах SMP и обеспечивающая отказоустойчивость программными средствами, может использовать симплексный режим. Полностью аппаратная отказоустойчивая система с масштабируемостью SMP требует реализации дуплексного режима работы.
Шина когерентности может также поддерживать работу гибридных распределенных систем, в которых распределенная память используется для обмена данными между процессорами. В этом случае система распределяет большую часть памяти под "локальные нужды" процессоров, а в глобальную память помещает только разделяемые данные.
Сервисные процессоры несут
полную ответственность за инициализацию
системы. Во время начальной установки
системы они, прежде всего, создают
полный перечень доступных в стойке
ресурсов, используя шины обслуживания
и перепрограммируемые ПЗУ, которые
хранят информацию о конфигурации всех
компонентов системы. Затем сервисные
процессоры инициализируют эти компоненты,
используя интерфейс
Вслед за этим сервисные
процессоры, расположенные в разных
стойках, включаются в процесс динамического
определения топологии ServerNet. Этот процесс
не зависит от ранее полученных данных
по конфигурации системы. Он работает
ниже уровня передачи пакетов ServerNet, поскольку
предшествует установке средств
маршрутизации. После того как сервисные
процессоры определили топологию сети,
они выполняют назначение идентификаторов
узлов ServerNet и программирование таблиц
маршрутизации в
Затем сервисные процессоры начинают выполнение начальной установки операционной системы на главном процессоре. Сервисные процессоры сообщают программе начальной загрузки и операционной системе перечень аппаратных средств и информацию об их конфигурации, включая адреса ServerNet для каждого устройства системы.
Информация о работе Блок-схема центрального процесору системи ServerNet