Udostępnij za pośrednictwem


Wprowadzenie do obiektów DPC

Ze względu na to, że rutyny obsługi przerwań muszą być wykonywane tak szybko, jak to możliwe, sterowniki zwykle muszą odroczyć zakończenie obsługi przerwania aż po tym, jak rutyna obsługi przerwania powróci. W związku z tym system zapewnia obsługę wywołań procedury odroczonej (DPC), które można umieścić w kolejce z ISR i które są wykonywane później, przy niższym IRQL niż ISR.

Każdy DPC jest skojarzony z obiektem DPC zdefiniowanym przez system. System dostarcza jeden obiekt DPC dla każdego obiektu urządzenia. System inicjuje ten obiekt DPC, gdy sterownik rejestruje procedurę DPC znaną jako procedura DpcForIsr . Sterownik może utworzyć dodatkowe obiekty DPC, jeśli potrzebnych jest więcej niż jeden DPC. Te dodatkowe DPC są nazywane CustomDpc .

Nie należy odwoływać się bezpośrednio do zawartości obiektu DPC przez sterowniki. Struktura obiektu nie jest udokumentowana. Sterowniki nie mają dostępu do obiektu DPC dostarczonego przez system przypisanego do każdego obiektu urządzenia. Sterowniki przydzielają pamięć na dodatkowe obiekty DPC, ale zawartość tych obiektów powinna być przywoływana tylko przez procedury systemowe.

Obiekty DPC i kontrolery DPC mogą być również używane z czasomierzami. Aby uzyskać więcej informacji, zobacz Timer Objects and DPCs.