Condividi tramite


Introduzione agli oggetti DPC

Poiché gli ISR devono essere eseguiti il più rapidamente possibile, i driver devono in genere posticipare il completamento della gestione di un interrupt fino a quando l'ISR non ritorna. Di conseguenza, il sistema fornisce il supporto per le chiamate di procedure posticipate (DPCs), che possono essere accodate dagli ISR e che vengono eseguite in un secondo momento e a un IRQL inferiore rispetto agli ISR.

Ogni DPC è associato a un oggetto DPC definito dal sistema. Il sistema fornisce un oggetto DPC per ogni oggetto dispositivo. Il sistema inizializza questo oggetto DPC quando un driver registra una routine DPC nota come routine DpcForIsr . Un driver può creare ulteriori oggetti DPC se sono necessari più di un DPC. Queste DPC extra sono conosciute come routine CustomDpc.

Il contenuto dell'oggetto DPC non deve essere utilizzato direttamente dai driver. La struttura dell'oggetto non è documentata. I driver non hanno accesso all'oggetto DPC fornito dal sistema assegnato a ogni oggetto dispositivo. I driver allocano spazio di memoria per DPC aggiuntivi, ma il contenuto di questi oggetti DPC deve essere referenziato solo dalle routine di sistema.

Gli oggetti DPC e i DPC possono essere usati anche con i timer. Per ulteriori informazioni, vedere Oggetti timer e DPC.