Compartilhar via


Regras para drivers AVStream

As regras de conformidade de DDI para drivers de miniporto AVStream verificam os protocolos de interface DDI entre o driver de streaming de kernel (ks.sys) e seus drivers de miniporto.

Nesta seção

Tópico Descrição

KsCallbackReturn

A regra KsCallbackReturn especifica que uma função de callback de driver de miniporto KS (kernel-streaming) retorna apenas valores de status permitidos.

KsDeviceMutex

A regra KsDeviceMutex especifica que um driver de miniporto de streaming de kernel usa KsAcquireDevice e KsReleaseDevice na sequência correta. Ou seja, cada chamada para KsAcquireDevice deve ter uma chamada correspondente para KsReleaseDevice.

KsFilterMutex

A regra KsFilterMutex especifica que um driver de miniporto KS adquire e libera o mutex do filtro na sequência correta.

KsIrqlDDIs

A regra KsIrqlDDIs especifica que um driver de miniporto de kernel streaming (KS) chama as DDIs KS no nível IRQL correto.

KsIrqlDeviceCallbacks

A regra KsIrqlDeviceCallbacks especifica que um driver KS de miniporto (streaming de kernel) retorna de uma função de chamada de dispositivo com o mesmo IRQL que tinha quando foi chamado.

KsInvalidStreamPointer

A regra KsInvalidStreamPointer verifica se um driver de miniporto KS fornece um ponteiro de fluxo KS válido como um argumento de função.

KsIrqlFilterCallbacks

A regra KsIrqlFilterCallbacks especifica que um driver de miniporto de streaming em kernel (KS) deve retornar de uma função de callback de filtro KS com o mesmo nível de IRQL que tinha quando a função de callback foi chamada.

KsMarkPendingIrp

A regra KsMarkPendingIrp especifica que um driver de miniporto de fluxo de kernel (KS) deve marcar IRPs como pendentes ao retornar com STATUS_PENDING das seguintes funções de retorno de chamada:

  • AVStrMiniFilterClose
  • AVStrMiniPinClose
  • AVStrMiniPinCreate

KsIrqlPinCallbacks

A regra KsIrqlPinCallbacks especifica que um driver de miniporto de fluxo de kernel (KS) retorna de uma função de retorno de chamada de pin KS com o mesmo IRQL que tinha quando foi chamado.

KsProcessingMutex

A regra KsProcessingMutex especifica que um driver de miniport KS usa o mutex de processamento na sequência correta:

KsStreamPointerClone

A regra KsStreamPointerClone especifica que um driver de miniporto kernel-stream (KS) utiliza corretamente as funções KsStreamPointerClone e KsStreamPointerDelete.

KsStreamPointerLock

A regra KsStreamPointerLock especifica que um driver de miniporto de KS (kernel streaming) utiliza as funções KsStreamPointerLock e KsStreamPointerUnlock na sequência correta.

KsStreamPointerUnlock

A regra KsStreamPointerUnlock especifica que um driver de miniporto KS (streaming de kernel) desbloqueia todos os ponteiros de fluxo antes que o driver seja descarregado (ou o dispositivo parado).

KsTimedDeviceCallbacks

A regra KsTimedDeviceCallbacks especifica que um driver de miniporto KS (transmissão de núcleo) retorna de uma função de retorno de chamada do dispositivo dentro de 500 ms.

KsTimedFilterCallbacks

A regra KsTimedFilterCallbacks especifica que um driver de miniporto de streaming do kernel (KS) deve retornar de uma função de callback de filtro em até 500 ms.

KsTimedPinCallbacks

A regra KsTimedPinCallbacks especifica que um driver de miniporto KS (transmissão de kernel) retorna de uma função callback de pino dentro de 500 ms.

KsTimedPinSetDeviceState

A regra KsTimedPinSetDeviceState especifica que um driver de miniporto AVStream (KS) faz transições de estado usando a rotina AVStrMiniPinSetDeviceState do minidriver AVStream dentro do tempo necessário.

KsTimedProcessingMutex

A regra KsTimedProcessingMutex especifica que um driver de miniporto KS não deve manter um mutex de processamento por mais de 100 milissegundos.