Partilhar via


Conjunto de regras IRQL (NDIS)

Use estas regras para verificar se o driver faz chamadas DDI no IRQL necessário.

Um driver que não segue as regras IRQL pode causar sérios problemas durante a operação que podem levar a condições de bloqueio ou falhas do computador.

Nesta secção

Tópico Descrição

Flags_Irql

A regra Flags_Irql especifica que KeGetCurrentIrql não deve ser chamado dentro de funções de retorno de chamada que tenham um parâmetro de sinalizador de nível de despacho que indique o IRQL atual.

O uso correto do sinalizador de nível de despacho pode ajudá-lo a evitar tentativas desnecessárias de definir o IRQL. Para obter mais informações sobre como usar esse sinalizador, consulte Dispatch IRQL Tracking.

Irql_CallManager_Function

A regra Irql_CallManager_Function especifica que as funções NDIS para o NDIS CallManager devem ser chamadas nos níveis corretos de IRQL.

Irql_Connection_Function

A regra Irql_Connection_Function especifica que as funções de conexão NDIS para drivers de protocolo devem ser chamadas nos níveis IRQL corretos.

Irql_Filter_Driver_Function

A regra Irql_Filter_Driver_Function especifica que as funções NDIS para drivers de filtro devem ser invocadas nos níveis corretos de IRQL.

Irql_Gather_DMA_Function

A regra Irql_Gather_DMA_Function especifica que as funções de dispersão/coleta de DMA do NDIS devem ser chamadas nos níveis corretos de IRQL.

Irql_IM_Function

A regra Irql_IM_Function especifica que as funções NDIS para drivers intermediários (IM) devem ser chamadas nos níveis corretos de IRQL.

Irql_Interfaces_Function

A regra Irql_Interfaces_Function especifica que as funções de interface de rede NDIS devem ser chamadas nos níveis IRQL corretos.

Irql_Interrupt_Function

A regra Irql_Interrupt_Function especifica que as funções NDIS para interrupções devem ser chamadas nos níveis corretos de IRQL.

Irql_IrqlSetting_Function

A regra Irql_IrqlSetting_Function especifica que as macros de interrupção NDIS devem ser chamadas nos níveis corretos de IRQL.

Irql_MCM_Function

A regra Irql_MCM_Function especifica que as funções NDIS MCM para drivers devem ser chamadas nos níveis IRQL corretos.

Irql_MCO_Function

A regra Irql_MCO_Function especifica que as DDIs NDIS MCO para drivers de miniporta devem ser chamadas nos níveis corretos de IRQL.

Irql_Miniport_Driver_Function

A regra Irql_Miniport_Driver_Function especifica que as funções NDIS para drivers de miniporta devem ser chamadas nos níveis corretos de IRQL.

Irql_Miscellaneous_Function

A regra Irql_Miscellaneous_Function especifica que as funções NDIS devem ser chamadas nos níveis corretos de IRQL.

Irql_NetBuffer_Function

A regra Irql_NetBuffer_Function especifica que as funções relacionadas ao NET_BUFFER devem ser chamadas em níveis corretos de IRQL.

Irql_OID_Function

A regra Irql_OID_Function especifica que os DDIs de solicitação NDIS OID devem ser chamados nos níveis corretos de IRQL.

Irql_Protocol_Driver_Function

A regra Irql_Protocol_Driver_Function especifica que as funções NDIS para clientes CoNDIS devem ser chamadas nos níveis corretos de IRQL.

Irql_SendRcv_Function

A regra Irql_SendRcv_Function especifica que as funções de envio e recebimento para drivers NDIS devem ser chamadas nos níveis corretos de IRQL.

Irql_StatusIndication_Function

A regra Irql_StatusIndication_Function especifica que as funções de indicação de status NDIS para drivers de miniporta e filtro devem ser chamadas nos níveis corretos de IRQL.

Irql_Synch_Function

A regra Irql_Synch_Function especifica que os DDIs de interrupção e sincronização NDIS devem ser chamados nos níveis corretos de IRQL.

Irql_Timer_Function

A regra Irql_Timer_Function especifica que as funções de serviço de timer NDIS devem ser chamadas nos níveis corretos de IRQL.

Para selecionar o conjunto de regras Irql

  1. Selecione seu projeto de driver (.vcxProj) no Microsoft Visual Studio. No menu Driver, clique em Iniciar Verificador de Driver Estático...

  2. Clique na guia Regras . Em Conjuntos de Regras, selecione Irql.

    Para selecionar o conjunto de regras padrão em uma janela de prompt de comando do desenvolvedor do Visual Studio, especifique Irql.sdv com a opção /check . Por exemplo:

    msbuild /t:sdv /p:Inputs="/check:Irql.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    Para obter mais informações, consulte Usando o Verificador de Driver Estático para Localizar Defeitos em Drivers e Comandos do Verificador de Driver Estático (MSBuild).