总结分析 ARM的启动,系统升级,烧写过程和文件系统
本文所述的ARM的指的是CortexA系列以及ARM9,ARM11,跑Linux操作系统。对于CortexM系列并不一定完全适用;r r t r r t谈到ARM以及启动和烧写等方面,首先我们要明确一下几个关键词:Uboot,Cmdline,启动方式选择,文件系统格式,存储介质,如NAND,EMMC,SD卡等r r t r r t下面一个一个做相关介绍:r r t r r t启动方式:r r t r r t①一般CPU都可以配置为从多种介质启动,比如SPINorFlash,NAND,EMMC,SD卡,U盘等r r t②大致原理是CPU内部ROM有一段固化的启动代码,根据CPU配置引脚,判断启动位置,然后从外部介质读取数据启动r r t③一般启动介质的前一部分代码的作用必须是:初始化硬件参数,自身拷贝r r t④关于自拷贝:因为CPU内部RAM很小,因此只能读取一部分启动介质的数据即Uboot到内部RAM运行,所以Uboot前一部分的工作需要将自身剩余部分拷贝到外部RAM中,然后加载运行r r t r r tUboot:r r t r r t①主要作用:引导Linux系统(主要是从存储介质的哪个地方读取Kernel,传递什么样的启动参数)r r t②其他功能:支持很多命令,主要是存储控制和网络命令,最终目的还是引导和升级系统用r r t③常用操作:TFTP,NAS,Flash操作,UBI操作,Setenv,boot等r r t④一般升级系统流程:使用tftp方式从主机下载kernel及文件系统等文件,然后使用flash等命令烧写到存储介质如NAND,最后设定启动参数,然后引导系统启动;r r t⑤一般调试流程,介绍2种:r r t-使用NAS从主机直接加载文件系统,直接在线调试,快捷方便r r t-设定从SD卡启动,从SD卡加载kernel和文件系统调试
下载地址
用户评论