Partilhar via


A pilha de driver do IEEE 1394

O diagrama a seguir ilustra a pilha de driver do IEEE 1394 com o novo driver de ônibus 1394 e os drivers de cliente 1394 compatíveis com a Microsoft.

diagrama ilustrando a pilha de driver do ieee 1394.

Um driver cliente para um dispositivo que se conecta ao motorista de ônibus do IEEE 1394 fica na parte superior da pilha de driver do IEEE 1394. O driver de barramento fornece uma interface independente de hardware para o barramento IEEE 1394. O driver do dispositivo se comunica com o dispositivo enviando IRPs, que são processados pelo driver de ônibus do IEEE 1394. Antes do Windows 7, o motorista do ônibus era uma combinação de um driver de porta (1394bus.sys) e um driver de miniporto primário para o controlador de host da placa-mãe (ochi1394.sys). No Windows 7 e versões posteriores, os drivers de barramento de porta/miniport herdado são substituídos por 1394ohci.sys, um driver de ônibus monolítico IEEE 1394 implementado usando a estrutura de driver do modo kernel (KMDF). O 1394ohci.sys motorista de ônibus é totalmente compatível com versões anteriores com os motoristas de ônibus herdados 1394. Para obter mais informações sobre algumas diferenças conhecidas no comportamento entre o novo motorista de ônibus e os motoristas de ônibus herdados do 1394, consulte Driver de Ônibus do IEEE 1394 no Windows 7.

A ilustração a seguir mostra a relação entre os motoristas de ônibus herdados e os novos 1394.

Diagrama mostrando a relação entre os drivers de ônibus herdados e os novos 1394.

Para emitir comandos para dispositivos conectados ao barramento, os motoristas emitem o IRP_MJ_DEVICE_CONTROL IRP, com código de controle IOCTL_1394_CLASS. O driver empacota os parâmetros em um IRB (bloco de solicitação de E/S) do IEEE 1394 e passa um ponteiro para ele no membro Parameters.Others.Argument1 do IRP. O membro FunctionNumber do IRB determina o tipo de operação e o membro u descreve a operação. O motorista do barramento usa o IRP IOCTL_1394_CLASS para apresentar uma interface para o barramento e o controlador de host.

A estrutura IRB contém parâmetros que se aplicam a cada solicitação de barramento e parâmetros específicos da solicitação. O membro u do IRB contém os parâmetros específicos da solicitação, em uma união de estruturas de dados, um por tipo de solicitação.

Durante a operação normal, os drivers recebem solicitações de E/S comuns (como IRP_MJ_READ), convertem-nas na operação IEEE 1394 apropriada e despacham essa operação para o dispositivo por meio de IOCTL_1394_CLASS.

Driver de Ônibus do IEEE 1394 no Windows 7