NDIS_HARDWARE_CROSSTIMESTAMP Struktur (ntddndis.h)
Die NDIS_HARDWARE_CROSSTIMESTAMP Struktur beschreibt den Zeitstempel zwischen der Hardwareuhr einer NIC und einer Systemuhr.
Syntax
typedef struct _NDIS_HARDWARE_CROSSTIMESTAMP {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG64 SystemTimestamp1;
ULONG64 HardwareClockTimestamp;
ULONG64 SystemTimestamp2;
} NDIS_HARDWARE_CROSSTIMESTAMP, *PNDIS_HARDWARE_CROSSTIMESTAMP;
Angehörige
Header
Die NDIS_OBJECT_HEADER Struktur, die diese NDIS_HARDWARE_CROSSTIMESTAMP Struktur beschreibt. Legen Sie die Elemente der NDIS_OBJECT_HEADER-Struktur wie folgt fest:
Legen Sie den Type Member auf NDIS_OBJECT_TYPE_DEFAULTfest.
Legen Sie das element Revision auf NDIS_HARDWARE_CROSSTIMESTAMP_REVISION_1fest.
Legen Sie das Size Member auf NDIS_SIZEOF_HARDWARE_CROSSTIMESTAMP_REVISION_1fest.
Flags
Reserviert für die zukünftige Verwendung. Der Miniporttreiber darf diesen Wert nicht ändern.
SystemTimestamp1
Der Leistungsindikatorwert (Performance Counter Value, QPC), der durch Aufrufen KeQueryPerformanceCounterabgerufen wird.
HardwareClockTimestamp
Der aktuelle Wert der NIC-Hardwareuhr. Dies sollte der Wert der unformatierten Hardwareuhr der NIC sein.
SystemTimestamp2
Ein weiterer Leistungsindikatorwert (Performance Counter Value, QPC), der durch Aufrufen KeQueryPerformanceCounterabgerufen wird.
Bemerkungen
Wenn ein Miniporttreiber die OID-Anforderung von OID_TIMESTAMP_GET_CROSSTIMESTAMPempfängt, schließt der Treiber das OID ab, indem er die InformationBuffer- in der QUERY_INFORMATION mit einer NDIS_HARDWARE_CROSSTIMESTAMP Struktur füllt.
Der Treiber sollte die SystemTimestamp1, HardwareClockTimestamp und SystemTimestamp2 Felder mit Zeitstempeln füllen, die so nah wie möglich und in der folgenden Reihenfolge verwendet werden:
SystemTimestamp1-
HardwareClockTimestamp-
SystemTimestamp2-
Der Miniporttreiber und die Hardware können die Sammlung dieser Zeitstempel je nach erweiterten Hardwarefunktionen optimieren. Die SystemTimestamp1- und systemTimestamp2- werte, die beim OID-Abschluss zurückgegeben werden, müssen jedoch zum Zeitpunkt der Erfassung exakt dem Wert des Leistungsindikators (QPC) entsprechen. Der HardwareClockTimestamp- muss dem Hardwareuhrwert der NIC am Aufnahmepunkt entsprechen. Wenn eine bestimmte Implementierung zwei Zeitstempel anstelle von drei (z. B. einen Systemzeitstempel und den entsprechenden NIC-Hardwareuhrzeitstempel) genauer bestimmen kann, sollte das feld SystemTimestamp2 auf denselben Wert wie SystemTimestamp1festgelegt werden.
Der Miniporttreiber sollte den SystemTimestamp1, HardwareClockTimestamp-oder SystemTimestamp2- Werte nicht auf Nullfestlegen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 11 |
mindestens unterstützte Server- | Windows Server 2022. Unterstützt in NDIS 6.82 und höher. |
Header- | ntddndis.h (include ndis.h) |