Hier wird die Flashaufteilung fuer den CVS Kernel, in besonderem fuer die 500, beschrieben.
Der Flash ist im sieben Bereiche unterteilt. Die Definition dieser Unterteilung ist im Kernel fest geankert. Im Enigma wird an mindestens einer Stelle (fuer die root.cramfs Methode) referenziert.
Als Beispiel dient der 500 MaxVar Kernel.
root@dreambox> cat /proc/mtd
dev: size erasesize name
mtd0: 00500000 00020000 "DreamBOX cramfs+squashfs"
mtd1: 002c0000 00020000 "DreamBOX jffs2"
mtd2: 00040000 00020000 "DreamBOX OpenBIOS"
mtd3: 007c0000 00020000 "DreamBOX (w/o bootloader)"
mtd4: 00800000 00020000 "DreamBOX (w/ bootloader)"
mtd5: 003e0000 00020000 "DreamBOX SquashedFS"
mtd6: 00120000 00020000 "DreamBOX Cramfs"
Die raw Devices sind als /dev/mtd/[0-6] zufinden. Die Funktion der jeweiligen Bereich ist wie folgt zu verstehen:
mtd0
Eine Zusammenfassung den Flashbereichen mtd5 und mtd6. Dieser Bereich erleichtert die Speicherung eines gesamt Images. Die maximale Groesse betraegt 0x00500000 (5242880) Bytes.
mtd1
Enthaelt eine Partitition, die nach dem Booten uebliche Weise unter /var gemountet wird. Die Partition ist eine jffs2 Partition. Die maximale Groesse betraegt 0x002c0000 (2883584) Bytes.
mtd2
Hier ist der Bootloader gespeichert. Wann dieser Bereich kaputt ist kann die Box nicht mehr Ordungsgemaess gestartet werden. Und die Box muss hoechst wahrscheinlich kostenpflichtig an DMM geschickt und neu programmiert werden.
mtd3
Die Flashbereiche mtd0 bzw. mtd5/mtd6 und mtd1 werden hierdurch dargestellt.
mtd4
Der gesamt Flashbereich vom Vorne bis Ende ist abgebildet.
mtd5
Enthaelt die root also / Dateisystem: also alles was man als busybox, enigma, gemini versteht. Dieser Flashbereich wird als squashfs abgebildet. Das root Verzeichnis, das waehrend dem Booten gemountet wird ist durch die Befehlszeile im Kernel bestimmt. Die Maximale Groesse betraegt 0x003e0000 (4063232) Bytes.
mtd6
Dieser Flashbereich, wann gultig, wird vom Bootloader geladen und ausgefuehrt. Er enthaelt das Startbild (bild) und den linux Kernel (os). Der Bereich wird als cramfs abgespeichert. Da liegt eine Verzeichniskette (root/platform/kernel). Die Maximale Groesse betraegt 0x00120000 (1179648 ) Bytes.
Alle Bereiche werden ueber den zugehoerigen Blockdevice angesprochen werden:
/dev/mtdblock/[0-6].