Лекция: Поддержка многопроцессорной в операционных системах

Рассмотрим подходы к реализации поддержки многопроцессорности в ОС на программном уровне.

Асимметричная многопроцессорная

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

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

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

еще рефераты
Еще работы по информатике