来自:网路
在一个嵌入式系统中使用Linux开发,依照应用需求的不同有不同的配置开发方式,而且通常都要经过如下的过程:
1.完善开发环境
操作系统通常使用RedHat-Linux,版本从7到9都可以arm嵌入式linux系统开发技术详解,选择订制安装或全部安装,通过网路下载相应的GCC交叉编译器进行安装(比如arm-Linux-gcc、arm-μclibc-gcc),或则安装产品厂家提供的交叉编译器。
注:嵌入式Linux应用开发完全指南韦东山老师选用的是Ubuntu7.10
2.配置开发主机
配置MINICOM,通常的参数为码率为115200bpslinux命令tar,数据位为8位,停止位为1,无奇偶校准,软件硬件流控设为无。在Windows下的超级终端的配置也是这样的。MINICOM软件的作用是作为调试嵌入式开发板的信息输出的监视器和鼠标输入的工具。配置网路,主要是配置NFS网路文件系统,须要关掉防火墙,简化嵌入式网路调试环境设置过程。
3.构建引导装载程序BOOTLOADER
从网路上下载一些公开源代码的BOOTLOADER,如U-BOOT、BLOB、VIVI、LILO、ARM-BOOT、RED-BOOT等,依据自己具体的芯片进行移植更改。有些芯片没有外置引导装载程序,比如三星的ARM7、ARM9系列芯片,这样就须要编撰开发板上Flash的烧录程序,网路上有免费下载的Windows下通过JTAG串口简易仿真器烧录ARM外围Flash芯片的烧录程序,也有Linux下的公开源代码的J-Flash程序。若果不能烧录自己的开发板,就须要依照自己的具体电路进行源代码更改。这是系统正常运行的第一步。假如订购了厂家的仿真器其实比较容易烧录Flash,这对于须要迅速开发自己产品的人来说可以极大地提升开发速率,并且其中的核心技术是难以了解的。
4.下载他人早已移植好的Linux操作系统
如μCLinux、ARM-Linux、PPC-Linux等,假如有专门针对所使用的CPU移植好的Linux操作系统那是再好不过的,下载后再添加自己的特定硬件的驱动程序,进行调试更改,对于带MMU的CPU可以使用模块形式调试驱动,对于μCLinux这样的系统则需编译进内核进行调试。
5.构建根文件系统
从下载使用BUSYBOX软件进行功能裁减linux命令详解词典,形成一个最基本的根文件系统,再依照自己的应用须要添加其他程序。默认的启动脚本通常都不会符合应用的须要,所以就要更改根文件系统中的启动脚本,它的储存位置坐落/etc目录下,包括:/etc/init.d/rc.S、/etc/profile、/etc/.profile等,手动挂装文件系统的配置文件/etc/fstab,具体情况会随系统不同而不同。根文件系统在嵌入式系统中通常设为只读arm嵌入式linux系统开发技术详解,须要使用mkcramfs、genromfs等工具形成烧录映像文件。
6.构建应用程序的Flashc盘分区?
通常使用JFFS2或YAFFS文件系统,这须要在内核中提供这种文件系统的驱动,有的系统使用一个线性Flash(NOR型)512KB~32MB,有的系统使用非线性Flash(NAND型)8~512MB,有的两个同时使用,须要依照应用规划Flash的分区方案。
7.开发应用程序?
应用程序可以装入根文件系统中,也可以装入YAFFS、JFFS2文件系统中,有的应用不使用根文件系统,直接将应用程序和内核设计在一起,这有点类似于μCOS-II的形式。
8.烧录内核、根文件系统、应用程序
9.发布产品
整理来自:时间的诗