Симметричная организация

Организация с раздельными мониторами

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

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

При организации с раздельными мониторами каждый процессор имеет свою собственную ОС и работает подобно однопроцессорной машине со своими собственными ресурсами. Процесс, запланированный для выполнения на каком-то конкретном процессоре, выполняется на нем до завершения.

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

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

Организация с раздельными мониторами более надежна, чем «главный-подчиненный» (отказ одного процессора не станет катастрофическим отказом системы, но рестарт системы с отказавшим процессором может оказаться достаточно сложным).

 

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

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

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

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

Симметричная организация обладает следующими достоинствами:

а) наиболее надежна (отказ одного процессора приводит к тому, что ОС исключает его из пула процессоров и уведомляет об этом оператора);

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

Симметричная организация обладает следующим недостатком – наиболее сложна для реализации (поскольку программы ОС могут выполняться на многих процессорах одновременно, то взаимоисключения являются обязательными).