- •Введение
- •Глава 1. Операционная система как управляющее программное обеспечение
- •1.1. Понятие операционной системы
- •1.6. Семейства операционных систем
- •1.7. Место операционных систем среди программного обеспечения эвм
- •1.8. Классификация операционных систем
- •1.9. Принципы построения операционных систем
- •1.10. Переносимость ос
- •Контрольные вопросы
- •Глава 2. Архитектура ос
- •2.1. Архитектура на базе ядра в привилегированном режиме
- •2.2. Микроядерная архитектура
- •Контрольные вопросы.
- •Глава 3. Файловая система
- •3.1. Назначение файловой системы
- •3.2. Имена и типы файлов
- •3.3. Логическая организация файлов
- •3.4. Физическая организация файлов
- •3.5. Модели и архитектуры файловых систем
- •Контрольные вопросы
- •4.1.2. Драйверы устройств
- •4.1.3. Независимый от устройств слой операционной системы
- •4.1.4. Пользовательский слой программного обеспечения
- •4.2. Управление вводом-выводом
- •4.2.1. Физическая организация устройств ввода-вывода
- •4.2.2. Организация программного обеспечения ввода-вывода
- •4.3. Мультипроцессорная обработка
- •Контрольные вопросы
- •Глава 5. Управление процессами в эвм
- •5.1. Состояние процессов
- •5.2. Контекст и дескриптор процесса
- •5.3. Алгоритмы планирования процессов
- •5.4. Операции над процессами
- •5.5. Многозадачность и многонитевость
- •5.6. Тупиковые ситуации и их предотвращение
- •5.8. Приоритеты в вычислительных системах
- •5.9. Диспетчеризация процессов
- •Контрольные вопросы к главе 5
- •Глава 6. Управление ресурсами вычислительных систем
- •6.1. Типы адресов
- •6.2. Методы управления памятью
- •6.3. Буферизация
- •6.4. Организация виртуальной памяти
- •6.5. Защита и блокировка памяти
- •Контрольные вопросы
- •Глава 7. Сетевые операционные системы
- •7.1. Структура сетевой операционной системы
- •7.2. Одноранговые сетевые ос и ос с выделенными серверами
- •7.3. Ос для рабочих групп и ос для сетей масштаба предприятия
- •Контрольные вопросы
- •Глава 8. Microsoft Windows
- •8.1. Семейство ос компании Microsoft.
- •8.2. Семейство ос для карманных компьютеров.
- •8.3. Рыночная доля Windows
- •Контрольные вопросы
- •Заключение
- •Список рекомендуемой литературы
- •Оглавление
4.3. Мультипроцессорная обработка
Мультипроцессорная обработка – способ организации вычислительного процесса в системах с несколькими процессорами, при котором несколько задач могут выполняться одновременно на разных процессорах.
Способы организации вычислительного процесса:
Асимметричное мультипроцессирование (ведущий/ведомый).
Симметричное мультипроцессирование.
Свойство ОС - реентерабельность (или повторная входимость).
Не следует путать мультипрограммную обработку и мультипроцессорную. В мультипрограммных системах параллельная работа разных устройств позволяет одновременно вести обработку нескольких программ, но при этом в процессоре, в каждый момент времени, выполняется только одна программа, т.е. несколько программ выполняются попеременно. А в мультипроцессорных системах несколько задач выполняются действительно одновременно, так как имеется несколько обрабатывающих устройств – процессоров. Многопроцессорность не исключает мультипрограммирования.
Мультипроцессорная система приводит к усложнению всех алгоритмов управления ресурсами. Сложности возникают из-за возрастания числа конфликтов при обращении к общим устройствам. Необходимо предусмотреть эффективные средства блокировки при доступе к разделяемым информационным структурам ядра. Все эти задачи должна решать ОС путем синхронизации процессов, введения очередей и планирования ресурсов.
Мультипроцессорные системы часто характеризуют как симметричные и асимметричные. При этом следует четко определять к какому аспекту мультипроцессорной системы относится эта характеристика - к типу архитектуры или к способу организации вычислительного процесса.
Симметричная архитектура мультипроцессорной системы предполагает однородность всех процессоров и единообразия включения всех процессоров в общую схему. Традиционные симметричные мультипроцессорные конфигурации разделяют одну общую память между всеми процессорами.
В асимметричной архитектуре разные процессоры могут отличаться как своими характеристиками, так и функциональной ролью. Функциональная неоднородность в асимметричной архитектуре влечет за собой структурные отличия во фрагментах системы, содержащих разные процессоры.
Другой аспект мультипроцессорных систем, который может характеризоваться симметрией или ее отсутствием, является способ организации вычислительного процесса. Он определяется и реализуется ОС.
Асимметричное мультипрограммирование является наиболее простым способом организации вычислительного процесса. Данный способ часто называют ведущий-ведомый.
Функционирование системы по принципу ведущий-ведомый предполагает выделение одного из процессоров в качестве ведущего, на котором работает ОС и который управляет всеми остальными процессорами. Асимметричная модель может быть реализована как на системах с симметричной мультипроцессорной архитектурой как и на системах с асимметричной процессорной архитектурой.
Симметричное мультипроцессирование как способ организации вычислительного процесса может быть реализовано в системах только с симметричным мультипроцессированием. Разные процессоры могут в какой-то момент одновременно обслуживать как разные, так и одинаковые модули ОС. Для этого программы в ОС должны обладать свойством повторной сходимости (реентерабельностью).