[REF] Firmwaretypen und der Bootloader

Donald Nice

Donald Nice

Enthusiast
2.682
Ich möchte ein bischen Klarheit in das Dunkel der verschieden Firmwaretypen bringen. Ich schriebe dieses nach bestem Wissen und Gewissen und lasse mich gerne berichtigen, wenn etwas nicht ganz richtig sein sollte. Ich versuche trotzdem das ganze so verständlich wie möglich zuhalten.

Eines Vorweg:
Das Thema Pit-Files ist in der FAQ ausreichend dokumentiert, jedoch möchte ich vorweg dazu eines sagen. Ich habe bisher noch nie die 803er Pit flashen müssen und ich habe seit eclair jede geleakte Firmware geflasht. Ich habe sowieso bisher nur einmal am Anfang aus Unwissenheit mit 512er und repart geflasht.

Ich bin der Meinung, dass eine Repartitionierung wirklich nur dann nötig ist, wenn ein CustomRom wie CM7 / MIUI / CM9 vorher geflasht wurde und man zurück auf Stock möchte oder eine der Partitionen des SGS irgendwie beschädigt oder durch einen Lagfix geändert wurde und das SGS trotz des beachten der untenstehenden Informationen nicht mehr startet oder die neue Firmware explizit mit der 803er geflasht werden muss, aber das hab ich persönlich, wie gesagt, bisher noch nie erlebt.


Somit mein Tip: Lasst den Quatsch mit dem repartition wenn ihr noch nie repartitionert habt bzw, eure letze repart mit der 512er Pit war.

Aber nun zum Thema:
Grundsätzlich müssen wir bei den Firmwares zwischen den 1-File-Firmwares und den LowLevel-Firmwares unterscheiden.

LowLevel Firmwares bestehen grundsätzlich aus 3 einzelnen Archiven.
1. die PDA-Datei, das eigentliche Betriebsystem
2. Die Modem- oder auch Phone-Datei, der Treiber für die Empfangsheit des Telefons (GSM/UMTS/GPS/WLAN)
3. Die CSC-Datei, sozusagen eine Sprachdatei, die Providerspezifische Informationen wie zb. APN-Settings beinhaltet.

Achtung! Die PDA-Datei kann zusätzlich noch eine boot.bin oder eine spl.bin beinhalten. Diese beiden Dateien updaten den Bootloader. Der Bootloader ist sozusagen das erste was nach dem Anschalten des Telefons gestartet wird, er startet das Betriebssystem und stellt unter anderem den 3-Buttonmode und den Recoverymode zur Verfügung, sofern die entsprechende Kombination beim Start gedrückt wird.
Die boot.bin stellt den primären Bootloader zur Verfügung, die spl.bin den sekundären Bootloader. Der sekundäre Bootloader wird z.B. von einem Brick-Dongle aktiviert, sobald dieser beim Start eingesteckt wird und bringt somit ein Handy dessen Primärer Bootloader beschädigt wurde, trotzdem in den Download-Mode.

Ein Firmware-Update mit einer Firmware die einen neuen Bootloader beeinhaltet, ist somit etwas riskanter, weil auch dieser Vorgang schiefgehen kann (Absturz des Rechners, USB-Problem, ungewolltes Trennen der Verbindung, ...). Sollte durch ein Update oder sonstigen Eingriff der Primäre Bootloader beschädigt werden begrüsst uns unser SGS mit dem folgenden Bildschirm:

200px-Samsung_Galaxy_S_Black_Screen_of_Death.jpg


In diesem Fall wird dann der Dongle benötigt, der dem SGS die Information gibt den Sekundären Bootloader zu starten. Jedoch ist das SGS durch diese Kombination von 2 Bootloadern und einem Dongle nahezu unbrickbar.


Aber zurück zum Thema: Zusätzlich enthalten die Low-Level-Firmwares die dazugehörige dbdata.rfs, welches sie grundlegend von den 1-File-Firmwares unterscheidet. In der dbdata.rfs sind alle Informationen gespeichert die später im dbdata-Verzeichnis liegen und später alle persönlichen Informationen gespeichert werden. Die LowLevel-Firmwares sind sozusagen Vollversionen mit neuem dbdata.rfs, und 1-File-Firmwares wie Updates darauf ausgelegt diese Informationen zu erhalten.

