Jump to content

C.mmp

Блок памяти C.mmp, видны три стойки, включая переднюю панель поперечного переключателя.

C.mmp системой с была первой несколькими инструкциями и несколькими данными ( MIMD ), многопроцессорной разработанной в Университете Карнеги-Меллона (CMU) Уильямом Вульфом (1971). Обозначение C.mmp произошло от обозначения PMS Гордона Белла и Аллена Ньюэлла . [1] где центральный процессор (ЦП) обозначался как C , вариант обозначался точечной записью, а mmp обозначал Multi-Mini-Processor . По состоянию на 2020 год , машина выставлена ​​​​в CMU, в Wean Hall, на девятом этаже.

Структура [ править ]

шестнадцать миникомпьютеров Digital Equipment Corporation PDP-11 В качестве элементов обработки, называемых вычислительными модулями (CM), в системе использовались . Каждый КМ имел локальную память объемом 8К и локальный набор периферийных устройств. Одна из проблем заключалась в том, что устройство было доступно только через уникальный подключенный процессор, поэтому система ввода-вывода (разработанная Роем Левином) скрывала возможность подключения устройств и направляла запросы на хост-процессор. Если процессор выходил из строя, устройства, подключенные к его Unibus, становились недоступными, что становилось проблемой общей надежности системы. К процессору 0 ( загрузочному процессору ) были подключены дисководы.

Каждый из вычислительных модулей разделял следующие пути связи:

  • Межпроцессорная шина - используется для распределения общесистемных сообщений о синхронизации, прерываниях и управлении процессом между CM.
  • 16x16 Перекрестный переключатель – используется для подключения 16 CM с одной стороны и 16 банков общей памяти с другой. Если бы все 16 процессоров обращались к разным банкам памяти, все обращения к памяти были бы одновременными. Если бы два или более процессора пытались получить доступ к одному и тому же банку памяти, одному из них был бы предоставлен доступ в одном цикле, а остальные были бы согласованы в последующих циклах памяти.

Поскольку PDP-11 имел 16-битное логическое адресное пространство , был добавлен еще один блок трансляции адресов, чтобы расширить адресное пространство до 25 бит для пространства общей памяти. Архитектура Unibus предусматривала 18 бит физического адреса , а два старших бита использовались для выбора одного из четырех регистров перемещения, которые выбирали банк памяти. Правильное управление этими регистрами было одной из проблем программирования операционной системы (ОС) ядра .

В исходной конструкции C.mmp использовалась память на магнитных сердечниках , но со временем стала доступна более производительная динамическая память с произвольным доступом (RAM), и система была модернизирована.

Исходными процессорами были процессоры PDP-11/20, но в окончательной системе использовались только пять из них; Остальные 11 были процессорами PDP-11/40, которые были модифицированы за счет дополнительного записываемого пространства микрокода. [ нужна ссылка ] Все модификации этих машин были спроектированы и построены в КМУ.

Большинство модификаций 11/20 представляли собой специальные изменения в проводной объединительной плате , но поскольку PDP-11/40 был реализован в микрокоде , была разработана отдельная плата proc-mod , которая перехватывала определенные инструкции и реализовывала требования защищенной операционной системы. Например, для целостности операционной системы было необходимо, чтобы регистр указателя стека никогда не был нечетным. 20 ноября это было сделано путем обрезки вывода к младшему биту стекового регистра. 40 ноября любой доступ к стеку перехватывался платой proc-mod и генерировал ловушку незаконного доступа к данным , если младший бит был равен 1.

Операционная система [ править ]

Операционная система (ОС) получила название Hydra . Это была возможностях , основанная на объектно-ориентированная , многопользовательская и микроядерная система . Системные ресурсы были представлены в виде объектов и защищены с помощью возможностей.

ОС и большая часть прикладного программного обеспечения были написаны на языке программирования BLISS -11, который требовал кросс-компиляции на PDP-10 . ОС использовала очень мало языка ассемблера .

Среди языков программирования, доступных в системе, был вариант ALGOL 68 , который включал расширения, поддерживающие параллельные вычисления , позволяющие эффективно использовать C.mmp. ALGOL Компилятор работал в операционной системе Hydra.

Надежность [ править ]

Поскольку общая надежность системы зависела от работы всех 16 процессоров, возникли серьезные проблемы с общей надежностью оборудования. Если среднее время наработки на отказ (MTBF) одного процессора составляло 24 часа, то общая надежность системы составляла 16/24 часа, или около 40 минут. В целом система обычно работала от двух до шести часов. [2] Многие из этих сбоев были вызваны сбоями синхронизации во многих специальных схемах, добавленных в процессоры. Большие усилия были затрачены на повышение надежности оборудования, и когда процессор заметно выходил из строя, его выделяли и проводили диагностику в течение нескольких часов. Когда он прошел первый набор диагностики, он снова был разделен как процессор ввода-вывода и не запускал код приложения (но его периферийные устройства теперь были доступны); он продолжал проводить диагностику. Если он проходил их еще через несколько часов, он восстанавливался в качестве полноправного члена набора процессоров. Аналогично, если блок памяти (одна страница) был обнаружен как неисправный, он удалялся из пула доступных страниц, и до тех пор, пока не будет получено иное уведомление, ОС будет игнорировать эту страницу. Таким образом, ОС стала ранним примером отказоустойчивой системы, способной справляться с неизбежно возникающими аппаратными проблемами.

Ссылки [ править ]

  1. ^ Белл, К. Гордон (1981). Компьютерные структуры: чтения и примеры . МакГроу-Хилл. ISBN  978-0070043572 . OCLC   633760282 .
  2. ^ «Слабосвязанные мультипроцессоры» . www.edwardbosworth.com . Проверено 11 сентября 2018 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 585c56e1f39e3bf42553daa8a589a304__1718069340
URL1:https://arc.ask3.ru/arc/aa/58/04/585c56e1f39e3bf42553daa8a589a304.html
Заголовок, (Title) документа по адресу, URL1:
C.mmp - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)