- •Тема 1. История развития операционных систем. Типы операционных систем.
- •1. Понятие и эволюция операционных систем
- •1.1. Определение операционной системы
- •1.2. История развития операционных систем
- •Понятие и эволюция операционных систем
- •1.1 Определение операционной системы
- •1. 2 История развития операционных систем
- •Тема 2. Основные характеристики и принципы построения операционных систем.
- •1. Основные характеристики ос
- •2. Принципы построения ос
- •Основные характеристики ос
- •Принципы построения ос
- •Тема 3. Общая структура программного обеспечения и операционных систем эвм
- •Структура ос.
- •Управление процессами
- •Управление основной памятью
- •Управление внешней памятью
- •Сервисы операционных систем
- •Особенности методов построения
- •Тема 4.Диаграмма перехода процесса
- •Основные состояния процесса:
- •Дополнительные состояния процесса:
- •Операции над процессами
- •Основная концепция обработки прерываний
- •Тема 5. Контекст процесса и переключение контекста
- •Переключения контекста в ec эвм
- •Тема 6. Синхронизация и кооперация процессов
- •If q(s)? 0 очередь не пуста?
- •Тема 7. Тупики: условия возникновения тупиков, предотвращения тупиков
- •Модуль 5. Управление основной памятью
- •Тема 8.Управление реальной памятью
- •Тема 9. Понятие виртуальной памяти
- •Концепция виртуальной памяти
- •1.Признак обращения 0 - было
- •2.Признак модификации записи 0 - неизменен.
- •Тема 10. Страничная организация. Сегментная организация. Странично-сегментная организация. Двухуровневая страничная организация
- •Динамическая страничная организация
- •Сегментная организация виртуальной памяти
- •Комбинированная странично-сегментная организация памяти
- •Двухуровневая страничная организация
- •Тема 11. Управление процессорами и заданиями в однопроцессорном вычислительном комплексе. Алгоритмы планирования процессов
- •Тема 12. Управление процессорами и заданиями в мультипроцессорном вычислительном комплексе
- •Решение фирмы Сompaq?
- •Тема 13.Управление периферийными устройствами. Эволюция систем ввода-вывода, каналы ввода вывода. Регистры и команды ввода вывода.
- •Организация программного обеспечения ввода-вывода
- •Тема 14.Система управления файлами
- •Система управления файлами
- •Модуль 8. Управление данными
- •Тема 15. Способы доступа и организации файлов. Распределение файлов на диске
- •Способы доступа и организации файлов
- •Управление внешней памятью
- •Способы распределения памяти на диске
- •Тема 16. Требования и тенденции построения ос
- •Требования, предъявляемые к ос 90-х годов
- •Тенденции в структурном построении ос
- •Тема 17. Unix и ms Windows nt
Тема 12. Управление процессорами и заданиями в мультипроцессорном вычислительном комплексе
Два вида мультипроцессорных авчислительных систем
Мультипроцессорные системы с подчиненными процессорами
Мультипроцессорные системы с равноправными процессорами
Решение фирмы Сompaq
Современной тенденцией развития вычислительной техники является построение вычислительных комплексов, содержащих несколько ЦП, называемых мультипроцессорными вычислительными системами. Мультипроцессорная обработка – это способ организации вычислений в системах с несколькими процессорами, при котором несколько задач (процессов, нитей) могут одновременно выполняться на разных процессорах системы.
Целью построения мультипроцессорных вычислительных систем является:
повышение производительности вычислительных систем;
повышение надежности и коэффициента готовности вычислительной системы.
Существует два вида мультипроцессорных вычислительных систем:
Мультипроцессорная вычислительная система со слабо связанными процессорами, называемая многомашинными комплексами, которые предусматривают соединение двух или более вычислительных машин при помощи канала связи и/или внешней памяти.
Мультипроцессорные системы с сильно связанными процессорами, называющиеся многопроцессорными вычислительными комплексами, которые имеют единую ОП, коллективно используемую несколькими ЦП.
Рисунок 9.1. Системы со слабо связанными процессорами.
Мультипроцессорная организация системы приводит к усложнению всех алгоритмов управления ресурсами.
Например, необходимо планировать процессы не для одного, а для нескольких процессоров, что гораздо сложнее. Сложности возрастают при росте конфликтов по обращению к устройствам ввода/вывода, данным общей памяти и совместно используемым программам. Все эти проблемы должны решать ОС путем синхронизации, ведения очередей, планирования процессов.
Итак, в отличие от однопроцессорных ОС, подсистемы управления процессами и заданиями должны выполнять следующие основные функции:
организация взаимодействия центральных процессоров (синхронизация);
управление загрузкой процессоров (диспетчирование);
Существует несколько способов взаимодействия ЦП:
Вычислительный комплекс и ОС с подчиненными процессорами- асимметричное мультипроцессирование (один главный процессор и несколько подчиненных).
Вычислительный комплекс и ОС с равноправными процессорами.
Вычислительный комплекс и ОС с симметричной организацией - симметричное мультипроцессирование.
В мультипроцессорных системах с подчиненными процессорамиодин ЦП является главным, остальные - подчиненными (ведущий - ведомые). Это самая простая организация не намного сложнее однопроцессорной системы. Операционная система выполняется только на главном процессоре. Этот ЦП осуществляет ввод/вывод и управляет загрузкой подчиненных процессоров. Подчиненные процессоры выполняют только программы пользователя. Узкое место - главный процессор. Он должен иметь большую мощность (производительность), чем подчиненные процессоры, чтобы последние не простаивали.
Рисунок.9.2 Мультипроцессорная система
В мультипроцессорной системе с равноправными процессорамикаждый ЦП имеет собственную ОС и управляет собственными ресурсами и устройствами ввода/вывода по типу многомашинных комплексов. В такой организации для управления всей системы существуют таблицы с глобальной системной информацией, доступ к которой строго контролируется методом взаимного исключения. Каждый ЦП берет из общей операции задание и выполняет его до завершения. Во время исполнения взаимодействие между ЦП не предусматривается. Данную систему характеризует высокая надежность, но не достаточно высокий уровень распараллеливания
Симметричная организация мультипроцессорной системы наиболее сложна и эффективна. Здесь все ЦП - идентичны. Каждый из них может управлять работой любого периферийного устройства и обращаться к любому устройству памяти. В таких системах в общей области памяти существует две очереди: очередь готовых процессов и очередь готовых процессоров
В любой момент времени любой готовый процесс может выполняться на любом готовом процессоре. Процессы во время своего исполнения мигрируют между ЦП. ОС также перемещается по процессорам, но в каждый момент времени может находиться только на одном процессоре.
Симметричное мультипроцессирование реализуется общей для всех процессоров ОС. Все процессы равноправно участвуют в управлении вычислительным процессом и в выполнении прикладных задач. Например, сигнал прерывания от устройства, на которое выводит данные прикладной процесс, выполняемый на некотором процессоре, может быть обработан совсем другим процессором.
Разные процессоры могут в какой-то момент времени выполнять как разные, так и одинаковые модули общей ОС. Для этого программные модули ОС должны обладать свойством повторной входимости – реентерабельности. ОС полностью децентрализована. Освободившийся процессор сам запускает планировщик задач, который выбирает из общей системной очереди задачу для выполнения. Все ресурсы выделяются для задачи по мере потребности и не закрепляются за процессором. При таком подходе все процессоры работают с одной и той же динамически выравниваемой загрузкой. В решении одной задачи могут участвовать сразу несколько процессоров, если она допускает распараллеливание, например, путем представления нескольких нитей (потоков для WINDOWS NT фирмы Microsoft),UNUX - SOLARISкомпанииSun, базирующийся наUNIIX System V Release.
Рисунок.9.3 Архитектура однопроцессорной системы
Достоинства этой организации:
высокая надежность (отказ одного из ЦП исключает его из очереди готовых процессоров);
сбалансированная загрузка ЦП;
лучшее использование ресурсов.
Недостатки - возрастает число конфликтов по системному обслуживанию, так как ОС имеется только в одном экземпляре.
Фирма COMPAQ, сотрудничая сNOVELL, выпустилаOS-NETWARE fromCOMPAQ.
SCO UNIXоптимизирована под серверыCOMPAQи поддерживает многопроцессорность с помощью утилитыSCO MPX, которая эффективно использует симметричную многопроцессорную архитектуру.
Рассмотрим архитектуру двухпроцессорной вычислительной системы фирмы COMPAQ.В основу решения положено два принципа:
пропускная способность шины должна превышать сумму пропускных способностей всех подключенных к ней компонент;
как следствие, компонента, готовая передать данные не должна ждать.
Первое - за счет наращивания разрядности шин. Второе - за счет кэширования. Первоначально IBM PC/XT/AT имели один 8/16 разрядный канал передачи данных, к которому посредством шины подключались все основные компоненты системы: процессор, память, устройство ввода/вывода (рисунок 9.3)
По сути, канал - расширение шины процессора, и повышение производительности канала за счет применения новых более быстродействующих процессоров оказалось невозможным из-за сохранения совместимости с существующими устройствами, рассчитанными на работу с 8 мгц шиной ISA. Шина стала узким местом, которое ограничивало скорость доступа ЦП к памяти.