《嵌入式Linux开发教程.ppt》由会员分享,可在线阅读,更多相关《嵌入式Linux开发教程.ppt(25页珍藏版)》请在三一办公上搜索。
1、嵌入式Linux开发入门,郑灵翔,厦门大学通讯工程系,Agenda,嵌入式系统开发模式嵌入式Linux系统的构成主要任务与流程利用Skyeye仿真开发板开发板使用嵌入式应用程序开发与调试,厦门大学通讯工程系,嵌入式系统开发模式,最小硬件系统,厦门大学通讯工程系,嵌入式Linux系统的构成,形成根文件系统,BootLoader和嵌入式Linux,厦门大学通讯工程系,构建嵌入式Linux系统的主要任务,内核部分内核裁剪编译底层驱动开发应用程序部分构建基本的嵌入式Linux文件系统应用程序开发与移植,厦门大学通讯工程系,嵌入式Linux系统的开发流程,建立交叉编译环境 Bootloader开发Lin
2、ux内核的裁剪构造根文件系统 驱动移植/开发应用程序移植开发和调试,厦门大学通讯工程系,实验:用skyeye运行嵌入式Linux,下载skyeye测试包运行嵌入式Linux,厦门大学通讯工程系,自已动手创建嵌入式Linux,工具链:arm-linux-gcc-3.xhttp:/内核文件系统:busybox v 1.x,厦门大学通讯工程系,Linux内核裁减,系统类型设置 选择开发板类型 默认的内核命令行参数配置Ramdisk设置串口驱动配置文件系统配置网络驱动配置其他驱动配置,厦门大学通讯工程系,默认的内核命令行参数配置,厦门大学通讯工程系,Linux内核裁减,DEMO,厦门大学通讯工程系,利
3、用BusyBox构造根文件系统,根文件系统目录树结构BusyBox简介BusyBox编译与安装构造根文件系统映像(将被加载为Initrd)SkyEye仿真,厦门大学通讯工程系,根文件系统目录树结构,厦门大学通讯工程系,BusyBox简介,嵌入式Linux中,最常用的一个软件工具包。(The Swiss Army Knife of Embedded Linux)集成了100多条Linux常用命令代码优化,生成的可执行文件的大小通常只有几百K字节。支持多种体系结构,支持静态或动态链接,厦门大学通讯工程系,构造根文件系统映像,参见教材P131136(详述了所有实验操作步骤)6.3.3 Busybox
4、与根文件系统的构造步骤配置Busybox编译安装Busybox构造根文件系统创建根文件系统映像文件DEMO,厦门大学通讯工程系,开发板使用,厦门大学通讯工程系,Linux下的串口终端minicom,厦门大学通讯工程系,U-boot使用,使用minicom连接开发板设置环境变量(参见教材小节P138)setenv 变量名 变量值setenv ethaddr 11:22:33:44:55:66setenv ipaddrsetenv serverip保存环境变量到flashsaveenv,厦门大学通讯工程系,加载内核,在PC机上启动tftp服务(参见教材P77)copy zImage,initrd到
5、tftp目录通过minicom(串口终端)控制开发板,利用u-boot加载内核和initrd,厦门大学通讯工程系,NFS文件系统,内核设置(参见小节P161)内核命令行(P128,162)root=/dev/nfs nfsroot=192.168.0.1:/nfsroot ip=192.168.0.2:192.168.0.1:192.168.0.1:255.255.255.0:eth0:rw console=ttyS0,115200 mem=64MPC机的NFS服务设置(P162),厦门大学通讯工程系,构建嵌入式Linux系统的主要任务,内核部分内核裁剪编译底层驱动开发应用程序部分构建基本的嵌入式Linux文件系统应用程序开发与移植,厦门大学通讯工程系,嵌入式应用程序开发步骤,交叉编译arm-linux-gccmake CC=arm-linux-gcc将应用程序加入文件系统DEMO,厦门大学通讯工程系,嵌入式应用程序调试,PC机算法验证嵌入式系统上利用gdbserver进行交叉调试DEMO,