Plug PC
- 1 year ago
- 0
- 0
|
В статье
не хватает
ссылок на источники
(см.
рекомендации по поиску
).
|
Plug and Play (сокр. PnP), дословно переводится как «Подключил и играй (работай)» — технология, предназначенная для быстрого определения и конфигурирования устройств в компьютере и других технических устройствах. В зависимости от аппаратного интерфейса и программной платформы (ОС, BIOS), процедура Plug and Play может производиться на этапе начальной загрузки системы или в режиме горячей замены — так это делается, например, для интерфейсов USB и IEEE 1394 .
Некоторые ранние компьютерные системы, например Apple II могли требовать от пользователя перепаивать и разрезать контакты на платах расширения для их переконфигурирования . Такая техника переконфигурирования была сложной и радикально уменьшала срок работы оборудования.
По мере того, как компьютеры становились доступными всё более широким слоям публики, стали требоваться более простые, удобные и доступные для частого использования технологии переконфигурирования. Первоначально вместо обрезки и перепайки проводников для смены конфигурации карт расширения были предложены джамперы (перемычки) и DIP-переключатели .
Слева: Блоки джамперов различного размера. Справа: Блок DIP-переключателей с 8 переключателями |
Позднее процесс переконфигурирования плат расширения был автоматизирован .
Выпущенная в 1983 году система MSX была изначально разработана как система, ориентированная на работу с Plug and Play. Это было реализовано с использованием специально организованной системы слотов расширения , каждый из которых, включая субслоты в случае использования расширителя слотов (slot expander) , обладал собственным виртуальным адресным пространством, что устраняло сам источник для возможных конфликтов адресов между устройствами. Для конфигурирования системы не требовалось переключать джамперы или проводить любые другие процедуры в ручном режиме. Независимое адресное пространство позволяло использовать в устройствах расширения дешевые микросхемы. Слой промежуточной логики, осуществлявший ретрансляцию виртуальных адресов в реальные так же оказался весьма дешёв в реализации.
На стороне программного обеспечения драйверы и расширения программного обеспечения поставлялись в постоянной памяти , расположенной на картах расширения. Это позволило ASCII Corporation создать систему, которая не требовала дисков с драйверами и каких-либо пользовательских манипуляций с программным обеспечением во время установки дополнительного оборудования. Расширения BIOS, устанавливаемые на ПЗУ (ROM Extansions в терминологии MSX) обеспечивали реализацию слоя аппаратных абстракций (HAL) , который позволял программному обеспечению работать со стандартным API устройств, не обращая внимания на особенности его аппаратной реализации.
Разработанная в 1984 в Массачусетском технологическом институте , архитектура шины расширения NuBus была задумана как нейтральный по отношению к используемой платформе интерфейс с полностью автоматическим конфигурированием подключённых к нему устройств. Спецификация интерфейса включала в себя даже одновременную поддержку big endian так и little endian представления чисел, бывших ранее одной из причин несовместимости платформ. Однако, повышенная сложность реализации нейтрального по отношению к платформе интерфейса, требовавшая более дорогих чипов, в 1980-х годах стала фактором, воспрепятствовавшим широкому распространению этого интерфейса.
В 1984 году компания Commodore разработала протокол Autoconfig и шину расширения Zorro для своего семейства персональных компьютеров Amiga . Разработка была впервые представлена публике на выставке Consumer Electronics Show , проходившей в Лас-Вегасе в 1985, под названием «Lorraine», данному прототипу технологии. Так же как и NuBus , устройства, подключаемые к шине Zorro не требовали никаких джамперов и DIP-переключателей. Сведения о конфигурации устройства хранились в ПЗУ карты расширения и хост-система, при загрузке выделяла карте необходимые ей ресурсы. Архитектура Zorro не получила широкого распространения в индустрии и, практически, не применялась за пределами продуктовой линейки Amiga . Однако, она последовательно обновлялась до версии Zorro II и 32-битной Zorro III .
В 1987, IBM выпустила обновленную линейку моделей IBM PC , известную как семейство Personal System/2 , использовавшую новую шину расширения — Micro Channel Architecture . PS/2 были способно к полностью автоматическому самоконфигурированию. Каждое из устройств расширения поставлялось в комплекте с дискетой , содержащей специальный файл, предназначенный для конфигурирования системы. Пользователь устанавливал плату расширения, включал компьютер, вставлял дискету, и компьютер автоматически назначал прерывания, каналы DMA и прочие требуемые плате ресурсы.
По сравнению с реализациями в упомянутых выше системах такая схема автоконфигурирования имела один недостаток: дискета могла испортиться или потеряться, а единственный способ восстановления необходимого файла настроек — это получение его от компании по почте или загрузка с BBS компании IBM. Без диска новое устройство было полностью бесполезным, и компьютер не мог нормально загрузиться до того, как это устройство не будет отключено от шины расширения. В то же время, преимуществом такого подхода была теоретическая возможность обновить информацию, необходимую для работы устройства.
Шина MCA не получила широкой поддержки , поскольку IBM препятствовала её использованию независимыми производителями IBM-PC-совместимых компьютеров . Каждый из разработчиков устройств, совместимых с MCA, подписывал с IBM соглашение о неразглашении технических деталей и должен был платить лицензионные отчисления с каждого устройства, что повышало их стоимость.
Выпущенный консорциумом из девяти производителей IBM-PC-совместимых компьютеров стандарт EISA позиционировался как альтернатива MCA. Он обладал чрезвычайно схожим способом реализации Plug and Play, основанном на файлах конфигурации, поставляемых в комплекте с дискетами. Однако, в отличие от MCA, компьютер с несконфигурированным устройством EISA всё же мог загрузиться и продолжить работу без доступа программного обеспечения к этому устройству.
Так же как и Micro Channel, EISA не получила широкого распространения, и в дальнейшем сама технология и основанная на ней реализация Plug and Play не развивались.
Шина ISA появилась раньше, чем в системы с её использованием стала внедряться технология Plug and Play. В связи с этим карты расширения, работающие с этой шиной, использовали массу разнообразных техник настройки, включая джамперы, DIP-переключатели, фирменные драйверы и утилиты и прочие методы в разнообразных комбинациях. Появление на картах Plug and Play в виде спецификации от Microsoft дополнительно усложнило эту систему, тем более, что различные операционные системы реализовывали Plug and Play по-разному.
Остроту проблемы с настройкой карт ISA для конечных пользователей сняло, скорее, не внедрение Plug and Play, а постепенный выход этого стандарта из широкого оборота. Упомянутая спецификация Microsoft ISA PnP, она же , включала в себя требования как к оборудованию, так и к доработкам BIOS и поведению операционной системы. Она потеряла свою актуальность по мере распространения стандарта PCI , в котором технология Plug and Play была реализована изначально.
В 1995 году Microsoft выпустила Windows 95 , в которой впервые попыталась автоматизировать определение установленных устройств и их конфигурирование. В той степени, в которой это было вообще возможно и с реализацией режима возврата к ручному конфигурированию системы, если это было необходимо. Во время процесса начальной установки Windows 95 она пыталась первоначально определить все устройства, установленные в системе. Постольку, поскольку этот процесс не поддерживался индустрией в полном объёме и не обладал обратной совместимостью, операционная система писала журнал в котором маркировала попытки автоопределения устройств. Если в результате этой процедуры компьютер подвисал, то у пользователя оставалась возможность принудительно его перезагрузить. Процесс автоопределения конфигурации компьютера при новой её загрузке продолжался с пропуском той его фазы, которая ранее вызвала зависание. Таким образом система могла постепенно пройти процедуру определения конфигурации компьютера до конца .
Несмотря на то, что в первоначальной реализации шины VMEbus технология Plug and Play реализована не была, ряд расширений и производных стандартов, в частности, VME64x, поддерживают Plug and Play. В целом, ситуацию с конфигурированием VMEbus-совместимых плат можно сравнить c ситуацией с платами ISA — не полностью общепринятые стандарты сочетаются с частными решениями отдельных производителей в произвольных комбинациях.
В настоящее время основная острота проблемы с автоопределением конфигурации компьютеров операционной системой для компьютеров общего применения давно уже снята. Абсолютное большинство устройств, интерфейсов расширения и операционных систем поддерживают процедуры Plug and Play.
Среди таких интерфейсов можно назвать
и многие другие.
В то же время в большинстве случаев пользователь оказывается лишён контроля за тонкостями настройки своих устройств и периферийных интерфейсов компьютера. Например, такие интерфейсы, как FireWire и USB, делят пропускную способность между всеми устройствами, подключенными к конкретному порту такого интерфейса, но у пользователя нет возможности управлять распределением полосы пропускания между этими устройствами. Оно обеспечивается автоматически средствами операционной системы.