Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Современной тенденцией развития вычислительной техники является построение вычислительных комплексов, содержащих несколько ЦП, называемых мультипроцессорными вычислительными системами. Мультипроцессорная обработка – это способ организации вычислений в системах с несколькими процессорами, при котором несколько задач (процессов, нитей) могут одновременно выполняться на разных процессорах системы. Целью построения мультипроцессорных вычислительных систем является: повышение производительности вычислительных систем; повышение надежности и коэффициента готовности вычислительной системы. Существует два вида мультипроцессорных вычислительных систем: Мультипроцессорные вычислительные системы со слабо связанными процессорами, называемые многомашинными комплексами, которые предусматривают соединение двух или более вычислительных машин при помощи канала связи и/или внешней памяти. Мультипроцессорные системы с сильно связанными процессорами, называющиеся многопроцессорными вычислительными комплексами, которые имеют единую ОП, коллективно используемую несколькими ЦП. Мультипроцессорная организация системы приводит к усложнению всех алгоритмов управления ресурсами. Например, необходимо планировать процессы не для одного, а для нескольких процессоров, что гораздо сложнее. Сложности возрастают при возрастании количества конфликтов по обращению к устройствам ввода/вывода, данным общей памяти и совместно используемым программам. Все эти проблемы должны решать ОС путем синхронизации, ведения очередей, планирования процессов. Итак, в отличие от однопроцессорных ОС, подсистемы управления процессами и заданиями должны выполнять следующие основные функции: - организацию взаимодействия центральных процессоров (синхронизация); - управление загрузкой процессоров (диспетчирование). Существует несколько способов взаимодействия ЦП: Вычислительный комплекс и ОС с подчиненными процессорами - асимметричное мультипроцессирование (один главный процессор и несколько подчиненных). Вычислительный комплекс и ОС с равноправными процессорами. Вычислительный комплекс и ОС с симметричной организацией - симметричное мультипроцессирование. В мультипроцессорных системах с подчиненными процессорами один ЦП является главным, остальные - подчиненными (ведущий - ведомые). Это самая простая организация не намного сложнее однопроцессорной системы. Операционная система выполняется только на главном процессоре. Этот ЦП осуществляет ввод - вывод и управляет загрузкой подчиненных процессоров. Подчиненные процессоры выполняют только программы пользователя. Узкое место - главный процессор. Он должен иметь большую мощность (производительность), чем подчиненные процессоры, чтобы последние не простаивали. В мультипроцессорной системе с равноправными процессорами каждый ЦП имеет собственную ОС и управляет собственными ресурсами и устройствами ввода/вывода по типу многомашинных комплексов. В такой организации для управления всей системы существуют таблицы с глобальной системной информацией, доступ к которой строго контролируется методом взаимного исключения. Каждый ЦП берет из общей операции задание и выполняет его до завершения. Во время исполнения взаимодействие между ЦП не предусматривается. Данную систему характеризует высокая надежность, но не достаточно высокий уровень распараллеливания. Симметричная организация мультипроцессорной системы наиболее сложна и эффективна. Здесь все ЦП - идентичны. Каждый из них может управлять работой любого периферийного устройства и обращаться к любому устройству памяти. В таких системах в общей области памяти существует две очереди: очередь готовых процессов и очередь готовых процессоров. В любой момент времени любой готовый процесс может выполняться на любом готовом процессоре. Процессы во время своего исполнения мигрируют между ЦП. ОС также перемещается по процессорам, но в каждый момент времени может находиться только на одном процессоре. Симметричное мультипроцессирование реализуется общей для всех процессоров ОС. Все процессы равноправно участвуют в управлении вычислительным процессом и в выполнении прикладных задач. Например, сигнал прерывания от устройства, на которое выводит данные прикладной процесс, выполняемый на некотором процессоре, может быть обработан совсем другим процессором. Разные процессоры могут в какой-то момент времени выполнять как разные, так и одинаковые модули общей ОС. Для этого программные модули ОС должны обладать свойством повторной входимости – реентерабельности. ОС полностью децентрализована. Освободившийся процессор сам запускает планировщик задач, который выбирает из общей системной очереди задачу для выполнения. Все ресурсы выделяются для задачи по мере потребности и не закрепляются за процессором. При таком подходе все процессоры работают с одной и той же динамически выравниваемой загрузкой. В решении одной задачи могут участвовать сразу несколько процессоров, если она допускает распараллеливание, например, путем предоставления нескольких нитей (потоков для WINDOWS NT фирмы Microsoft, UNIX - SOLARIS компании Sun, базирующийся на UNIX System V Release 4). Достоинства этой организации: высокая надежность (отказ одного из ЦП исключает его из очереди готовых процессоров); сбалансированная загрузка ЦП; лучшее использование ресурсов. Недостаток - возрастает число конфликтов по системному обслуживанию, так как ОС имеется только в одном экземпляре.
Дата публикования: 2015-02-03; Прочитано: 1940 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!