嵌入式Linux开发教程

上传人:y****n 文档编号:245244818 上传时间:2024-10-08 格式:PPT 页数:25 大小:255.63KB
返回 下载 相关 举报
嵌入式Linux开发教程_第1页
第1页 / 共25页
嵌入式Linux开发教程_第2页
第2页 / 共25页
嵌入式Linux开发教程_第3页
第3页 / 共25页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,厦门大学通讯工程系,郑灵翔,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,嵌入式Linux开发入门,郑灵翔,Agenda,嵌入式系统开发模式,嵌入式Linux系统的构成,主要任务与流程,利用Skyeye仿真开发板,开发板使用,嵌入式应用程序开发与调试,厦门大学通讯工程系,嵌入式系统开发模式,厦门大学通讯工程系,最小硬件系统,嵌入式Linux系统的构成,形成根文件系统,厦门大学通讯工程系,BootLoader和嵌入式Linux,构建嵌入式Linux系统的主要任务,内核部分,内核裁剪编译,底层驱动开发,应用程序部分,构建基本的嵌入式Linux文件系统,应用程序开发与移植,厦门大学通讯工程系,嵌入式Linux系统的开发流程,建立交叉编译环境,Bootloader开发,Linux内核的裁剪,构造根文件系统,驱动移植/开发,应用程序移植开发和调试,厦门大学通讯工程系,实验:用skyeye运行嵌入式Linux,下载skyeye测试包,运行嵌入式Linux,厦门大学通讯工程系,自已动手创建嵌入式Linux,工具链:arm-linux-gcc-3.x,http:/,内核,文件系统:busybox v 1.x,厦门大学通讯工程系,Linux内核裁减,系统类型设置,选择开发板类型,默认的内核命令行参数配置,Ramdisk设置,串口驱动配置,文件系统配置,网络驱动配置,其他驱动配置,厦门大学通讯工程系,指明启动内核加载镜像为可读写,rw,说明根文件系统所在的路径,root=,例:root=/dev/ram,强制指定用于启动内核时的所使用的内存数,mem=nnKMG,例:mem=64M,用于指定Initial Ramdisk的地址以及大小,initrd=initrd_start,size,例:initrd=0 xa1000000,0 x01000000,用于指定内核启动完成后第一个运行的init程序路径名,init=,例:init=/linuxrc,内核启动时打印输出消息的设备。ttyS表示使用第n个串口输出。选项(options)用于定义串口配置。默认配置是9600n8。,console=ttyS,options,例:,console=ttyS0,115200,默认的内核命令行参数配置,厦门大学通讯工程系,Linux内核裁减,DEMO,厦门大学通讯工程系,利用BusyBox构造根文件系统,根文件系统目录树结构,BusyBox简介,BusyBox编译与安装,构造根文件系统映像(将被加载为Initrd),SkyEye仿真,厦门大学通讯工程系,根文件系统目录树结构,目录,内容,/,顶层根目录。其它目录都在这个根目录下,/bin,基本命令可执行文件的存放位置,/,sbin,系统管理类命令可,执行文件的存放位置,/dev,dev 是设备(device)的英文缩写。这是个十分重要的目录。它包含了所有Linux系统中使用的外部设备文件。要注意的是这里的设备文件不是指设备的驱动程序,而是指访问外部设备的接口文件。,/,usr,用户应用程序和文档目录,/etc,这个目录下存放系统的配置文件。,/lib,lib是库(library)英文缩写。这个目录用于存放系统动态链接库。所有动态链接程序都要用到这个目录下的库文件。,/proc,这是Linux的一个特殊文件系统,主要用于存放内核及进程信息,/,tmp,临时文件目录,许多程序都需要用到此目录进行读写操作,/,var,系统日志和一些服务程序临时文件的存放目录,厦门大学通讯工程系,BusyBox简介,嵌入式Linux中,最常用的一个软件工具包。(,The Swiss Army Knife of Embedded Linux,),集成了100多条Linux常用命令,代码优化,生成的可执行文件的大小通常只有几百K字节。,支持多种体系结构,支持静态或动态链接,厦门大学通讯工程系,构造根文件系统映像,参见教材P131136(详述了所有实验操作步骤),6.3.3 Busybox与根文件系统的构造,步骤,配置,Busybox,编译安装,Busybox,构造根文件系统,创建根文件系统映像文件,DEMO,厦门大学通讯工程系,开发板使用,厦门大学通讯工程系,Linux下的串口终端minicom,厦门大学通讯工程系,U-boot使用,使用minicom连接开发板,设置环境变量(参见教材小节P138),setenv 变量名 变量值,setenv ethaddr 11:22:33:44:55:66,setenv ipaddr,setenv serverip,保存环境变量到flash,saveenv,厦门大学通讯工程系,加载内核,在PC机上启动tftp服务(参见教材P77),copy zImage,initrd到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=64M,PC机的NFS服务设置(P162),厦门大学通讯工程系,构建嵌入式Linux系统的主要任务,内核部分,内核裁剪编译,底层驱动开发,应用程序部分,构建基本的嵌入式Linux文件系统,应用程序开发与移植,厦门大学通讯工程系,嵌入式应用程序开发步骤,交叉编译,arm-linux-gcc,make CC=arm-linux-gcc,将应用程序加入文件系统,DEMO,厦门大学通讯工程系,嵌入式应用程序调试,PC机算法验证,嵌入式系统上利用gdbserver进行交叉调试,DEMO,厦门大学通讯工程系,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!