Страница: 7/12
процессоров в системе?
Необходимо иметь в виду,что эффективность не растет линейно при добавлении еще одного процессора.Вернее,она растет линейно с увеличением числа процессоров только до тех пор,пока не наступают ограничения,связанные с проблемами соединения с общей шиной.Согласно известному предположению Минского для широкого класса алгоритмов конфликт между N процессорами с коллективным распределением ресурсов,
соединенными с общей шиной, ограничивает повышение производительности величиной log2N.
Современные конструкторы "суперкомпьютеров" использовали ряд параллельных структур и достигли повышения производительности в соответствиис законом Амдала:N/log2N.
Рассмотрим подробнее суть конфликтов на шине.Сетевая ОС должна управлять каждым процессором и,следовательно, взаимодействием процессора с внутренними вызовами и периферийными устройствами на шине(поэтому,собственно,
производительность и не растет линейно).Когда нить в однопроцессорной системе не может более выполняться до осуществления некоторого условия,процессор маскирует программное прерывание так,что никакой другой процесс не может воспользоваться данным ресурсом.Затем он сохраняет состояние нити,чтобы выполнение кода могло возобновиться при осуществлении условия.
В системе с одним процессором маскированное прерывание предотвращает использование процессором ресурса.Кроме того,достаточно просто сохранять описание уровней прерывания и масок,контролирующих доступ к структурам данных ОС.С добавлением каждого нового процессора эта задача становится все более трудной.ОС для SMP-платформы должна уточнить,что только один процессор в данный момент выполняет сегмент кода,который меняет глобальную структуру данных.Словом,в SMP-среде этот механизм (маскированное прерывание) не гарантирует,что различные процессы не будут иметь доступа к тому же самому ресурсу через другое прерывание.
Для управления прерываниями между процессорами иногда используется(например,Windows NT Advanced Server)метод взаимоблокировки.По сути,взаимоблокировка является программной процедурой,которая блокирует доступ второго
процессора к уже занятому ресурсу.Такой метод позволяет предотвратить порчу процессорами глобальных структур данных,однако при непродуманной реализации он может привести к тому,что процессоры будут бездействовать в течение длительного периода,ожидая освободившийся замок блокировки.
По мере добавления новых процессоров к системе накладные расходы на управление конфликтами возрастают,и это уменьшает отдачу от ОС,ориентированных на симметрично-многопроцессорную обработку.Это обстоятельство по идее будет как сейчас,так и впредь ограничивать число процессоров,
которое оправдано установить в SMP-платфорфу.
Действительно,наиболее узким местом,как установлено,является системная шина,а ее пропускная способность,несмотря на все
нововведения, только-только поспевает за ростом
производительности ЦП,а тут еще надо справиться с ростом их числа.
Спецификация многопроцессорных систем компании Intel.
На основе вышеизложенного можно получить некоторое представление о многопроцессорных(МП) системах,в частности,о SMP-платформах.В качестве конкретного примера использования многопроцессорных систем рассмотрим их спецификацию,
предложенную компанией Intel(MPS-MultiProcessor Specification V.1.1).Главная цель спецификации-определить стандартный интерфейс для многопроцессорных платформ,который позволит расширить область применения PC/AT-платформ по сравнению с традиционными платформами,в то же время сохраняя полную совместимость с PC/AT на уровне программ(термин "PC/AT-совместимость" используется,чтобы характеризовать компоненты,видимые(доступные)для программных средств).
Сердцем спецификации являются структуры данных, определяющие конфигурацию МП-системы.Эти структуры данных создает ВIOS,в известном формате представляя аппаратные средства стандартным драйверам устройств или Уровню Изоляции Аппаратуры(HAL-Hardware Abstraction Layer)ОС. Спецификация определяет задаваемые по умолчанию конфигурации аппаратуры,и в целях большей гибкости определяет расширения для стандартного BIOS.
рис.7.Концептуальные понятия.
1.Операционная система
2.Уровень абстрагирования от аппаратных средств
3.BIOS МП-системы
4.Структуры данных,задающих конфигурацию МП-системы
5.Аппаратные средства
В спецификации рассматриваются следующие вопросы:
-создание на основе PC/AT-платформ многопроцессорных систем, которые могут исполнять существующие программы для однопроцессорных и многопроцессорных микроядерных ОС.
-поддержка APIC(МП-контроллера прерываний)для обработки симметричного ввода-вывода.
-возможность использовать BIOS с минимальной настройкой на конкретную МП-систему.
Реферат опубликован: 4/05/2009