Plug and play что это
Перейти к содержимому

Plug and play что это

  • автор:

Что такое технология Plug-and-Play(ликбез).

Архитектура системы plug-and-play (включай и работай) включает в себя три важнейших компонента:

— операционная система поддерживающая технологию типа plug-and-play, которая берет на себя управление всеми внешними устройствами, загружает необходимые драйверы, реагирует на все изменения в аппаратуре компьютера;

— система BIOS типа plug-and-play, которая может взаимодействовать с контроллерами ориентированными на plug-and-play и чипсетом системной платы компьютера;

— аппаратные средства компьютера и адаптеры поддерживающие plug-and-play.

Платы адаптеров plug-and-play информируют системную BIOS и операционную систему о необходимых им ресурсах. В свою очередь, BIOS и операционная система, по возможности, предотвращают конфликты и передают платам адаптеров информацию о конкретных выделенных ресурсах. После этого плата адаптера сама настраивается под выделенные ей ресурсы.

Автоматическое конфигурирование системы осу­ществляется во время выполнения расширенной процедуры самопроверки при выполнении POST (Power-On-Self-Test). BIOS идентифицирует, опреде­ляет расположение в слотах, и, по возможности, на­страивает платы адаптеров plug-and-play. Эти дей­ствия выполняются в несколько этапов:

— Отключаются настраиваемые узлы на системной плате и на платах адаптеров. При использовании плат расширения, удовлетворяющих спецификации plug-and-play, после включения компьютера, платы ожидают код инициализации от BIOS. Устройства после включения электропитания не отвечают на обращения к пространству памяти и ввода-вывода, они доступны в это время только для операций конфигурационного чтения и записи.

— Отыскиваются все устройства типа plug-and-play. Управляющие программные средства могут теперь с помощью команды активизации опросить плату, а с помощью другой команды все остальные платы переключить в “изолированное” состояние. В изолированном состоянии программные средства plug-and-play устанавливают связь только с одной активизированной платой. Эта плата передает программам plug-and-play свои характеристики. На основе этих данных осуществляется идентификация плат. По завершении процесса идентификации устанавливается связь между аппаратными и программными компанентами компьютера. При этом запрашиваются и назначаются необходимые конфигурационные параметры. Каждое устройство шины использует область пространства конфигурации (заголовок определенного формата, назначение оставшихся байтов области пространства конфигурации зависит от конкретного устройства и в спецификации не описывается). Область конфигурации доступна системе в любое время. В операциях конфигурационного чтения и записи становится доступной информация о потребностях устройства в системных ресурсах и возможных диапазонах их перемещения.

Создается исходная карта распределения ресурсов: портов, прерывании, каналов ПДП и памяти.

Активируются устройства ввода-вывода. Сканируются ПЗУ в устройствах. Конфигурируются устройства начальной загрузки (IPL — Initial Program Load), т.е. те, что используются для загрузки ОС компьютера.

В область конфигурации устройств записывается информация о выделенных системных ресурсах и режимах работы — это переводит их в рабочее состояние и становится возможным доступ по командам обращения к памяти и портам ввода-вывода контроллеров.

После тестирования и конфигурирования (включающего настройку устройств РпР), POST инициализирует загрузку операционной системы. Запускается начальный загрузчик. Загружаются необходимые компаненты системы, драйверы устройств. Определяется новая настройка конфигурации системы. Управление передается операционной сис­теме. В процессе загрузки операционная система принимает на себя дальнейшую диагностику аппаратных средств — каждое подключенное устройство проходит проверку, и с него запрашиваются данные о всех параметрах его настройки. Перед выбором конфигурации старые параметры настройки проверяются вместе с параметрами настройки нового устройства, после чего они сравниваются и при необходимости согласовываются. Если операционная система установит, что два компонента аппаратуры имеют одно и то же ресурсное обеспечение (например, одинаковые базовые адреса портов), то эти компоненты должны выдать операционной системе альтернативные ресурсы системы с которыми они тоже могут работать.

Основная задача plug-and-play-компонента ОС — сообщить о конфликтах, которые не были устранены BIOS. В зависимости от воз­можностей операционной системы, вы можете попытаться конфигурировать адаптеры про­граммно (с помощью экранного меню) или вы­ключить компьютер и установить перемычки и переключатели на платах вручную. При следу­ющем включении системы или ее перезагрузке будет проведена повторная проверка и выведены сообщения об оставшихся (или новых) конфлик­тах. После нескольких «заходов» все конфлик­ты, как правило, устраняются.

Для каждого вновь подключенного в систему устройства (или отключенного устройства) процесс автоконфигурации повторяется. В компьютере имеется область энергонезависимой памяти ESCD для поддержки динамического конфигурирования системы Plug and Play, которая может автоматически обновляться при каждой перезагрузке компьютера. Этот процесс динамического конфигурирования и является при­чиной «задумчивости» при перезагрузке даже мощных компьютеров, имеющих средства РnР, а также не всегда предсказуемого поведения программного обеспечения, вызванного изменением распределения ресурсов по инициативе той же системы PnP.

