Routine di scaricamento del driver non PnP
I driver precedenti e i driver di file system di alto livello, che non gestiscono le richieste di rimozione dei dispositivi PnP, devono rilasciare risorse, eliminare oggetti dispositivo e scollegarsi dallo stack di dispositivi nelle routine Scarica .
Se non è già stato fatto, la prima cosa che un driver di dispositivo legacy deve eseguire nella routine Di scaricamento consiste nel disabilitare gli interrupt dal dispositivo. In caso contrario, il relativo ISR potrebbe essere chiamato per gestire un interrupt del dispositivo mentre la routine Scarica rilascia le risorse nell'estensione del dispositivo che l'ISR deve gestire l'interrupt. Anche se l'ISR viene eseguito correttamente in queste circostanze, la routine DpcForIsr o CustomDpc che la coda ISR e possibilmente altre routine driver eseguite in IRQL >= DISPATCH_LEVEL, verranno eseguite prima che la routine Unload riguadagna il controllo, aumentando così la probabilità che la routine Unload abbia eliminato una risorsa a cui fa riferimento un'altra routine driver. Per altre informazioni, vedere Gestione delle priorità hardware .
Dopo aver disabilitato gli interrupt, il file system e i driver legacy devono rilasciare risorse e oggetti. Per informazioni dettagliate, vedere le due sezioni seguenti: