Compartilhar via


Introdução ao Plug-Ins PSHED

Os fornecedores de plataforma podem complementar a funcionalidade PSHED padrão fornecendo plug-ins PSHED que aproveitam os recursos específicos da plataforma. Um plug-in PSHED é um driver de dispositivo Windows de finalidade especial que implementa uma interface de retorno de chamada que é chamada pelo PSHED. A finalidade de um plug-in PSHED é aumentar ou substituir o comportamento padrão do PSHED fornecido pela Microsoft.

Um plug-in PSHED é implementado como um driver de dispositivo WDM (Modelo de Driver do Windows) que é carregado pelo gerenciador de Plug and Play (PnP) quando um identificador de hardware específico é enumerado durante a inicialização do sistema. O fornecedor da plataforma especifica o identificador de hardware que inicia o carregamento do plug-in PSHED. Esse identificador de hardware pode estar no namespace acpi ou pode estar em outro namespace do dispositivo.

Os plug-ins PSHED não lidam com solicitações de E/S iniciadas por um aplicativo de modo de usuário ou por um driver de nível superior. Portanto, um plug-in PSHED só é necessário para implementar rotinas de expedição de driver (consulte DRIVER_DISPATCH) para lidar com IRP_MJ_PNP e IRP_MJ_POWER IRPs. Os plug-ins PSHED não precisam registrar interfaces de dispositivo nem criar links simbólicos para seus objetos de dispositivo.

Um plug-in PSHED participa de uma ou mais das seguintes áreas funcionais associadas ao tratamento de erros de hardware:

Para cada uma dessas áreas funcionais, um plug-in PSHED implementa funções de retorno de chamada que são chamadas pelo PSHED. Um plug-in PSHED especifica as áreas funcionais nas quais ele participa e fornece ponteiros para as funções de retorno de chamada associadas quando se registra com o PSHED. Vários plug-ins PSHED podem ser registrados com o PSHED ao mesmo tempo. No entanto, se mais de um plug-in PSHED registrado especificar que ele participa de uma área funcional específica, apenas o último a se registrar realmente participará dessa área funcional.

Um plug-in PSHED destina-se a ser implementado por fornecedores de plataforma como uma interface de software para os recursos de recuperação e relatório de erros de hardware da plataforma de hardware. Um plug-in PSHED pode fazer interface com o firmware de plataforma usando quaisquer interfaces ou mecanismos privados definidos pelo fornecedor da plataforma. Isso permite que o fornecedor da plataforma continue usando o firmware existente para tratamento de erros de hardware. Com o tempo, a Microsoft espera que mais recursos de recuperação e relatório de erros de hardware sejam padronizados. Nesse ponto, a necessidade de plug-ins PSHED para tratamento geral de erros e relatórios diminuirá, de modo que os plug-ins PSHED só serão necessários para dar suporte a recursos específicos do fornecedor que fornecem valor adicional além da funcionalidade padrão de tratamento de erros de hardware.