MA-E3xxシリーズには、256MiBのNAND Flashが搭載されています。
構成は、下表のようになっています。
デバイス | サイズ | 名前 | 備考 |
---|---|---|---|
mtd0 | 255MiB | UBI | UBI1) |
mtd1 | 1MiB | OOPS | OOPSメッセージ保存用 |
以下、UBI領域内のボリューム | |||
mtd2 | 4158KiB | kernel.0 | カーネル [0] |
mtd3 | 4158KiB | kernel.1 | カーネル [1] |
mtd4 | 2142KiB | initramfs.0 | initramfs [0] |
mtd5 | 2142KiB | initramfs.1 | initramfs [1] |
mtd6 | 2142KiB | kmod.0 | カーネルモジュール [0] |
mtd7 | 2142KiB | kmod.1 | カーネルモジュール [1] |
mtd8 | 82026KiB | rootfs.0 | root filesystem [0] |
mtd9 | 82026KiB | rootfs.1 | root filesystem [1] |
mtd10 | 25704KiB | opt | Java SE Embedded 8 |
mtd11 | 44856KiB | overlay | 変更分保存用領域(オーバーレイ領域) |
ブートデバイス用として、2MiBのSPI Flashメモリが搭載されています。
構成は、下表のようになっています。
デバイス | サイズ | 名前 | 備考 |
---|---|---|---|
mtd12 | 128KiB | MLO | bootloader 1段目 |
mtd13 | 512KiB | barebox.bin | bootloader 本体 |
mtd14 | 128KiB | barebox.env | bootloader 保存領域 |
mtd15 | 128KiB | dtb.0 | DeviceTree blob [0] |
mtd16 | 128KiB | dtb.1 | DeviceTree blob [1] |
mtd17 | 128KiB | hist_firmup | ファームウェア更新履歴 |
mtd18 | 896KiB | hist_boot | 起動履歴 |
カーネル、initramfs、カーネルモジュール、root filesystem、DeviceTree blob に “[0]”/“[1]” をつけているとおり、それぞれを2セット保持し、
ファームウェア更新などで万が一起動しなくなった場合にもう片方のセットで起動することができるようになっています。
ディレクトリ構造は下記のようになっています。
/ (aufs) --+ | +- ro/ (squashfs) -+- lib/modules (squashfs) | | | +- usr/lib/jvm (squashfs) | +- rw/ (tmpfs/ext4) | +- rw.tmpfs/ (tmpfs)
initramfs の scripts/init-bottom/__rootoverlay スクリプトにより、下記シーケンスでmount処理が行われます。
その後、init スクリプトにより ${rootmnt} ⇒ / へと rootfs の switch が行われ、/sbin/init が起動されます。