Die Voraussetzungen für Plug & Play

502
chipbk10

Plug & Play kann uns dabei helfen, eine Hardwarekomponente in einem System zu erkennen, ohne dass eine physische Konfiguration oder ein Eingreifen des Benutzers zur Lösung von Ressourcenkonflikten erforderlich ist.

Aber ich frage mich: Gibt es spezielle Anforderungen an Hardware und / oder Software, damit Plug & Play funktionieren kann? Nehmen Sie ein Beispiel für USB. Gibt es irgendwelche Anforderungen an USB-Speichersticks oder USB-Festplatten, um die Standard-Microsoft-Treiber zu verwenden?

0

2 Antworten auf die Frage

1
Mario

Das gesamte Plug & Play "Magic" besteht meines Wissens nur aus zwei wesentlichen Kernelementen:

  • Die Software muss in der Lage sein, festzustellen, ob neue Hardware angeschlossen wurde (z. B. Teil des USB-Standards).
  • Die Hardware kann identifiziert werden. Mit einer speziellen Anforderung (ohne Verwendung herstellerspezifischer Treiber) kann eine eindeutige ID abgerufen werden (die normalerweise aus einer Hersteller-ID und einer Geräte- / Hardware-ID besteht). Das Betriebssystem kann damit die spezifische Hardware identifizieren und die korrekten Treiber installieren, ohne den Benutzer vorher zu fragen.
  • (Optional :) Die Hardware und Software (Treiber) sollten im Idealfall ohne Neustart funktionieren.

Um mit den mitgelieferten Standardtreibern arbeiten zu können, muss die Hardware die richtigen Reaktionen auf die gesendeten Befehle implementieren (dh die Hardware muss die richtige "Sprache" sprechen). Abhängig von der Art der Hardware wurde dies üblicherweise standardisiert (z. B. USB-Massenspeichergeräte ).

1
LawrenceC

"Plug and Play" ist ein Windows-spezifischer Begriff, der ursprünglich die Methode ISA und später PCI-Geräte bedeutete, damit das Betriebssystem die verwendeten Ressourcen auswählen konnte. Das BIOS kann dies auch für DOS tun oder beiseite treten und Windows vollständig erledigen lassen.

Ressourcen sind A) Speicheradressen, B) E / A-Adressen, C) IRQs und / oder D) DMA-Kanälen. Jede, mehrere oder alle davon können von einem Gerät zur Kommunikation mit der CPU verwendet werden.

Ursprünglich war ein "Plug and Play" -Treiber ein Treiber, der verstehen konnte, wie das Gerät initialisiert wird, dh es muss so konfiguriert werden, dass Ressourcen belegt werden, die kein anderes Gerät verwendet.

Ein weiterer wichtiger Teil von Plug & Play ist eine Standardmethode für ein Gerät, um sich selbst zu identifizieren. PCI (und möglicherweise ISAPNP) sieht vor, dass jedes Gerät eine eindeutige Hersteller- und Geräte-ID hat. Dies wurde auf USB übertragen. So kann das Host-Betriebssystem herausfinden, "was" das Gerät ist, und den richtigen Treiber laden.

Wenn wir nun in Geräte einsteigen, die als "hot-pluggable" konzipiert sind, ist das etwas anders, aber offensichtlich wird der Begriff "Plug and Play" immer noch verwendet, um es zu beschreiben. Die meisten Hot-Plug-fähigen Geräte werden von einem nicht Hotplug-fähigen Gerät "gehostet". USB-Geräte werden von einem USB-Controller "gehostet", der selbst ein PCI-Gerät ist, das eine oder mehrere Ressourcen beansprucht, die normalerweise über Plug & Play zugewiesen werden. Um mit Geräten über den USB-Bus zu kommunizieren, müssen Sie den USB-Controller "durchlaufen". Eine ähnliche Situation besteht für SCSI-, IDE- und SATA-Geräte.

Damit die Hot-Plug-Fähigkeit funktionieren kann, benötigt der Treiber für den "Host" -Controller einen Mechanismus, der den Treibern, die die Geräte darstellen, "darüber" mitteilt, was los ist, dh ein USB-Controller-Treiber benötigt einen Weg, um einem USB-Massenspeichertreiber mitzuteilen, dass das Gerät wurde getrennt. Der "obere" Treiber muss über einen Code verfügen, der sauber beendet werden kann, wenn er aufgefordert wird, entfernt zu werden, anstatt zu erwarten, dass er bis zum Neustart resident bleibt.

Die meisten Bustypen wie USB, SCSI, SATA unterliegen Standards, die die Treiber erkennen und implementieren müssen.

Auf der Hardwareebene sind die meisten hot-plug-fähigen Geräte so konzipiert, dass ein Teil des Steckverbinders statische Elektrizität abführt und dass die Pins, die den Strom führen, einen Bruchteil einer Sekunde vor den Pins verbinden, die Daten transportieren. Schauen Sie sich die Pins des USB- und SATA-Anschlusses genau an. Deshalb sind einige länger als die anderen. IDE-Anschlüsse tun dies NICHT und sind für Hotplugging NICHT sicher.

Das klingt interessant. Können Sie mir sagen, aus welcher Quelle Sie diese Informationen erhalten? chipbk10 vor 11 Jahren 0