stringtranslate.com

Подключи и работай

В вычислительной технике устройство plug and play ( PnP ) или компьютерная шина — это устройство со спецификацией, которая облегчает распознавание аппаратного компонента в системе без необходимости физической конфигурации устройства или вмешательства пользователя в разрешение конфликтов ресурсов. [1] [2] Термин «plug and play» с тех пор был расширен до широкого спектра приложений, к которым применяется то же отсутствие настройки пользователем. [3] [4]

Устройства расширения управляются и обмениваются данными с хост-системой через определенные адреса портов памяти или ввода-вывода , каналы прямого доступа к памяти , линии запроса прерывания и другие механизмы, которые должны быть однозначно связаны с конкретным устройством для работы. Некоторые компьютеры предоставляли уникальные комбинации этих ресурсов для каждого слота материнской платы или объединительной платы . Другие конструкции предоставляли все ресурсы для всех слотов, и каждое периферийное устройство имело собственное декодирование адреса для регистров или блоков памяти, необходимых для связи с хост-системой. Поскольку фиксированные назначения затрудняли расширение системы, устройства использовали несколько ручных методов назначения адресов и других ресурсов, таких как жестко закрепленные перемычки, штыри, которые можно было подключить с помощью проводов или съемных ремней, или переключатели, которые можно было установить для определенных адресов. [5] Поскольку микропроцессоры сделали компьютеры массового рынка доступными, программная конфигурация устройств ввода-вывода была выгодна, чтобы позволить установку неспециалистам. Ранние системы для программной конфигурации устройств включали стандарт MSX , NuBus , Amiga Autoconfig и IBM Microchannel. Первоначально все карты расширения для IBM PC требовали физического выбора конфигурации ввода-вывода на плате с помощью перемычек или DIP-переключателей , но все больше устройств шины ISA организовывались для программной конфигурации. [6] К 1995 году Microsoft Windows включила комплексный метод перечисления оборудования во время загрузки и выделения ресурсов, который был назван стандартом «Plug and Play». [7]

Устройства Plug and Play могут иметь ресурсы, выделяемые только во время загрузки, или могут быть системами горячего подключения , такими как USB и IEEE 1394 (FireWire). [8]

История конфигурации устройства

Сторонняя последовательная интерфейсная карта для Apple II . Пользователь перерезал проводные дорожки между тонко соединенными треугольниками в точках X1 и X3 и спаял неподключенные площадки ◀▶ в точках X2 и X4 в центре карты. Откатить модификацию было сложнее.
Слева: блоки перемычек разных размеров.
Справа: DIP-переключатель с 8 переключателями.

Некоторые ранние периферийные устройства микрокомпьютеров требовали от конечного пользователя физического перерезания одних проводов и спаивания других для внесения изменений в конфигурацию; [9] такие изменения должны были быть в значительной степени постоянными на весь срок службы оборудования.

По мере того, как компьютеры становились все более доступными для широкой публики, возникла необходимость в более частых изменениях, которые должны были вноситься пользователями компьютеров, не имеющими навыков использования паяльников. Вместо резки и пайки соединений, конфигурация выполнялась с помощью перемычек или DIP-переключателей . Позже этот процесс конфигурации был автоматизирован: Plug and Play. [6]

МСХ

Система MSX , выпущенная в 1983 году, [10] была разработана с нуля, чтобы быть plug and play, и достигала этого с помощью системы слотов и подслотов, где каждый имел свое собственное виртуальное адресное пространство , тем самым устраняя конфликты адресации устройств в самом его источнике. Не требовалось никаких перемычек или какой-либо ручной настройки, а независимое адресное пространство для каждого слота позволяло использовать очень дешевые и обычные чипы, наряду с дешевой клеевой логикой . Что касается программного обеспечения, драйверы и расширения поставлялись в собственном ПЗУ карты, таким образом, не требовалось никаких дисков или какого-либо вмешательства пользователя для настройки программного обеспечения. Расширения ПЗУ абстрагировали любые аппаратные различия и предлагали стандартные API, как указано ASCII Corporation .

