The kernel-mode plug and play manager informs the user-mode plug and play manager that a new device is present on the machine and needs to be installed. The kernel-mode PNP (Plug And Play) manager also calls the “DriverEntry” and “AddDevice” routines of a device driver and sends a request to start the device. All the PNP (Plug And Play) events that take place are reported to PNP (Plug And Play) manager of the user mode by the kernel-mode PNP (Plug And Play). The user mode PNP (Plug And Play) manager sends control requests to the kernel mode PNP (Plug And Play) manager.
PNP manager gives directions to PNP (Plug And Play) drivers on how to install devices. These drivers would then execute DriverEntry and AddDevice routines when called by the PNP (Plug And Play) Manager. Also, Plug and Play drivers are capable of detecting non-Plug and Play devices using “IoReportDetectedDevice”.