Die 1-File-Firmware besteht aus nur einer einzelnen .tar Datei und wird u.a. von Kies verwendet um unser Handy upzudaten. Beim Update via Kies lädt das Programm eine Firmware in verschlüsselter Form vom Kies-Update-Server herunter in einen Tempordner (aus dem diese während des Flashvorgangs wegkopiert werden kann) und flasht diese Firmware via USB auf das Handy.
Die 1-File-Firmware beinhaltet alle 3 Teile der LowLevel-Firmwares (PDA/MODEM/CSC) aber keine dbdata, da sie als Update aufs Handy gespielt werden und die persönlichen Informationen die im dbdata-Verzeichnis gespeichert sind, nicht überschreiben soll.
Dieser Vorgang ist einem Update gleichzusetzen, bei dem persönliche Daten erhalten bleiben (sollten). Der Nachteil der 1-File-Firmware ist die Tatsache, dass die CSC in die eine .tar Datei integriert ist und möglicherweise dann gar nicht zum System passt. Beim Flashen einer Low-Level-Firmware haben wir den Vorteil, dass wir die CSC selbst wählen können.

Somit haben beide Arten von Firmware-Typen Vor- und Nachteile. Logischerweise können beide Firmware-Typen (!) neue Bootloader enthalten.

Die LowLevel-Firmware führt eine Neuinstallation des Systems durch. Somit wird nach dem Flash fast immer ein FactoryReset und ein Wipe des Cache notwendig, da das dbdata-Verzeichnis neu geschrieben wird aber die "Reste" des alten Systems nicht gelöscht werden.

Die 1-File-Firmware hat den Updatevorteil, d.h. das persönliche Daten erhalten bleiben sollten. Hierbei ist zu beachten, dass der Versionsunterschied auch hier nicht groß sein darf. Somit sollte das Update von einer älteren 2.2 Firmware auf eine neuere 2.2 Version kein Problem sein, wohingegen ein Update von einer 2.2-Firmware auf eine 2.2.1 Firmware auch gerne mal nicht klappt aber auch klappen kann).

Genauso sollte so klar werden, warum man keine 1-File-Firmwares mit repartition und Pit flashen darf. Das Repartitionieren löscht die bestehenden Partionen auf dem SGS und erstellt diese neu, dabei gehen logischerweise alle Informationen verloren auch das alte dbdata-Verzeichnis. Da die 1-File-Firmware keine dbdata enthält kann das Telefon danach gar nicht mehr starten, weil kein dbdata-Verzeichnis existiert!

Letztendlich ist das Flashen einer LowLevel-Firmware der "sauberere" Weg zu flashen, jedoch gehen dabei alle persönlichen Einstellungen aufgrund des dazugehörigen FactoryResets verloren und ist mit einer echten Neuistallation gegenüber eines Updates bei der 1-FileFirmware zu vergleichen.

So ich hoffe etwas Licht ins Dunkel gebracht zu haben und wünsche noch einen schönen Samstag Abend.
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: danyx, SG$, NoFish und 61 andere
Sehr gut erklärt - Sollte gepinnt werden ;-)
 
  • Danke
Reaktionen: KomodoDragon
Schöne Erklärung, hatte ich mir bzw. habe ich mir aber schon selbst zusammengebstelt.
 
Weist du was jetzt noch fehlt? Eine auflistung von den dateien und welche wofür nötig sind.Ich mein jetzt speziell z.b. factoryfs boot und sbl.Was genau brauch man nach Repartition,? Darkys resurrection wird ja auch mit pit geflasht und ist nur einteilig...also so richtiges hardcore wissen:)
 
Donald Nice schrieb:
Der Nachteil der 1-File-Firmware ist die Tatsache, dass die CSC in die eine .tar Datei integriert ist und möglicherweise dann gar nicht zum System passt. Beim Flashen einer Low-Level-Firmware haben wir den Vorteil, dass wir die CSC selbst wählen können.

