Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС 3-4 часть.doc
Скачиваний:
15
Добавлен:
01.04.2025
Размер:
6.45 Mб
Скачать
        1. Дублирование многих управляющих структур

        2. Нет совместного использования ЦП. Один ЦП перегружен, второй в простое.

        3. Нет совместного использования страниц ОЗУ  один процессор имеет память, а второй нет

        4. При использовании разделяемых ВнУ невозможно обеспечить когерентность дисков, т. е. их кэш ведется независимо каждым ЦП.

  1. Многопроцессорные ос – модуль Хозяин-подчиненный(Главный цп)

    1. Выполняется одна копия ОС на главном процессоре(хозяин)

    2. Все остальные выполняют приложения

    3. Главный ЦП выполняет приложения при отсутствии необходимости выполнения ОС

      1. Плюсы: здесь устраняются недостатки первого принципа.

      2. Минусы:

        1. При большом количестве ЦП хозяин может стать узким местом

        2. Такая модель работоспособна при небольшом количестве процессоров

  2. Модель: Симметричная мос

    1. Имеется одна копия ОС

    2. ОС может выполняться на любом процессоре

      1. Плюсы:

        1. Динамический баланс загрузки процессоров

        2. Эффективное использование ОЗУ

      2. Минусы:

        1. Необходимость синхронизации доступа различных процессоров к управляющим структурам

          1. Простое решение: Вся ОС- критический участок

          2. Эффективное решение: разбить ОС на независимые части и необходима синхронизация только к частям

        2. Сложность ОС из-за пункта (b)

ПЛАНИРОВАНИЕ ВРЕМЕНИ МУЛЬТИПРОЦЕССОРА

Факторы усложнения планирования

  1. Двухмерность (по времени, по ЦП)

  2. Взаимная зависимость процессов группы процессов:

    1. Процессы независимы

    2. Процессы зависимы

Планирование для независимых процессов:

  1. Список готовых процессов

  2. Много списков процессов, упорядоченных по приоритету

    1. Плюсы: автоматическая балансировка нагрузки готовых процессов

    2. Минусы:

      1. Высокая конкуренция за доступ к спискам задач

      2. Высокий объем накладных расходов на переключение процессов из различных состояний( из выполняющегося в готовый, из блокированного в готовый)

      3. Вставка промахов в кэш данных и команд в кэш TLB (отображение логичечких адресов в физические адреса) ведет к росту объема перемещений страниц, сегментов  снижение скорости доступа к адр. объектам. Причина – запуск задач на выполнение без памяти и предыстории траектории процессов.

  3. Родственное планирование времени мультипроцессов – снимает недостаток iii-минуса Идея – запускать процесс на том ЦП, на котором процесс уже выполнялся в предыдущих квантах. Реализация двухуровневая:

    1. LVL1: В момент создания процесса он закрепляется за определенным процессором  каждый ЦП имеет свой набор процессов

    2. LVL2: планирование времени жизни процесса – процесс выполняется на закрепленном процессоре. При отсутствии работы у какого-либо ЦП происходит перераспределение задач.

      1. Плюсы:

        1. равномерное распределение нагрузки

        2. используется родственность кэшей ЦП

        3. минимизируется конкуренция за доступ к спискам(во всяком случае, готовых)

ПЛАНИРОВАНИЕ СВЯЗАННЫХ ПРОЦЕССОВ группа процессов одной задачи

  • разделение пр-ва ЦП  пакетная обработка

  • совместное использование пр-ва ЦП  аналог квантов времени

  1. Планирование пакетами потоков в пр-ве ЦП – каждому потоку назначается свой ЦП и удерживается до конца работы пакета. При блокировках процессор удерживается за заблокированным процессом до завершения всего пакета

      1. Плюсы: управление степенью параллелизма

      2. Минусы: потери времени ЦП при блокировании потока

  2. Бригадное планирование – в пр-ве ЦП и во времени.

    1. Группы связанных потоков планируются как единое целое – бригада

    2. Все потоки бригады запускаются одновременно(каждый на своем ЦП) с квантованием времени

    3. Все члены бригады начинают и завершают кванты одновременно. В начале каждого кванта происходит перепланирование бригад.

При блокировании потока бригады этот поток удерживает за собой ЦП(В середине кванта нет преепланирования)  SMP – общая память(сильная связь)

Коммуникационные средства многомашинных ВС

с архитектурой MPP уровня пользователя

  • Распределенная память

  • Слабая

Различают три типа средств:

  1. Обмен сообщениями(команды послать/принять)

    1. Синхронный |

    2. Асинхронный |Парадигма ввода-вывода.

  2. Вызов удаленных процедур RPC  универсальное средство разработки ПО для SMP&MPP

  3. Распределенная память совместного доступа DSM 2+3 инструменты для создания ПО для SMP&MPP систем. Подробнее…

        1. Основан на 2х операциях вызова SEND (что, куда) и RECIEVE(что, откуда) что=сообщ. Куда=Id-процесса.

          1. Варианты реализации SEND

              1. Синхронная – блокирующие операции Send – после запуска операции ЦП простаивает

              2. Асинхронная – неблокирующая операция Send- копирует сообщения в буфер ядра системы

                  1. Минус: накладные расходы на копирование сообщений для ЦП и ОП

              3. Асинхронная№2- неблокирующая операция Send с прерываниями при завершении передачи данных

                  1. Минус: усложенние обработки

              4. Неблокирующая операция Send с блокированием буфера с сообщением только на чтение.

                  1. Минус: усложенние управления буферами

          2. Варианты реализации RECIEVE

              1. блокирующая операция – ЦП простаивает до прибытия сообщения

              2. неблокирующая операция с прерыванием при поступлении сообщения.

              3. неблокирующая операция с почтовым ящиком и его адресом.

              4. неблокирующая операция с активными сообщениями – порождает временные потоки для обработки поступившего сообщения.

                  1. Минус: накладные расходы на создание и завершение потоков обработки.