USB bedeutet in erster Linie Universal Serial Bus. Es ist ein Standard für einen Steuerungs- und Datenbus, genau wie PCIe, PCI, EISA und ISA alle Busse. USB ist kein Gerät wie ein CD- oder DVD-Laufwerk. (Optische Laufwerke verwenden normalerweise SATA- oder IDE-Busse mit dem ATA-Protokoll.) Wenn Sie USB verwenden oder darauf verweisen, gibt es wahrscheinlich ein angeschlossenes Gerät (auch als USB-Gadget bezeichnet), auf das Sie sich tatsächlich beziehen.
In diesem Fall beziehen Sie sich wahrscheinlich auf USB-Flashlaufwerke, die im Wesentlichen ein typisches Festplattenlaufwerk emulieren. Wenn das BIOS des PCs das Booten von einem USB-Gerät unterstützt, bedeutet dies, dass das BIOS über eine eingebettete Firmware verfügt, die einen USB-Protokollstack enthält, und ein Zielgerät wie ein Flash-Laufwerk über den Universal Serial Bus steuern kann. Nachdem das USB-Handshake-Protokoll zwischen dem USB-Host (dem zu bootenden PC) und dem USB-Gadget (dem Flash-Laufwerk) eingerichtet wurde, können der von USB bereitgestellte Steuerungs- und Datenmechanismus und die oberen Schichten des BIOS-Startcodes entfernt werden kann das Flash-Laufwerk wie eine Festplatte behandeln. Das heißt, der erste Sektor des "Plattenlaufwerks" muss gelesen werden, um seinen Master Boot Record (MBR) zu erhalten.
Optische Discs entsprechen nicht dem Layout der PC-Festplatte (bei Sektor Null gibt es keinen MBR). Tatsächlich gibt es mehrere Formate für optische Platten, aber das bei PCs übliche Datenlayout ist das ISO 9660-Format für CDs. Die Anforderungen für das Booten von CD / DVD sind in der Norm ISO 9660 festgelegt.
Die Datenübertragungsrate und der Unterschied der physischen Kapazität zwischen verschiedenen Startgeräten werden im Wesentlichen irrelevant, wenn das BIOS das Gerät unterstützt. Die E / A-Eigenschaften jedes unterstützten Startgeräts müssen berücksichtigt werden und werden im Low-Level-Gerätetreibercode des BIOS behandelt. Beachten Sie, dass die meisten PCs auch von der Ethernet-Netzwerkschnittstellenkarte (NIC) aus booten können, und dass sich die Schnittstelle wesentlich von CD / DVD und HDD unterscheidet. Die mehrstufige Herangehensweise an die Softwareimplementierung delegiert die gesamte Low-Level-E / A- und Protokollverarbeitung an niedrigere Ebenen, und das BIOS kann mit dem Laden und Ausführen der nächsten Stufe des Bootloaders fortfahren. Beachten Sie, dass einige Geräteunterschiede parametrisiert sind. Das heißt, die Anzahl von Zylindern, Köpfen, Sektoren / Spur und Sektorgröße des Geräts ist in den Gerätetreibern nicht fest codiert.
Das Schreiben des DVD-Images (auf das USB-Flashlaufwerk) scheint nicht zu funktionieren.
Der Unterschied zwischen diesen beiden Medienlayouts kann aufgelöst werden, indem die beiden zu einer zusammengeführten Bilddatei zusammengefasst werden, die entweder auf eine CD / DVD oder ein HDD / Flash-Laufwerk kopiert werden kann. Ein ISO-Image (zum Brennen auf eine CD oder DVD, um eine startfähige Disc zu erstellen) kann für das direkte Kopieren auf eine Festplatte oder ein USB-Flashlaufwerk geändert werden, um ein hybrides ISO / IMG-Image zu erzeugen :
Das hybride ISO / IMG-Format ist eine Modifikation des Standard-ISO-Formats, um das Image mit den Erwartungen des Startens einer Festplatte kompatibel zu machen
Ein Standard-ISO-Image enthält normalerweise den ISOLINUX-Bootloader, der vom BIOS mit dem El Torito-Boot-Standard geladen wird. Das Hybrid-Image ersetzt die ersten 512 Bytes des ISO-Formats (das sind alle binären Nullen) durch einen Master-Boot-Record (MBR) eines PCs, der Folgendes enthält: Das Stage 1-Loader-Image von GRUB Version 0.97 und eine Partitionstabelle mit 1 Partition endet am Ende des Hybridbildes. Der Rest des ISO-Images wird nicht geändert.
Zusätzliche Sektoren werden am Ende des ISO-Images hinzugefügt.