Многие операционные системы поддерживают функцию автодетектирования устройств, т. е. автоматически определяется тип платы, ее конфигурация, номер используемого прерывания, базовый адрес портов ввода-вывода, канал прямого доступа. В операционных системах Windows важным средством управления всеми компонентами аппаратных средств является программа диспетчер устройств (Device-Manager), с помощью которой можно получить информацию об устройстве, выделенных ему ресурсах и выполнить необходимые согласование ресурсов.

Введение в Plug and Play

Этот раздел содержит следующие дополнительные разделы:

Plug and Play (PnP) — это часть Windows, которая позволяет компьютерной системе адаптироваться к изменениям оборудования с минимальным вмешательством пользователя. Пользователь может добавлять и удалять устройства без ручной настройки и без знания оборудования компьютера. Например, пользователь может закрепить портативный компьютер и использовать клавиатуру, мышь и монитор док-станции, не изменяя конфигурацию вручную.

PnP требует поддержки оборудования устройства, системного программного обеспечения и драйверов. Инициативы в аппаратной отрасли определяют стандарты для легкой идентификации плат надстроек и компонентов системы. В этой документации по пакету драйверов Windows (WDK) основное внимание уделяется поддержке системного программного обеспечения для PnP и тому, как драйверы используют эту поддержку для реализации PnP.

Поддержка системного программного обеспечения для PnP вместе с драйверами PnP обеспечивает следующие возможности:

  • Автоматическое и динамическое распознавание установленного оборудования
  • Выделение аппаратных ресурсов (и перераспределение) Диспетчер PnP определяет аппаратные ресурсы, запрашиваемые каждым устройством (например, порты ввода-вывода, запросы прерываний, каналы прямого доступа к памяти и расположения памяти), и назначает аппаратные ресурсы соответствующим образом. При необходимости диспетчер PnP перенастраивает назначения ресурсов, например при добавлении в систему нового устройства, которому требуются уже используемые ресурсы. Драйверы для устройств PnP не назначают ресурсы; Вместо этого запрошенные ресурсы для устройства определяются при перечислении устройства. Диспетчер PnP получает требования для каждого устройства во время выделения ресурсов. Ресурсы не настраиваются динамически для устаревших устройств, поэтому диспетчер PnP сначала назначает ресурсы устаревшим устройствам.
  • Загрузка соответствующих драйверов
  • Программный интерфейс для взаимодействия драйверов с системой PnP Интерфейс включает подпрограммы диспетчера ввода-вывода, Plug and Play незначительные irp, обязательные стандартные подпрограммы драйвера и сведения в реестре.
  • Механизмы, которые позволяют драйверам и приложениям узнавать об изменениях в аппаратной среде и принимать соответствующие меры PnP позволяет драйверам и коду пользовательского режима регистрироваться для определенных событий оборудования и получать уведомления о ней.

Чтобы драйвер квалифицируется как PnP, он должен предоставить необходимые точки входа PnP, обработать необходимые PnP IRP и следовать рекомендациям PnP.

Совместная работа с нами на GitHub

Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.

Windows driver documentation

История спецификации Plug and Play.

Спецификация LPТ Plug and Play 1.0, разработанная Microsoft, определяет метод, по которому устройства, связанные с параллельным портом идентифицируют себя в Plug and Play BIOS. Принтеры, модемы, сетевые адаптеры и параллельные порты адаптеров SCSI принадлежат к устройствам, определяемым Plug and Play — спецификацией LPT. Если вы подсоедините Hewlett Packard LaserJet 4M к параллельному порту вашего компьютера, то Chicago найдет драйвер для принтера и автоматически его загрузит.

Спецификация COM Plug and Play 0.94, разработанная Microsoft и Hayes Microcomputer Products, определяет как устройства, подключенные к последовательным портам, такие как мыши, модемы, принтеры и источники бесперебойного питания, идентифицируют себя. Обычно Chicago определяет тип установленных мыши и модема даже без идентификации Plug and Play.

Спецификация АРМ Plug and Play 1.1, разработанная Microsoft и Intel, обрабатывает АРМ (advanced power management — система управления питанием) для портативных компьютеров и энергетически критичных стационарных компьютеров.

Спецификация интерфейса драйверов устройств Plug and Play еще для Microsoft Windows и MS-DOS 1.0с, разработанная Microsoft, давала ограниченную поддержку Plug and Play для присваивания I/O, IRQ, DMA и областей памяти под DOS и Windows3.1+.

