Frage

Ich bin mit sehr wenig Erfahrung auf Kernelmodus-Treiber gestoßen.Folgendes versuche ich zu tun:

  • Verfügen Sie über eine Benutzermodusanwendung, die den Treiber lädt.
  • Lassen Sie die Benutzermodusanwendung darauf schreiben, um ihr eine Anweisung zu senden.
  • Lassen Sie den Treiber die RDMSR-Anweisung an den Intel-Chip senden.
  • Geben Sie die Ergebnisse an die Benutzermodusanwendung zurück.

Ich habe gelesen Dieser Artikel Hier werden die verschiedenen Möglichkeiten beschrieben, mit denen Sie dieses Verhalten erreichen können (gepufferte E/A, direkte E/A oder keines von beidem).

Mein Problem ist Folgendes: Der Artikel enthält Code, der die Art und Weise darstellt, wie Sie einen WDM-Treiber strukturieren würden, und ich hatte erwartet, mit dem Windows Driver Kit eine Standard-WDM-Projektvorlage mit darin enthaltenem Quellcode erstellen und dann ändern zu können. Aber als ich das Windows Driver Kit (WDK) heruntergeladen habe, war die einzige WDM-Treibervorlage völlig leer und hatte keinen Quellcode.

Wo finde ich ein Beispiel für eine minimalistische WDM-Treibervorlage mit Quellcode, die verwendet wird? IoCreateDevice ein Geräteobjekt erstellen?

War es hilfreich?

Lösung

ich habe es gefunden Hier.Teil der Beispiele für Windows Driver Kit 8.1, das herrliche IOCTL-Treiberbeispiel

Demonstriert die Verwendung von vier verschiedenen Arten von IOCTLs (method_in_direct, method_out_direct, method_either und method_buffen)

Außerdem,

Bei diesem Beispieltreiber handelt es sich nicht um einen Plug-and-Play-Treiber.Dies ist ein minimaler Treiber, der ein Merkmal des Betriebssystems demonstrieren soll.Weder dieser Treiber noch seine Beispielprogramme sind für die Verwendung in einer Produktionsumgebung vorgesehen.Stattdessen sind sie für Bildungszwecke und als Skelettfahrer bestimmt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top