Condividi tramite


Funzione KeSetTargetProcessorDpc (wdm.h)

La routine KeSetTargetProcessorDpc specifica il processore in cui verrà eseguita una routine DPC.

Sintassi

void KeSetTargetProcessorDpc(
  [in, out] PRKDPC Dpc,
  [in]      CCHAR  Number
);

Parametri

[in, out] Dpc

Puntatore all'oggetto DPC del chiamante, che KeInitializeDpc ha già inizializzato.

[in] Number

Specifica il numero in base zero del processore di destinazione in cui deve essere accodato ed eseguito il DPC.

Valore restituito

nessuno

Osservazioni

Nei sistemi multiprocessore ogni processore ha una propria coda DPC. La routine KeSetTargetProcessorDpc specifica la coda del processore che il sistema deve usare quando il driver chiama KeInsertQueueDpc o IoRequestDpc per accodare un DPC da eseguire in un secondo momento.

A partire da Windows Vista, è anche possibile usare KeSetTargetProcessorDpc per specificare il processore di destinazione per i controller di dominio thread.

Una chiamata a KeSetTargetProcessorDpcEx che si verifica dopo che un oggetto DPC è stato accodato non ha alcun effetto sulla selezione di un processore per l'esecuzione della routine DPC. Per controllare la selezione del processore di destinazione, è necessario che venga eseguita una chiamata KeSetTargetProcessorDpc prima della chiamata a KeInsertQueueDpc o IoRequestDpc che accoda l'oggetto DPC.

Per altre informazioni sulle code DPC, vedere Organizzazione delle code DPC.

Windows 7 e versioni successive di Windows supportano i gruppi di processori. I driver progettati per gestire le informazioni sui gruppi di processori devono usare la routine KeSetTargetProcessorDpcEx , che specifica un gruppo di processori, anziché KeSetTargetProcessorDpc, che non lo fa. Tuttavia, l'implementazione di KeSetTargetProcessorDpc in Windows 7 e versioni successive di Windows offre la compatibilità per i driver scritti per le versioni precedenti di Windows, che non supportano i gruppi di processori. In questa implementazione, se Number è minore del numero di processori logici attivi nel gruppo 0, KeSetTargetProcessorDpc imposta la destinazione per il DPC sul processore nel gruppo 0 specificato da Number. In caso contrario, la destinazione DPC non cambia.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Qualsiasi livello

Vedi anche

IoRequestDpc

KeGetCurrentProcessorNumber

KeInitializeDpc

KeInsertQueueDpc

KeSetImportanceDpc

KeSetTargetProcessorDpcEx