structure NDIS_HARDWARE_CROSSTIMESTAMP (ntddndis.h)
La structure NDIS_HARDWARE_CROSSTIMESTAMP décrit l’horodatage croisé entre l’horloge matérielle d’une carte réseau et une horloge système.
Syntaxe
typedef struct _NDIS_HARDWARE_CROSSTIMESTAMP {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG64 SystemTimestamp1;
ULONG64 HardwareClockTimestamp;
ULONG64 SystemTimestamp2;
} NDIS_HARDWARE_CROSSTIMESTAMP, *PNDIS_HARDWARE_CROSSTIMESTAMP;
Membres
Header
Structure NDIS_OBJECT_HEADER qui décrit cette structure NDIS_HARDWARE_CROSSTIMESTAMP. Définissez les membres de la structure NDIS_OBJECT_HEADER comme suit :
Définissez le membre type sur NDIS_OBJECT_TYPE_DEFAULT.
Définissez le membre révision sur NDIS_HARDWARE_CROSSTIMESTAMP_REVISION_1.
Définissez le membre Size sur NDIS_SIZEOF_HARDWARE_CROSSTIMESTAMP_REVISION_1.
Flags
Réservé pour une utilisation ultérieure. Le pilote miniport ne doit pas modifier cette valeur.
SystemTimestamp1
Valeur du compteur de performances (QPC) obtenue en appelant KeQueryPerformanceCounter.
HardwareClockTimestamp
Valeur actuelle de l’horloge matérielle de la carte réseau. Il doit s’agir de la valeur d’horloge matérielle brute de la carte réseau.
SystemTimestamp2
Une autre valeur de compteur de performances (QPC) obtenue en appelant KeQueryPerformanceCounter.
Remarques
Lorsqu’un pilote miniport reçoit la demande OID de OID_TIMESTAMP_GET_CROSSTIMESTAMP, le pilote termine l’OID en remplissant le InformationBuffer dans le QUERY_INFORMATION avec une structure NDIS_HARDWARE_CROSSTIMESTAMP.
Le pilote doit remplir les champs SystemTimestamp1, HardwareClockTimestamp et Champs SystemTimestamp2 avec des horodatages pris le plus près possible et dans l’ordre suivant :
SystemTimestamp1
HardwareClockTimestamp
SystemTimestamp2
Le pilote miniport et le matériel sont gratuits pour optimiser la collecte de ces horodatages en fonction des fonctionnalités matérielles avancées. Toutefois, les valeurs SystemTimestamp1 et SystemTimestamp2 retournées lors de l’achèvement de l’OID doivent correspondre avec précision à la valeur du compteur de performances (QPC) au moment de la capture. Le HardwareClockTimestamp doit correspondre à la valeur d’horloge matérielle de la carte réseau au point de capture. Si une implémentation particulière peut déterminer plus précisément deux horodatages plutôt que trois (par exemple, un horodatage système et l’horodatage de l’horloge matérielle de carte réseau correspondante), il doit définir le champ SystemTimestamp2 sur la même valeur que SystemTimestamp1.
Le pilote miniport ne doit pas définir les valeurs SystemTimestamp1, HardwareClockTimestamp, ou valeurs SystemTimestamp2 sur zéro.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 11 |
serveur minimum pris en charge | Windows Server 2022. Pris en charge dans NDIS 6.82 et versions ultérieures. |
d’en-tête | ntddndis.h (include ndis.h) |