Käyttöjärjestelmä havaitsee Plug and play -laitteet ja määrittää ne resurssit, kuten I/O-osoitteet ja keskeytyspyyntölinjat (IRQ) prosessin avulla, joka tunnetaan nimellä laiteluettelo. Käyttöjärjestelmä ylläpitää laitteiston abstraktiokerrosta (HAL) tai vastaavaa mekanismia, jonka avulla ohjelmistosovellukset ja ajurit voivat olla vuorovaikutuksessa laitteiston kanssa tietystä laitteistoympäristöstä riippumatta.