НуБус

Плата расширения NuBus без перемычек и DIP-переключателей

В 1984 году Массачусетский технологический институт (MIT) разработал архитектуру NuBus [11] как платформенно-независимый периферийный интерфейс, который полностью автоматизировал конфигурацию устройств. Спецификация была достаточно интеллектуальной, чтобы работать как с big endian , так и с little endian компьютерными платформами, которые ранее были взаимно несовместимы. Однако этот агностический подход увеличил сложность интерфейса и потребовал поддержки чипов на каждом устройстве, что в 1980-х годах было дорого, и, за исключением использования в Apple Macintosh и машинах NeXT , эта технология не получила широкого распространения.

Amiga Autoconfig и шина Zorro

В 1984 году Commodore разработала протокол Autoconfig и шину расширения Zorro для своей линейки расширяемых компьютеров Amiga . Первое публичное появление состоялось на компьютерной выставке CES в Лас-Вегасе в 1985 году с так называемым прототипом «Lorraine». Как и NuBus, устройства Zorro не имели абсолютно никаких перемычек или DIP-переключателей. Информация о конфигурации хранилась на устройстве только для чтения на каждом периферийном устройстве, и во время загрузки хост-система выделяла запрошенные ресурсы установленной карте. Архитектура Zorro не распространилась на общее вычислительное использование за пределами линейки продуктов Amiga, но в конечном итоге была модернизирована как Zorro II и Zorro III для более поздней итерации компьютеров Amiga.

Архитектура микроканалов

Плата расширения MCA без перемычек и DIP-переключателей

В 1987 году IBM выпустила обновление для IBM PC, известное как Personal System/2, линейка компьютеров, использующая архитектуру Micro Channel . [12] PS/2 была способна к полностью автоматической самонастройке. Каждая часть оборудования расширения выпускалась с дискетой, содержащей специальный файл, используемый для автоматической настройки оборудования для работы с компьютером. Пользователь устанавливал устройство, включал компьютер, загружал информацию о конфигурации с диска, и оборудование автоматически назначало прерывания, DMA и другие необходимые настройки.

Однако диски представляли собой проблему в случае их повреждения или потери, поскольку единственными вариантами получения замены в то время были почтовые отправления или коммутируемая служба BBS IBM . Без дисков любое новое оборудование было бы совершенно бесполезным, а компьютер иногда вообще не загружался, пока не было удалено ненастроенное устройство.

Micro Channel не получил широкой поддержки, [13] потому что IBM хотела исключить производителей клонов из этой вычислительной платформы следующего поколения. Любой, кто разрабатывал для MCA, должен был подписать соглашения о неразглашении и выплачивать IBM роялти за каждое проданное устройство, что привело к ценовой надбавке на устройства MCA. Конечные пользователи и производители клонов восстали против IBM и разработали собственную шину открытых стандартов, известную как EISA. Следовательно, использование MCA зачахло, за исключением мэйнфреймов IBM.

Самостоятельная настройка ISA и PCI

Со временем многие карты промышленной стандартной архитектуры (ISA) включали, посредством фирменных и разнообразных методов, аппаратное обеспечение для самонастройки или для обеспечения программной конфигурации; часто карта поставлялась с программой конфигурации на диске, которая могла автоматически устанавливать программно-конфигурируемое (но не самонастраивающееся) оборудование. Некоторые карты имели как перемычки, так и программную конфигурацию, причем некоторые настройки контролировались каждым из них; этот компромисс уменьшил количество перемычек, которые нужно было установить, избежав при этом больших затрат на определенные настройки, например, энергонезависимые регистры для настройки базового адреса. Проблемы с необходимыми перемычками продолжались, но постепенно уменьшались, поскольку все больше и больше устройств, как ISA, так и других типов, включали дополнительное аппаратное обеспечение для самонастройки. Однако эти усилия все еще не решили проблему обеспечения конечного пользователя соответствующим программным драйвером для оборудования.

