全志SDK - 3. 系统配置(1)
全志SDK - 1. 系统编译
全志SDK - 2. PC与开发板连接方式
全志SDK - 3. 系统配置(1)
全志SDK - 3. 系统配置(2)
全志SDK - 4. Flash支持
1. 应用程序放置
自己的应用程序,一般有两种放置方式:源码
& 编译过后的二进制文件(推荐)
1.1 源码放置
源码放置位置一般为:package/allwinner/[app-name]
源码是以工程的形式进行放置,所以必须配上 makefile
和 Kconfig
等,具体的可以参考该目录下的其他工程,修改一下即可,很简单的!
一般源码会被编译成ipk
的格式,具体ipk是啥,请自行百度!
1.2 二进制放置
即将自己的APP线下编译成二进制程序,然后放置在系统对应目录下!
一般的放置路径为:package/base-files/files/sbin
或 target/allwinner/[platform]/base-files
2. 更换工具链
工具链一般包含如下几种:
- glibc:最常用的一种,比较大,但功能齐全
- ulibc:glibc的嵌入式版,功能阉割,但相对较小
- musl-libc:一般在针对operwrt
- aarch64:针对64的arm系统
R328默认的工具链为musl-c,我们现在改成glibc,有如下两个步骤:
make menuconfig:
Advanced configuration options (for developers) --->
--------> Select external toolchain C library (Use glibc) ---> #选择工具链的clib
--------> Select external gcc version (gcc 6.4.0) ---> #选择gcc的版本
3. 分区操作
一般分区文件的位置在:TinaSDK/target/allwinner/[board_type]/configs
或者使用 cconfigs
进入。
3.1删除目录
在如下file中增删目录:package/base-files/Makefile
3.2增加分区
① 执行命令:【cconfigs】,进入到目标板的config目录
② 修改分区文件:【vim sys_partition.fex】
③ 增加两个分区:以app和app_sub为例
3.3调整分区大小
执行命令:cconfigs
进入到目标板的config目录
编译 vim sys_partition.fex
,调整size即可
如上图
注意:
- size是以扇区为单位的,一个扇区512bytes
- size总大小请不要超过你的flash大小,否则很可能系统烧录不成功
3.4. 查看分区
使用 mount
指令,可以查看当前挂载的分区有哪些;
使用 df -h
指令,查看分区大小和使用情况
挂载分区指令:mount -o rw /dev/by-name/xxx /abc
卸载分区指令:umount /abc
4. 降低系统启动时间
1)关闭boot log
可通过关闭启动log来实现,具体可参考:Tina_Linux_syslog_使用指南.zip
2)关闭环境变量中的boot log
关闭控制台log打印,更改 device/config/chips/r328s3/configs/std_xr829/linux
【cconfigs进入】目录下 env-4.9.cfg
文件中的loglevel
参数
0-8: 0是最低等级,8是最高等级
3)优化系统启动
Make menuconfig
--> Target Image
------> kernel compression mode setting
------------> Compression 选择 LZO
------> Boot Time optimization 选中
5. 开机自启动
自启动需要做两个配置
- 自启动脚本首行添加
#!/bin/sh /etc/rc.common
- 将自启动脚本放在
/etc/init.d/
目录(系统SDK中的目录为package/base-files/files//etc/init.d/
)- 在
/etc/rc.d/
中做软连接到第一步的自启动脚本(此处以start_wifi为例)
ln -s ../init.d/start_wifi S99start_wifi