Freigeben über


Informationen zur Ereignisablaufverfolgung für Treiber

Ereignisablaufverfolgung definiert

Die Ereignisablaufverfolgung für Windows (ETW) ist ein effizienter und effektiver Mechanismus zum Nachverfolgen und Protokollieren von Ereignissen, die von Benutzermodusanwendungen und Kernelmodustreibern ausgelöst werden. ETW besteht aus drei Komponenten:

Begriff Beschreibung

Anbieter

Anwendungen oder Komponenten, die die Ereignisablaufverfolgungsinstrumentation auslösen.

Controller

Anwendungen, die Ereignisablaufverfolgungssitzungen starten, beenden und konfigurieren.

Consumer

Anwendungen, die Ereignisablaufverfolgungssitzungen (in Echtzeit) oder aus einer Datei empfangen.

Die ETW-Kernel-Mode-API

Die ETW-API (Application Programming Interface) stellt eine Reihe von Funktionen bereit, die für Kernelmoduskomponenten und Treiber verfügbar sind. Sowohl die WMI-Ereignisablaufverfolgung als auch die WPP-Softwareablaufverfolgung verwenden ETW. Treiberentwickler können diese Funktionen verwenden, um den Treiber als ETW-Anbieter zu registrieren. ETW-Anbieter können Ereignisse auslösen und im Windows-Ereignisprotokoll veröffentlichen oder ihre Ereignisse in eine ETW-Sitzung schreiben, die in eine Ablaufverfolgungsdatei geschrieben oder an Echtzeitconsumer übermittelt wird. Ereignisse sind Entitäten, die interessante Vorkommen innerhalb des Systems beschreiben und durch eine Reihe von Attributen definiert werden, die von den ETW-Anbietern bestimmt werden.

ETW ist im Windows-Betriebssystem implementiert und bietet Entwicklern einen schnellen, zuverlässigen und vielseitigen Satz von Ereignisablaufverfolgungsfeatures mit sehr geringen Auswirkungen auf die Leistung. Sie können die Ablaufverfolgung dynamisch aktivieren oder deaktivieren, ohne Den Computer neu zu starten oder Ihre Anwendung oder Den Treiber neu zu laden. Im Gegensatz zu Debuganweisungen, die Sie Ihrem Code während der Entwicklung hinzufügen, können Sie ETW in Ihrem Produktionscode verwenden.

Verwendung der Ereignisablaufverfolgung

Verwenden Sie die ETW-Kernelmodus-API, wenn Sie Ereignisse veröffentlichen möchten, die von Anwendungen genutzt werden können, die an administrativen, operativen und analytischen Ereignissen interessiert sind, zusätzlich zur detaillierten Ablaufverfolgung, die Sie möglicherweise während der Entwicklung benötigen. Verwenden Sie die WPP-Softwareablaufverfolgung, wenn Sie hauptsächlich Ablaufverfolgungsdaten für Entwicklungs- und Debugzwecke sammeln möchten.