ISA PnP или (устаревшая) Plug & Play ISA была системой plug-and-play, которая использовала комбинацию модификаций оборудования, системного BIOS и программного обеспечения операционной системы для автоматического управления распределением ресурсов. Она была заменена шиной PCI в середине 1990-х годов.

Технология PCI plug and play (автоконфигурация) основана на спецификации PCI BIOS 1990-х годов, которая была заменена спецификацией ACPI в 2000-х годах.

Устаревшее Plug and Play

В 1995 году Microsoft выпустила Windows 95 , которая попыталась максимально автоматизировать обнаружение и настройку устройств, но все еще могла вернуться к ручным настройкам, если это было необходимо. Во время первоначального процесса установки Windows 95 она пыталась автоматически обнаружить все устройства, установленные в системе. Поскольку полное автоматическое обнаружение всего было новым процессом без полной поддержки отрасли, процесс обнаружения постоянно записывал в файл журнала отслеживания прогресса во время процесса обнаружения. В случае, если проверка устройства не удавалась и система зависала, конечный пользователь мог перезагрузить компьютер, перезапустить процесс обнаружения, и установщик использовал журнал отслеживания, чтобы пропустить точку, вызвавшую предыдущее зависание. [14]

В то время в системе могла быть смесь устройств, некоторые из которых могли автоматически настраиваться, а некоторые все еще использовали полностью ручные настройки с помощью перемычек и DIP-переключателей. Старый мир DOS все еще скрывался под Windows 95, и системы могли быть настроены на загрузку устройств тремя различными способами:

Microsoft не могла утверждать полный контроль над всеми настройками устройств, поэтому файлы конфигурации могли включать смесь записей драйверов, вставленных автоматическим процессом настройки Windows 95, а также могли включать записи драйверов, вставленные или измененные вручную самими пользователями компьютеров. Диспетчер устройств Windows 95 также мог предлагать пользователям выбор из нескольких полуавтоматических конфигураций, чтобы попытаться освободить ресурсы для устройств, которые все еще нуждались в ручной настройке.

Пример интерфейсной карты ISA с крайне ограниченными возможностями выбора прерываний, распространенная проблема интерфейсов ISA для ПК.
Kouwell KW-524J двойной последовательный, двойной параллельный порт, 8-битный ISA, выпущенный в 1992 году:
* Последовательный 1: IRQ 3/4/9
* Последовательный 2: IRQ 3/4/9
* Параллельный 1: IRQ 5/7
* Параллельный 2: IRQ 5/7
(Нет технических причин, по которым 3,4,5,7,9 не могут быть выбраны для каждого порта.)

Кроме того, хотя некоторые более поздние устройства ISA могли автоматически настраиваться, платы расширения ISA для ПК обычно ограничивали себя очень небольшим количеством вариантов выбора для линий запроса прерывания. Например, сетевой интерфейс может ограничить себя только прерываниями 3, 7 и 10, в то время как звуковая карта может ограничить себя прерываниями 5, 7 и 12. Это приводит к небольшому количеству вариантов конфигурации, если некоторые из этих прерываний уже используются каким-либо другим устройством.

Аппаратное обеспечение персональных компьютеров дополнительно ограничивало возможности расширения устройств, поскольку прерывания не могли быть общими, а некоторые многофункциональные платы расширения использовали несколько прерываний для различных функций платы, например, двухпортовая последовательная плата, требующая отдельного прерывания для каждого последовательного порта.

Из-за этой сложной операционной среды процесс автоопределения иногда выдавал неверные результаты, особенно в системах с большим количеством устройств расширения. Это приводило к конфликтам устройств в Windows 95, в результате чего устройства, которые должны были быть полностью самонастраиваемыми, не работали. Ненадежность процесса установки устройств привела к тому, что Plug and Play иногда называли Plug and Pray . [15]

