Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Мультипроцессорные операционные системы



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

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

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

- главный — подчинённый;

- свой монитор в каждом процессоре;

- симметричная организация (процессоры идентичны). Организацию главный — подчинённый реализовать легче всего,

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

При организации главный — подчинённый ОС выполняется только на одном конкретном процессоре, главном процессоре. На подчинённом процессоре (процессорах) могут выполняться только программы пользователей. Когда процесс на подчинённом процессо­ре требует внимания ОС, он генерирует сигнал и ждёт, чтобы глав­ный процессор обработал его запрос. Если подчинённых процессоров много и они активно генерируют сигналы, то у главного процессора могут создаваться большие очереди.

Организация главный — подчинённый характеризуется меньшей надёжностью по сравнению с другими видами организации, посколь­ку выход главного процессора из строя вызывает катастрофический отказ всей системы.

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

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

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

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

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

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

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

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

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

Сегодня многопроцессорная обработка реализована в таких ОС, как Linux, Solaris, Windows NT, и ряде других.





Дата публикования: 2015-02-03; Прочитано: 1811 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...