Compartilhar via


Introdução aos objetos DPC

Como os ISRs devem ser executados o mais rápido possível, os drivers geralmente devem adiar a conclusão da manutenção de uma interrupção até que o ISR retorne. Portanto, o sistema oferece suporte para chamadas de procedimento diferido (DPCs), que podem ser enfileiradas a partir de ISRs e são executadas posteriormente em um IRQL mais baixo do que o ISR.

Cada DPC está associado a um objeto DPC definido pelo sistema. O sistema fornece um objeto DPC para cada objeto de dispositivo. O sistema inicializa esse objeto DPC quando um driver registra uma rotina DPC conhecida como rotina DpcForIsr . Um driver poderá criar objetos DPC adicionais se mais de um DPC for necessário. Esses DPCs extras são conhecidos como rotinas CustomDpc .

O conteúdo do objeto DPC não deve ser referenciado diretamente por drivers. A estrutura do objeto não está documentada. Os drivers não têm acesso ao objeto DPC fornecido pelo sistema atribuído a cada objeto de dispositivo. Os drivers alocam armazenamento para DPCs extras, mas o conteúdo desses objetos DPC só deve ser referenciado por rotinas do sistema.

Objetos DPC e DPCs também podem ser usados com temporizadores. Para obter mais informações, consulte Objetos do Temporizador e DPCs.