What is Plug and Play (PnP)?
Plug and Play is a mechanism by which system software automatically detects the identity and type of an add-on card and automatically configures the hardware resources without the need for physical device configuration or user intervention in resolving resource conflicts.
How add-on cards used to function before Plug and Play?
Plug and Play is an enhancement in modern bus system. However older bus systems does not support PnP. Bus systems with 8080 and 8086 and older CPUs does not support PnP. These type of systems uses a fixed range of MMIO, IO address and IRQ numbers for the external cards. External cards often used to have jumpers and toggle switches to select different types of configurations. User has to select the switch or jumper before plugging the card. A mis-configuration used to cause a hardware conflict. This conflict is either resolved by selecting an alternate resource config or manually changing the jumpers/switches.
What are the bus system supports Plug and Play?
ISA, EISA, PCI, PCI-X, PCIe, AGP, USB etc bus supports plug-n-play.
How Plug and Play mechanism works?
Plug and Play mechanism is done through mutual interactions between host computer and add-on card. A set of protocols has been made. PCI bus for example implements the PnP design. PCI defines a configuration address space. Configuration address space is a third address space that MMIO and IO memory. How to interact with configuration address space of a PCI card is defined in PCI specification. Both host and card should follow the design specification. Config space is designed to query the different PCI attributes of the card and at the same time card can respond to the query of the host. Host can also program different attributes of the card. Once the attributes are programed, card has to function with those io resources. IO resources are MMIO, IO port and IRQ numbers etc. Any PCI card vendor should implement the basic configuration space and the PnP mechanism defined in the PCI specification. It is however not limited to PCI. Other bus system like USB, AGP etc should follow its corresponding specification
What are the software subsystems responsible for Plug and Play mechanism?
BIOS enables the PnP detection and configuration at the time of power on. PnP Operating system manages these at runtime. All windows starting from Windows 95 have PnP capability and all modern Linux kernel supports PnP from the beginning.
Similar topics related to this section
BIOS, Booting, PC Firmare, Topics Index, Primary Base Memory, High, Extended Memory and IO Ports, Memory Mapped IO Layout, IO Port Ranges, Interrupt Lines, x86 Registers, Real Mode Memory Segmentation, Power On Self Test, H/W Inits, Software Interrupts, Keyboard Module and int16, VGA Display int10, Disk Subsystem int13, BIOS Config Screen, BIOS Development Code Flashing Debugging, Plug-n-Play, PCI card PnP Mechanism, PCI Config Address Space, PCI MMIO IO IRQ perations, BIOS Boot OPROMs Drivers, Disk Cylinder Head Sectors, MBR Disk Partitions, MBR and File Allocation Table Partitions, Boot Loader, Grand Universal Bootloader Linux Booting, NT Loader Windows Booting, Embedded System Booting, Unified Extensible Firmware Interface Stack, UEFI Development And Advantages, References and Links,