Modern compatibility is made possible because of the development and widespread implementation of Plug and Play (PnP) technology.
What Is Plug and Play?
Plug and Play—not to be confused with Universal Plug and Play (UPnP)—is a set of operating system standards that enable hardware connectivity through automatic device detection and configuration. Before Plug and Play, users had to manually change complex settings (for example, dip switches, jumper blocks, I/O addresses, IRQ, and DMA) for hardware to function correctly. Such manual configuration is the fallback option with Plug and Play functionality. It may be turned to when a device is not recognized or automatically engaged.
History of Plug and Play
If you used to build computer systems from scratch at home, you may remember how challenging such trials could be. It wasn’t uncommon for tinkerers to dedicate entire weekends to installing hardware, loading firmware or software, configuring hardware and BIOS settings, rebooting, and troubleshooting. That all changed with the arrival of Plug and Play. Plug and Play grew as a mainstream feature after its introduction in the Microsoft Windows 95 operating system. Despite similar tech being deployed in earlier operating systems, including early mac OS and Linux, the rapid growth of Windows-based computers made the term Plug and Play universal. Early on, Plug and Play wasn’t perfect. The occasional failure of devices to reliably self-configure gave rise to the term Plug and Pray. Eventually, industry standards and integrated ID codes were imposed, allowing hardware to better identify and incorporate components. Over time, new operating systems addressed common problems, resulting in an improved and streamlined user experience.
Using Plug and Play
For Plug and Play to work, a system must have three-way compatibility between the operating system, the BIOS, and the Plug and Play component. This nice thing about Plug and Play is that all of that should be invisible to you as a user. You simply plug in a new device, and it starts working. The operating system automatically detects the change, and the system examines the new hardware’s information to see what it is. Once the hardware type is identified, the system loads appropriate software (called device drivers) to make it work. It then allocates resources, resolves conflicts, configures settings, and notifies other drivers or applications of the new device so that everything works together. All this is done with minimal, if any, user involvement. Some hardware, such as mice and keyboards, can be fully-functional through Plug and Play. Others, such as sound cards and video graphics cards, require installing the product’s included software to complete the auto-configuration. This usually involves a few clicks to start the installation process, followed by a moderate wait for it to finish. Some Plug and Play interfaces, such as PCI and PCI Express, require the computer to be turned off before being added or removed. Other Plug and Play interfaces, such as PC Card (typically found on laptops), ExpressCard (also typically found on laptops), USB, HDMI, Firewire (IEEE 1394), and Thunderbolt, allow for addition and removal while the system is running—often referred to as hot-swapping. The general rule for internal Plug and Play components is that a component should be installed or removed only when a computer is off. External Plug and Play devices can be installed or removed at any time. It’s recommended to use the system’s Safely Remove Hardware feature (Eject in macOS and Linux devices) when disconnecting an external device while a computer is on.