NuBus


NuBus (произносится как "нюбас"[1]) — это 32-битная компьютерная шина, первоначально разработанная в Массачусетском технологическом институте и стандартизированная в 1987 в качестве части проекта NuMachine workstation[2]. Первая полная реализация NuBus была осуществлена Western Digital в рамках вышеупомянутого проекта и в рамках LMI Lambda компании Lisp Machines Inc. Впоследствии, NuBus использовалась в Лисп-машине Texas Instruments Explorer[англ.].

Наибольшую известность она получила в качестве шины в компьютерах компании Apple, применяемой в серии Macintosh, и в качестве шины в компьютерах компании NeXT.

Ранние шины микрокомпьютеров, такие как S-100, часто являлись просто соединителями с ножками микропроцессора и линиями питания. Это подразумевало, что любое изменение в архитектуре компьютера влекло за собой и изменение его шины. Разработка NuBus велась с учётом необходимости преодоления этой проблемы. Она разработана таким способом, чтобы быть независимой от процессора, от архитектуры как таковой и любых особенностей реализации ввода-вывода.

Одной из наиболее важных особенностей, благодаря которой NuBus позиционировалась разработчиками как «шина готовая к будущему» (с англ. «future-proof») была 32-битная архитектура[3], предложенная в тот период, когда 8- и 16-битные шины имели широкое распространение, а 64-битность для компьютерных систем считалась чем-то избыточным и ненужным.

Как писалось выше, NuBus была спроектирована нейтральной по отношению к процессору. Многие шины были ориентированы на конкретные варианты представления данных, используемые конкретными платформами. Спецификация интерфейса NuBus включала в себя одновременную поддержку нескольких представлений чисел: как big endian, так и little endian. Предполагалось, что любая карта NuBus при наличии соответствующего драйвера сможет работать в любой системе, вне зависимости от установленного в ней процессора.

В этой шине, у одной из первых в индустрии, была реализована технология Plug and Play. Карты могли быть сконфигурированы системой в процессе загрузки компьютера и этот процесс, в отличие, например, от шины ISA не требовал от пользователя каких-либо усилий по конфигурации памяти, прерываний, портов ввода-вывода и иных ресурсов, которые могли использовать карты.