Interested Article - Асимметричное мультипроцессирование
- 2021-09-06
- 1
AMP или ASMP (от англ.: Asymmetric multiprocessing , рус.: Асимметричная многопроцессорная обработка или Асимметричное мультипроцессирование ) — тип многопроцессорной архитектуры компьютерной системы, который использовался до того, как была создана технология симметричного мультипроцессирования (SMP). Также использовался как более дешевая альтернатива в системах, которые поддерживали SMP.
В системе с асимметричной многопроцессорностью не все процессоры играют одинаковую роль. Например, система может использовать (либо на аппаратном, либо на уровне операционной системы) только один процессор для выполнения кода операционной системы, или поручать только одному процессору выполнение операций ввода-вывода. В других AMP-системах все процессоры могут выполнять код операционной системы и операции ввода-вывода, так что с этой стороны они ведут себя как симметричная многопроцессорная система, но определенная периферийная аппаратура может быть подсоединена только к одному процессору, так что со стороны работы с этой аппаратурой система предстаёт асимметричной.
История
В 1960-е—1970-е годы увеличить вычислительную мощность компьютера можно было, просто добавив в него ещё один процессор. Добавить ещё один такой же процессор было дешевле, чем покупать новый компьютер, работающий вдвое быстрее. Также простое добавление ещё одного процессора было выгоднее, чем покупка второго целого компьютера, для которого требовался отдельный машинный зал, дополнительное периферийное оборудование и персонал для обслуживания.
Первыми системами, к которым можно было добавлять второй процессор, были B5000 от компании Burroughs, DECsystem-1055, и IBM System/360 модель 65MP. Кроме того в некоторых университетах тоже были построены экспериментальные компьютеры со сдвоенными процессорами .
Однако проблема с добавлением процессора заключалась в том, что операционные системы того времени были разработаны только для однопроцессорных компьютеров, а внесение изменений для надежной поддержки двух процессоров требовало много времени. Чтобы обойти эту трудность, в операционные системы с поддержкой одного процессора вносили незначительные изменения лишь для минимальной поддержки второго процессора. «Минимальная поддержка» означала, что операционная система запускалась на «загрузочном процессоре» (boot processor), а на втором процессоре исполнялись только пользовательские программы. Например, в Burroughs B5000 второй процессор аппаратно не имел возможности исполнять «управляющий код» .
В других системах операционная система могла работать на любом из процессоров, но либо все периферийные устройства присоединялись к какому-то только одному процессору, либо через каждый процессор был доступ только к каким-то определенным периферийным устройствам.
Burroughs B5000
В Burroughs B5000 можно было при желании добавить «Процессор B». Этот второй процессор, в отличие от «Процессора А», не имел доступа к периферийным устройствам, но у обоих процессоров был доступ к общей памяти. Операционная система работала только на Процессоре А, а пользовательская задача — на Процессоре B. Когда пользовательской задаче требовался доступ к функциям операционной системе, Процессор B выдавал системный вызов в код ОС на Процессоре A, останавливался и ожидал результат обработки кодом ОС системного вызова, и только получив результат обработки системного вызовы, продолжал работу. .
CDC 6500 и 6700
Компания Control Data Corporation предлагала два варианта в «серии CDC 6000», где имелись два процессора: CDC 6500 двухпроцессорный CDC 6400 и CDC 6700, который представлял собой суперкомпьютер CDC 6600 , с добавленным к нему процессором CDC 6400.
Эти системы были построены несколько иначе, чем другие многопроцессорные системы, упомянутые в данной статье. Операционная система здесь работала только на периферийных процессорах, а на центральных процессорах работала пользовательская задача. Так что данные системы нельзя де-факто не есть ни AMP-системами, ни SMP -системами.
DECsystem-1055
Компания Digital Equipment Corporation (DEC) предлагала покупателям версию своего компьютера DECsystem-1050 с двумя процессорами KA10 . Потом такой же вариант присутствовал и в линейке компьютеров PDP-10.
PDP-11/74
Компания Digital Equipment Corporation разработала, но так и не довела до рынка мультипроцессорную версию компьютера PDP-11 — the PDP-11/74 , на которой работала многопроцессорная версия операционной системы RSX-11M . В этой системе любой из процессоров мог выполнять код операционной системы и осуществлять ввод-вывод, но не все периферийные устройства были доступны каждому из процессоров, — большая часть периферии присоединялась лишь к одному процессору, так что процессору без периферии для работы с каким-либо устройством процессора-соседа требовалось отправлять специальный запрос .
VAX-11/782
Первый многопроцессорный компьютер компании DEC из линейки VAX — VAX-11/782 — был асимметричным. (Только первый процессор имел доступ к устройствам ввода-вывода .)
Univac 1108-II
В компьютере Univac 1108-II и его последующих вариантах можно было установить до трех процессоров . На этих компьютерах работала операционная система UNIVAC EXEC 8, но по имеющейся документации так и не понятно, в какой степени операционная система поддерживала асимметричную или симметричную многопроцессорность.
IBM System/370 модель 168
Добавление второго процессора в модели 168 линейки IBM System/370 предлагалось в двух вариантах . Первый предлагался в виде специального модуля IBM 3062 Attached Processing Unit , в котором процессор не имел доступ к каналам ввода-вывода и значит работал по схожей схеме, как «Процессор B» в компьютере B5000 от Burroughs, или как второй процессор в системе DEC VAX-11/782. Во втором варианте предполагалось подключение полноценного процессора, что было схоже с моделью 65MP из предыдущей линейки System/360 .
Compaq SystemPro
В ноябре 1989 года компания Compaq объявила о выпуске первого многопроцессорного сервера Compaq SystemPro на базе архитектуры x86 с двумя процессорами Intel 80386 с частотой 33 МГц . В дальнейшем были выпущены модели с процессором Intel 80486, когда тот вышел на рынок. Compaq SystemPro были асимметричной многопроцессорной системой, — второй процессор устанавливался на плате расширения в дополнение к стандартному и выполнял только пользовательские программы, а первый процессор обрабатывал прерывания, системные вызовы и загружал операционную систему. Это позволяло в одной системе в использовать разные процессоры, например к первому Intel 386 добавлять на плате расширения Intel 486 и наоборот.
На тот момент многопроцессорность на x86-архитектуре поддерживали только операционные системы Novell NetWare , Microsoft LAN Manager и SCO UNIX/386 .
Из всех моделей линейки SystemPro только поздняя модель — SystemPro XL — предлагалась со стандартной симметричной мультипроцессорностью, пока осенью 1993 года ей на смену не была представлена линия SMP-серверов Compaq ProLiant .
См. также
Примечания
- . Дата обращения: 11 октября 2013. 13 августа 2014 года.
- ↑ . Burroughs. Дата обращения: 11 октября 2013. 24 сентября 2019 года.
- . Дата обращения: 11 октября 2013. 7 сентября 2012 года.
- 2 января 2014 года.
- . Дата обращения: 11 октября 2013. 19 марта 2012 года.
- . Дата обращения: 11 октября 2013. 7 сентября 2012 года.
- . (недоступная ссылка)
- ↑ . Digital Equipment Corporation. Дата обращения: 11 октября 2013. 7 сентября 2012 года.
- от 16 июня 2012 на Wayback Machine : the VAX-11/782 is described as an asymmetric multiprocessing system in 1982
- . Sperry Rand. Дата обращения: 11 октября 2013. 27 сентября 2011 года.
- . Дата обращения: 11 октября 2013. Архивировано из 2 августа 2014 года.
- IBM. (январь 1976). Дата обращения: 11 октября 2013. 12 августа 2012 года.
- . Дата обращения: 29 октября 2017. 18 октября 2013 года.
- . Дата обращения: 29 октября 2017. 17 октября 2013 года.
- 2021-09-06
- 1