建立交叉开发环境
配置开发主机
移植bootloader
linux内核移植
建立并烧写根文件系统到目标板
开发嵌入式应用程序
部署与配置系统
(1)建立交叉开发环境
开发主机的操作系统一般选用某一个发行版本号的linux系统,如RedHatlinux等。linux内核版本号能够依据项目的详细需求而定,如2.4内核或者2.6内核。选择定制安装或所有安装,通过网络下载对应的gcc交叉编译器进行安装(比方arm-linux-gcc,arm-uclibc-gcc等),或者安装产品厂家提供的交叉编译器。
(2)配置开发主机
配置开发主机包含在开发主机上安装linux系统,配置交叉连接工具,如串口和网络接口。
(3)建立引导装载程序bootloader
从网络上下载一些公开源码的bootloader,依据自己详细芯片进行移植改动。

 

(4)移植嵌入式linux操作系统
我们做的是嵌入式应用。那么这些应用须要跑在一定的操作系统上(嵌入式操作系统)。比較经常使用的有uclinux。arm-linux,ppc-linux等。最好的情况是,已经有针对所选择的cpu平台的嵌入式linux系统。下载后再加入自己的特定取得调试。
(5)建立跟文件系统
能够从htth://busybox.net/下载BusyBox软件,对其进行功能裁剪。得到一个最主要的根文件系统,在依据自己的应用须要加入其它的程序。默认的启动脚本一般都不符合应用的须要,所以须要改动根文件系统的启动脚本。该启动脚本放在/etc 文件夹下。根文件系统在嵌入式系统中一般设为仅仅读,须要使用mkcramfs。genromfs等工具生成映像文件。可是有些嵌入式系统直接不使用根文件系统。
(6)建立应用程序的Flash磁盘分区
嵌入式系统不使用磁盘作为外存,一般使用Flash。一般使用JFFS2或者YAFFS文件系统,须要在内核中提供这些文件系统的驱动。

(7)开发应用程序
应用程序能够和根文件系统放在一个分区,也能够存在其它YAFFS或者YFFS2等分区中。
(8)部署与配置系统产品的測试和公布
应用程序开发结束后,须要烧写内核。根文件系统,应用程序。最后进行产品的測试和公布。