Frühere Versionen von Windows – Übersicht über Treiber für serielle Controller
Windows unterstützt Treiber für herkömmliche Geräte mit seriellen Controllern. Der Begriff serieller Controller bezieht sich auf einen 16550 Universal Asynchronous Receiver-Transmitter (UART) oder ein kompatibles Gerät. Ein serieller Controller verfügt über einen seriellen Port, über den er mit einem seriell angeschlossenen Peripheriegerät kommuniziert. Zur Unterstützung der seriellen Kommunikation enthält Windows die Treiber Serial.sys und Serenum.sys sowie die Versionen 1 und 2 der Serial Framework Extension (SerCx und SerCx2).
SerCx
In Windows 8 ist SerCx eine vom System bereitgestellte Komponente, die die serielle Kommunikation zwischen integrierten Schaltkreisen auf einer Leiterplatte unterstützt. SerCx ist eine Erweiterung des Kernel-Mode Driver Framework (KMDF). Diese Erweiterung vereinfacht die Entwicklung von angepassten Treibern für serielle Controller. SerCx unterstützt einen auf der Erweiterung basierenden Treiber für serielle Controller, indem es viele der Verarbeitungsaufgaben übernimmt, die bei seriellen Controllern üblich sind. Dieser Treiber kommuniziert mit SerCx über die SerCx Gerätetreiber-Schnittstelle.
SerCx2
Ab Windows 8.1 wurde SerCx durch SerCx2 abgelöst. SerCx2 bietet viele Verbesserungen gegenüber SerCx, um den Umfang und die Komplexität der Treiber für serielle Controller zu reduzieren. Insbesondere entlastet SerCx2 den Treiber des seriellen Controllers von der Verarbeitung, die für die Verwaltung von Timeouts und die Koordinierung von E/A-Transaktionen erforderlich ist, die um den Zugriff auf den seriellen Controller konkurrieren. Infolgedessen ist der Treiber für den seriellen Controller kleiner und einfacher. Der Anbieter der Hardware für den seriellen Controller liefert einen auf Erweiterungen basierenden Treiber für den seriellen Controller, der die hardwarespezifischen Funktionen des seriellen Controllers verwaltet und sich bei der Ausführung allgemeiner Aufgaben des seriellen Controllers auf SerCx2 verlässt. Dieser Treiber kommuniziert mit SerCx2 über die SerCx2 Gerätetreiber-Schnittstelle.
Weitere Informationen über SerCx2 finden Sie unter Verwendung von Version 2 der Serial Framework Extension (SerCx2).
Allgemeine Informationen über das Framework für Treiber finden Sie unter Verwendung von WDF zur Entwicklung eines Treibers
Serial.sys und Serenum.sys
In älteren Versionen von Windows, wie z. B. Windows 2000, unterstützte der vom System gelieferte serielle Treiber Serial.sys eigenständige serielle Ports, COM-Ports und Multiport-Karten. Der vom System gelieferte Treiber für die serielle Auflistung, Serenum.sys, listet Geräte auf, die an einen seriellen Port angeschlossen sind, der von Serial.sys oder einem kompatiblen Treiber für serielle Ports gesteuert wird. Serial.sys steuert in der Regel die COM-Ports (typischerweise COM1, COM2, usw.), die sich physisch am Gehäuse eines PCs befinden, auf dem Windows ausgeführt wird. Diese Ports entsprechen weitgehend dem RS-232-Standard, enthalten aber zusätzlich De-facto-Standards (z. B. für Spannungspegel, Pin-Verbindungen und Hardware Flow Control), die sich zur Unterstützung von PCs entwickelt haben. Weitere Informationen finden Sie unter Verwendung von Serial.sys und Serenum.sys.
Das Repository für Windows-Treiberbeispiele auf GitHub enthält den Quellcode für die Serial- und Serenum-Treiberbeispiele, die ähnlich wie die Container Serial.sys und Serenum.sys funktionieren und anstelle dieser Treiber installiert werden können.