Примерно до 2000 года ПК-компьютеры все еще можно было купить с комбинацией слотов ISA и PCI, поэтому все еще была возможность, что ручная настройка устройств ISA может потребоваться. Но с последующими выпусками новых операционных систем, таких как Windows 2000 и Windows XP, Microsoft имела достаточно влияния, чтобы заявить, что драйверы больше не будут предоставляться для старых устройств, которые не поддерживают автоматическое определение. В некоторых случаях пользователь был вынужден покупать новые устройства расширения или полностью новую систему для поддержки следующего выпуска операционной системы.

Текущие интерфейсы plug and play

В настоящее время используется несколько полностью автоматизированных компьютерных интерфейсов, каждый из которых не требует настройки устройства или других действий со стороны пользователя компьютера, кроме установки программного обеспечения, для самоконфигурируемых устройств. Эти интерфейсы включают:

Для большинства этих интерфейсов конечному пользователю доступно очень мало технической информации о производительности интерфейса. Хотя и FireWire, и USB имеют пропускную способность, которая должна быть общей для всех устройств, большинство современных операционных систем не могут контролировать и сообщать о количестве используемой или доступной пропускной способности или определять, какие устройства в данный момент используют интерфейс. [ необходима цитата ]

Смотрите также

Ссылки

  1. ^ Kozierok, Charles M. (17 апреля 2001 г.). «Plug and Play». The PC Guide . Получено 16 октября 2018 г.
  2. ^ "Определение plug and play из энциклопедии PC Magazine". pcmag.com . Архивировано из оригинала 2013-03-27 . Получено 2018-10-16 .
  3. ^ «Как или где найти сертификат Microsoft WPD Enhanced Storage». microsoft.com . 28 декабря 2011 г. Получено 16 октября 2018 г.
  4. ^ "Что означает Plug aNd Play?". Архивировано из оригинала 2018-10-16 . Получено 2018-12-08 .
  5. ^ "Legacy Plug and Play Guidelines - Microsoft Download Center". Архивировано из оригинала 2016-12-16 . Получено 2018-10-16 .
  6. ^ ab «Выгодно ли использовать Plug and Play (ТЕМА НОМЕРА). BYTE . Октябрь 1991 г.
  7. ^ "Plug and Play Run-Time Services". DrDobbs.com . 1 сентября 1995 г. Run-time services (обнаруживаемые только в программном обеспечении) являются центральными в Windows ... который находит заголовок Plug and Play, а затем вызывает run-time services. ... Windows 95 включает в себя мастер "Добавить новое оборудование"
  8. ^ Определение Plug and Play
  9. ^ "Электрические проблемы с картой Apple II". BigMESSoWires.com (Большая путаница с проводами) . На карте Disk II, пока Apple II простаивал, я измерил 600 мВ... Перережьте дорожку для питания стороны B VCC 3,3 В и используйте провод для накрутки и припаяйте его к +5 В.
  10. ^ Гордон Лэнг (2004). Цифровое ретро: Эволюция и дизайн персонального компьютера. Ilex Press. ISBN 9781904705390.
  11. ^ Пасика, Майкл Стивен (1984). Исследование архитектур для сопряжения с NuBus (диссертация). Массачусетский технологический институт. Кафедра электротехники. hdl :1721.1/15573.
  12. ^ "IBM PS/2: 25 лет истории ПК". 10 июля 2012 г. К моменту запуска PS/2 в 1987 г. IBM PC ... Линейка была запущена в апреле 1987 г. с ... новой шиной расширения, получившей название Micro Channel Architecture.
  13. ^ "Открытые стандарты против IBM – вспоминая архитектуру MicroChannel". 9 декабря 2004 г. PS/2, основанная на фирменной архитектуре MicroChannel ... не соответствовала требованиям рынка
  14. ^ Скотт Мюллер, Модернизация и ремонт ПК, одиннадцатое издание , Que, 2999, ISBN 0-7897-1903-7 , стр. 1370 
  15. ^ "Обзор Plug and Play: как Windows находит драйверы для USB-устройств". 20 мая 2009 г. Итак, Plug and Play звучит здорово, не так ли? Ну, так оно и есть... когда все работает правильно (вот почему его иногда также называют "Plug and Pray"!)

Внешние ссылки