Initialisation d’un pilote Miniport-Intermediate
Un pilote miniport intermédiaire combine un pilote miniport pour un périphérique virtuel, un pilote de protocole et un pilote miniport pour un appareil physique. Un pilote miniport-intermédiaire fonctionne de la même façon qu’un pilote intermédiaire superposé à un pilote miniport. Un tel pilote permet à un pilote intermédiaire de communiquer directement avec un pilote miniport sous-jacent sans encourir les pénalités de performances qui pourraient résulter de deux pilotes distincts.
Pour inscrire son pilote de miniport physique, un pilote miniport intermédiaire appelle la fonction NdisMRegisterMiniportDriver avec les paramètres appropriés, comme pour n’importe quel pilote miniport. Pour inscrire son miniport virtuel, le pilote appelle à nouveau NdisMRegisterMiniportDriver , mais avec l’indicateur NDIS_INTERMEDIATE_DRIVER défini dans la structure sur MiniportDriverCharacteristics .
Pour chaque périphérique virtuel ou physique instance d’un pilote miniport intermédiaire, si la clé de Registre IMMiniport est définie sur DWORD:0x0000001, NDIS appelle la fonction MiniportInitializeEx que le pilote a inscrite pour l’appareil virtuel. Sinon, NDIS appelle la fonction MiniportInitializeEx du pilote que le pilote a inscrite pour l’appareil physique.