Woher weiss ich denn, ob die CSC Datei aus einer 3 Part Firmware die richtige ist oder nicht ? Es geht ja um in deinem Thread https://www.android-hilfe.de/forum/...d-2-2-1-jq3-jpy-js2-odin-kies-root.85240.html eingefügte Low-Level-Firmware.
 
Das ist nicht Dein Ernst oder?
Beim entpacken siehst Du doch ob die FW aus einem oder 3 Teilen besteht.
 
  • Danke
Reaktionen: Donald Nice
Ich dachte es gäbe verschieden CSC Dateien die je nach Handy (DBT etc.) ausgelegt sind. Daher die Frage.
 
Ja klar, gibt.. Einzel-CSC's und Multi-CSC's in meinem Pack der JQ3 ist die deutsche CSC für ungebrandete Handys (=ProductCode DBT) enthalten...
 
Jetzt ist alles klar
 
ich würde nicht schreiben, dass der dongle der letzte ausweg ist - das lässt die leute in der hoffnung, dass mit einem dongle alles wieder behoben werden kann.

sind jedoch beide bootloader beschädigt hilft nur noch ein rif.
 
Den Unterschied zwischen den Firmwares die aus einem oder aus drei Teilen bestehen kenn ich schon lange.

Was mir aber seit gestern nicht so ganz klar ist, ist das mit dem Bootloader...
Im speziellen hab ich dazu folgende Frage:
Sind 3-teilige Firmwares ohne Bootloader oder gibt es auch welche mit Bootloader?

Weil im Thread Upgrade auf das offizielle Android 2.2.1 [JQ3/JPY/JS2] ODIN / KIES / ROOT wird immer von einer Firmware ohne Bootloader gesprochen, und die ist ja 3-teilig....
 
Ja es gibt dreiteilige mit und ohne. Das siehst Du daran ob die boot.bin und sbl.bin in der tar Datei dabei sind ;-)

Sent from my GT-I9000
 
  • Danke
Reaktionen: of333 und Donald Nice
hm....
Bei den 3-teiligen die ich habe, die enden immer mit .....tar.md5
Wie und in welcher muss ich da nachschauen?

Ich glaub ich bin selber drauf gekommen.
Bei der PDA die md5-Endung entfernt und dann die tar geöffnet.
Ist das richtig?
 
Zuletzt bearbeitet von einem Moderator:
jup.. Die PDA Datei kopieren, damit du die orginale behälst, dann die kopie umbenennen (.md5 entfernen) und danach die .tar entpacken...
 
  • Danke
Reaktionen: of333
Da komme ich jetzt nicht ganz mit.Die PDA Datei kopieren, damit ich die orginale behalte ist klar.
Dann die Kopie umbenennen (.md5 entfernen) und danach die .tar entpacken bedeutet das ich dann weiß ob ein Bootloader drin ist?Also müssten dann bei Bootloader Version boot.bin und sbl.bin enthalten sein?
 
Ja genau!
 
  • Danke
Reaktionen: Wassilis
Ich hab da nochmal eine Frage zum flashen des Bootloaders unter Odin 1.3:

Dieser wird doch nur geflasht, wenn man einen Haken bei "Phone Bootloader Update" macht, oder?

Ich habe eine 3 teilige FW mit boot.bin und sbl.bin geflasht (2.3.3), aber hier keinen Haken reingemacht - welchen Bootloader habe ich nun?
 
wenn in einer FW die du flasht ein bootloader enthalten ist, wird dieser mitgeflasht, egal ob du den haken gesetzt hast oder nicht.

(bitte verbessert mich wenn ich falsch liege)


LG Hermz
 
Jup ist wirklich so
 

Ähnliche Themen

S
Antworten
10
Aufrufe
2.806
tobiasth
tobiasth
D
Antworten
15
Aufrufe
16.202
tobiasth
tobiasth
onemaster
Antworten
2
Aufrufe
889
onemaster
onemaster
Zurück
Oben Unten