В дополнение к спецификациям предыдущего списка спецификация ATAPI определяет процесс идентификации для Plug and Play совместимых CD-ROM, которые присоединяются к расширенному интерфейсу IDE, удовлетворяющего стандарту Plug and Play. Спецификация ESCD (Extended System Configuration Data) 1.0 разработана для предоставления дополнительной информации об адаптерах ISA и EISA в Plug and Play BIOS.

Наиболее важным элементом системы Plug and Play компьютера являлся системный Plug and Play BIOS. Спецификация BIOS Plug and Play 1.0а добавляла ниже следующие три новых главных компонента к обычному BIOS.

1.Управление ресурсами обрабатывает основные системные ресурсы: память прямого доступа (DMA), запросы прерываний (IRQ), ввод/вывод (I/O) и адреса памяти. Эти системные ресурсы разделяются различными устройствами, что и приводит к конфликтам. Диспетчер ресурсов Plug and Play BIOS отвечает за конфигурирование загрузочных устройств на материнской плате, а также любых устройств Plug and Play.

2.Управление конфигурацией во время выполнения является новым для РС. Plug and Play BIOS включает в себя возможность реконфигурации устройств после загрузки операционной системы. Это средство особенно важно для портативных компьютеров с устройствами PCMCIA, которые можно заменять, не выключая компьютер. Ранее операционная система рассматривала все устройства, отмеченные BIOS, как статические; это требовало перезагрузки портативного компьютера после замены устройства PCMCIA.

3.Управление событием определяет во время работы компьютера, когда устройство удалено или добавлено к системе. Plug and Play BIOS 1.0а предоставляет управление событием только для устройства PCMCIA портативных компьютеров, так как горячая замена адаптеров стационарных компьютеров не является безопасной. Управление событием связано с управление во время выполнения для реконфигурирования системы.

Современная технология Plug and Play требует комбинированного взаимодействия BIOS персонального компьютера, его аппаратных компонентов, драйверов устройств и операционной системы. Основные требования к реализации системной платы и поддержке BIOS , необходимые для обеспечения поддержки Plug and Play еще в Windows 2000, Windows XP и Windows Server 2003, были определены в спецификации ACPI . Более современные версии операционных систем из семейства Windows используют эту спецификацию как основу для построения их архитектуры Plug and Play в соответствии с требованиями инициативы OnNow. Спецификация ACPI определяет новый интерфейс между операционной системой и компонентами компьютера, обеспечивающими поддержку Plug and Play и управления электропитанием. Методы, определенные в ACPI, не зависят от конкретной операционной системы или типа процессора . ACPI определяет интерфейс на уровне регистров для базовых функций Plug and Play и управления электропитанием, а также определяет описательный интерфейс для дополнительных аппаратных возможностей. Это позволяет разработчикам реализовать целый диапазон функций Plug and Play и управления электропитанием для самых разных аппаратных платформ при использовании одного и того же драйвера операционной системы. Помимо этого, ACPI предоставляет общий механизм системных событий для Plug and Play и управления электропитанием.

Introduction to Plug and Play

This section contains the following additional topics:

Plug and Play (PnP) is the part of Windows that enables a computer system to adapt to hardware changes with minimal intervention by the user. A user can add and remove devices without having to do manual configuration, and without knowledge of computer hardware. For example, a user can dock a portable computer and use the docking station keyboard, mouse, and monitor without making manual configuration changes.

PnP requires support from device hardware, system software, and drivers. Initiatives in the hardware industry define standards for easy identification of add-in boards and system components. This Windows Driver Kit (WDK) documentation focuses on the system software support for PnP and how drivers use that support to implement PnP.

The system software support for PnP, together with PnP drivers provides the following:

  • Automatic and dynamic recognition of installed hardware
  • Hardware resource allocation (and reallocation) The PnP manager determines the hardware resources requested by each device (for example, input/output ports, interrupt requests, direct memory access channels, and memory locations) and assigns hardware resources appropriately. The PnP manager reconfigures resource assignments when necessary, such as when a new device is added to the system that requires resources already in use. Drivers for PnP devices do not assign resources; instead, the requested resources for a device are identified when the device is enumerated. The PnP manager retrieves the requirements for each device during resource allocation. Resources are not dynamically configurable for legacy devices, so the PnP manager assigns resources to legacy devices first.
  • Loading of appropriate drivers
  • A programming interface for drivers to interact with the PnP system The interface includes I/O manager routines, Plug and Play minor IRPs, required standard driver routines, and information in the registry.
  • Mechanisms for drivers and applications to learn of changes in the hardware environment and take appropriate actions PnP enables drivers and user-mode code to register for, and be notified of, certain hardware events.

For a driver to qualify as PnP it must provide the required PnP entry points, handle the required PnP IRPs, and follow PnP guidelines.

Collaborate with us on GitHub

The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, see our contributor guide.

Windows driver documentation

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *