BIOS und Bootloader Flashcards
Ablauf des Boots?
1 BIOS befindet sich im ROM-Speicher
2 Beim Power-Up führt das BIOS Hardware-Initialisierungen
durch
3 BIOS startet Bootloader
4 1st-Stage Bootloader wird in den Hauptspeicher geladen
BIOS gibt die Programmkontrolle ab
5 Der 1st-Stage Bootloader lädt dann
entweder weitere Bootloader (2nd-Stage Bootloader)
oder den Betriebssystemkern
Was sind die Aufgaben des BIOS?
- CPU aktivieren,
- power-on self test (POST) starten,
- CPU Caches aktivieren,
- Speicher initialisieren (rudimentäre Funktionen),
- weitere CPUs aktivieren (wenn vorhanden),
- Liste angeschlossener E/A Geräte erstellen (z.B. PCI
Devices proben), - Programme in den Boot ROMS dieser Geräte ausführen
(z.B. Festplaenkontroller), - Betriebssystemkernel starten
Was sind die Aufgaben des Bootloaders?
- Basisinitialisierung der Hardware
Memory Controller, Interrupt Controller, Ein-/Ausgabe
Bausteine (z.B. Ethernet Controller) - Kopieren des Kernelcode von einer Qelle in den
Haupspeicher
Flash
ROM - Kopieren eines Initramfs-Code von einer Qelle in den
Hauptspeicher
Flash
ROM
Netzwerk (z.B. tp) - Starten des Embedded Systems
- Übergabe von notwendigen Start-Parametern
- Übergabe der Programmkontrolle
Was sind Monitorfähigkeiten eines Bootloader?
Bootloader, wie beispielsweise »Das U-Boot oder Grub« enthalten häufig auch Monitorfunktionalitäten, also Operationen, um
❑ Hauptspeicherzellen zu lesen und zu schreiben,
❑ Bootparameter zu spezifizieren,
❑ die Bootquelle (Netzwerk, Flash) auszuwählen,
❑ das zu bootende Image auszuwählen und
❑ Recovery durchzuführen (neu flashen).
Wollen Sie einen Bootloader für ein Projekt auswählen, berücksichtigen
Sie die folgenden Kriterien bei der Auswahl:
❑ Unterstützung für die eigene Plattform (CPU, Speicherausbau, Peri-
pherie)
❑ Codeumfang
❑ Funktionsumfang (tftp-boot, nfs-boot, flash-boot, Monitorfunktionalität, Scripting-Fähigkeit)
❑ Lebendigkeit (Wartung, Pflege)
❑ Verbreitung
Warum gibt manchmal 2 Bootloader(not complete)?
Funktionalität passt nicht in vordefinierten Speicher
Pointer zeigt auf Bootloader 2, der mehr Funktionen bietet.
first-boot loader initialize required MEMORY, Hardware,and some external device so for Bootloader 2 there is no limitation of MEMORY
Was macht der 2 Stage Bootloader?
Stage 2 loads Kernel and RAMdisk
Kernel re-enumerates Hardware
- RAM Disk mounted -> Device driver modules loaded
- Filesystem mounted -> Device driver loaded
Run startup scripts and user apps
Bootablauf detailed
Page 15 in Bootloader Firmware
Welche Auswahlkriterien sind wichtig für den Bootloader?
Unterstützung für die Plaform Codeumfang Funktionsumfang tftp-boot nfs-boot sd-card-boot Monitorfunktionalität Skriptingfähigkeit Lebendigkeit (Wartung/Pflege) Verbreitung
Bootloader mit und phne FS
Page 20 and 21 in Bootloader Firmware