咨询下,根据文档,制作的 UBI 文件系统,是成功启动了,但是存在一些疑问,望解答!
内核的分区为八个分区,分别是 :
static struct mtd_partition am335x_nand_partitions[] = {
/* All the partition sizes are listed in terms of NAND block size */
{
.name = "SPL",
.offset = 0, /* Offset = 0x0 */
.size = SZ_128K,
},
{
.name = "SPL.backup1",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x20000 */
.size = SZ_128K,
},
{
.name = "SPL.backup2",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x40000 */
.size = SZ_128K,
},
{
.name = "SPL.backup3",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x60000 */
.size = SZ_128K,
},
{
.name = "U-Boot",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x80000 */
.size = 15 * SZ_128K,
},
{
.name = "U-Boot Env",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x260000 */
.size = 1 * SZ_128K,
},
{
.name = "Kernel",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x280000 */
.size = 40 * SZ_128K,
},
{
.name = "File System",
.offset = MTDPART_OFS_APPEND, /* Offset = 0x780000 */
.size = MTDPART_SIZ_FULL,
},
也就是 MTD7 为 File System,整个文件系统的空间大约是 1000MB 大小空间
系统成功挂载 UBI 文件系统之后,查看分区 :
cat /proc/mtd
dev: size erasesize name
mtd0: 00020000 00020000 "SPL"
mtd1: 00020000 00020000 "SPL.backup1"
mtd2: 00020000 00020000 "SPL.backup2"
mtd3: 00020000 00020000 "SPL.backup3"
mtd4: 001e0000 00020000 "U-Boot"
mtd5: 00020000 00020000 "U-Boot Env"
mtd6: 00500000 00020000 "Kernel"
mtd7: 1f880000 00020000 "File System"
mtd8: 1e349000 0001f000 "rootfs"
变成了九个分区,在内核指定的 "File System"后面,又多了一个 "rootfs"。而且计算可以知道, "rootfs" 大约从 "File System" 获得了一般的空间大小,大约为 483MB。
下面是关于 UBI 启动的相关信息:
UBI: max. sequence number: 0
[ 4.544769] UBI: volume 1 ("rootfs") re-sized from 1652 to 3991 LEBs
[ 4.551936] UBI: attached mtd7 to ubi0
[ 4.555865] UBI: MTD device name: "File System"
[ 4.561620] UBI: MTD device size: 504 MiB
[ 4.566805] UBI: number of good PEBs: 4035
[ 4.571726] UBI: number of bad PEBs: 1
[ 4.576365] UBI: number of corrupted PEBs: 0
[ 4.581012] UBI: max. allowed volumes: 128
[ 4.585835] UBI: wear-leveling threshold: 4096
[ 4.590753] UBI: number of internal volumes: 1
[ 4.595393] UBI: number of user volumes: 1
[ 4.600040] UBI: available PEBs: 0
[ 4.604679] UBI: total number of reserved PEBs: 4035
[ 4.609886] UBI: number of PEBs reserved for bad PEB handling: 40
[ 4.616255] UBI: max/mean erase counter: 1/0
[ 4.620720] UBI: image sequence number: 578192465
[ 4.625815] UBI: background thread "ubi_bgt0d" started, PID 50
[ 6.239973] UBIFS: start fixing up free space
[ 53.458208] UBIFS: free space fixup complete
[ 53.499746] UBIFS: mounted UBI device 0, volume 1, name "rootfs"
[ 53.506046] UBIFS: file system size: 258523136 bytes (252464 KiB, 246 MiB, 2036 LEBs)
[ 53.514442] UBIFS: journal size: 9023488 bytes (8812 KiB, 8 MiB, 72 LEBs)
[ 53.522094] UBIFS: media format: w4/r0 (latest is w4/r0)
[ 53.528188] UBIFS: default compressor: lzo
[ 53.532474] UBIFS: reserved for root: 0 bytes (0 KiB)
这个是为什么呢?这种现象是正常的么?我应该如何去理解?还是说,我应该将修改我的内核分区?
如何去理解?还是说,我应该将修改我的内核分区?
