V3S文件系统基本构架
1.分區(qū)設(shè)置:
;********************************************************************************************************
; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?分區(qū)配置
;
;
; ?partition 定義范例:
; ? ?[partition] ? ? ? ? ? ? ? ?; ?//表示是一個(gè)分區(qū)
; ? ?name ? ? ? ?= USERFS2 ? ? ?; //分區(qū)名稱
; ? ?size ? ? ? ?= 16384 ? ? ? ?; //分區(qū)大小 單位: 扇區(qū).分區(qū)表示個(gè)數(shù)最多2^31 * 512 = 2T
; ? ?downloadfile = "123.fex" ? ; //下載文件的路徑和名稱,可以使用相對(duì)路徑,相對(duì)是指相對(duì)于image.cfg文件所在分區(qū)。也可以使用絕對(duì)路徑
; ? ?keydata ? ? = 1 ? ? ? ? ? ?; //私有數(shù)據(jù)分區(qū),重新量產(chǎn)數(shù)據(jù)將不丟失
; ? ?encrypt ? ? = 1 ? ? ? ? ? ?; //采用加密方式燒錄,將提供數(shù)據(jù)加密,但損失燒錄速度
; ? ?user_type ? = ? ? ? ? ? ? ?; //私有用法
; ? ?verify ? ? ?= 1 ? ? ? ? ? ?; //要求量產(chǎn)完成后校驗(yàn)是否正確
;
; 注:1、name唯一, 不允許同名
; ? ? 2、name最大12個(gè)字符
; ? ? 3、size = 0, 將創(chuàng)建一個(gè)無大小的空分區(qū)
; ? ? 4、為了安全和效率考慮,分區(qū)大小必須保證為64K字節(jié)的整數(shù)倍
;********************************************************************************************************
[partition_start]
[partition]
? ? name ? ? ? ? = boot
? ? size ? ? ? ? = ?5760?
? ? downloadfile = "boot.fex"
? ? user_type ? ?= 0x8000
?? ?
[partition]
? ? name ? ? ? ? = system
? ? size ? ? ? ? = 12672?
? ? downloadfile = "rootfs.fex"
? ? user_type ? ?= 0x8000
[partition]
? ? name ? ? ? ? = cfg
? ? size ? ? ? ? = 2048
? ? downloadfile = "cfg.fex"
? ? user_type ? ?= 0x8000
[partition]
? ? name ? ? ? ? = boot_logo
? ? size ? ? ? ? = 256
? ? downloadfile = "boot_logo.fex"
? ? user_type ? ?= 0x8000
[partition]
? ? name ? ? ? ? = shutdown_logo
? ? size ? ? ? ? = 256
? ? downloadfile = "shutdown_logo.fex"
? ? user_type ? ?= 0x8000?? ?
[partition]
? ? name ? ? ? ? = env
? ? size ? ? ? ? = 128
? ? downloadfile = "env.fex"
? ? user_type ? ?= 0x8000
?? ?
[partition]
? ? name ? ? ? ? = private
? ? size ? ? ? ? = 128
? ? user_type ? ?= 0x8000?? ?
?? ?
[partition]
? ? name ? ? ? ? = driver
? ? size ? ? ? ? = 1536
? ? downloadfile = "driver.fex"
? ? user_type ? ?= 0x8000
[partition]
? ? name ? ? ? ? = qq_data_sql
? ? size ? ? ? ? = 4096
? ? downloadfile = "qq_data_sql.fex"
? ? user_type ? ?= 0x8000
?? ?
[partition]
? ? name ? ? ? ? = app_Tencent_iot
? ? size ? ? ? ? = 3072
? ? downloadfile = "app_Tencent_iot.fex"
? ? user_type ? ?= 0x8000
?? ?
編號(hào)從1開始。
?
2.各分區(qū)文件系統(tǒng)生成腳本:
rm -rf ?app_Tencent_iot.img
./mksquashfs app_Tencent_iot app_Tencent_iot.img -noappend -comp xz
?
rm -rf ?driver.img
./mksquashfs driver driver.img -noappend -comp xz
?
#!/bin/sh
cd qq_data_sql
?../mkfs.jffs2 -d . -l -e 0x10000 -o ../qq_data_sql.img
?
#!/bin/sh
./mksquashfs system system.img -noappend -comp xz
?
?
3.文件系統(tǒng)的掛載:
on fs
# mount mtd partitions
# Mount /system rw first to give the filesystem a chance to save a checkpoint
? ? wait /dev/block/mtdblock2
? ? setupfs /dev/block/mtdblock2
? ? mount squashfs /dev/block/mtdblock2 /system
?? ?
? ? wait /dev/block/mtdblock3
? ? mount jffs2 /dev/block/mtdblock3 /data
?? ?mount tmpfs tmpfs /tmp
? ? mount debugfs debugfs /sys/kernel/debug mode=0755,gid=1000
?? ?
?? ?wait /dev/block/mtdblock8
?? ?mount squashfs /dev/block/mtdblock8 /system/vendor/other
?? ?
?? ?wait /dev/block/mtdblock9
?? ?mount jffs2 /dev/block/mtdblock9 /qq_data_sql
?? ?wait /dev/block/mtdblock10
?? ?mount squashfs /dev/block/mtdblock10 /app_Tencent_iot
?? ?
on post-fs
? ?mount rootfs rootfs / shared rec
?
4.注意它們之間的聯(lián)系。
?
?
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的V3S文件系统基本构架的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: v3s修改驱动代码的流程
- 下一篇: stm32篇--系统初始化