- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式Linux开发入门 郑灵翔 lxzheng@ Agenda 嵌入式系统开发模式 嵌入式Linux系统的构成 主要任务与流程 利用Skyeye仿真开发板 开发板使用 嵌入式应用程序开发与调试 嵌入式系统开发模式 最小硬件系统 嵌入式Linux系统的构成 BootLoader和嵌入式Linux 构建嵌入式Linux系统的主要任务 内核部分 内核裁剪编译 底层驱动开发 应用程序部分 构建基本的嵌入式Linux文件系统 应用程序开发与移植 嵌入式Linux系统的开发流程 建立交叉编译环境 Bootloader开发 Linux内核的裁剪 构造根文件系统 驱动移植/开发 应用程序移植开发和调试 实验:用skyeye运行嵌入式Linux 下载skyeye测试包 运行嵌入式Linux 自已动手创建嵌入式Linux 工具链:arm-linux-gcc-3.x /download/projects/toolchain/ 内核:linux-2.6.x /pub/linux/kernel/v2.6/ 文件系统: busybox v 1.x Linux内核裁减 系统类型设置 选择开发板类型 默认的内核命令行参数配置 Ramdisk设置 串口驱动配置 文件系统配置 网络驱动配置 其他驱动配置 默认的内核命令行参数配置 Linux内核裁减 DEMO 利用BusyBox构造根文件系统 根文件系统目录树结构 BusyBox简介 BusyBox编译与安装 构造根文件系统映像(将被加载为Initrd) SkyEye仿真 根文件系统目录树结构 BusyBox简介 嵌入式Linux中,最常用的一个软件工具包。(The Swiss Army Knife of Embedded Linux ) 集成了100多条Linux常用命令 代码优化,生成的可执行文件的大小通常只有几百K字节。 支持多种体系结构,支持静态或动态链接 构造根文件系统映像 参见教材P131~136(详述了所有实验操作步骤) 6.3.3 Busybox与根文件系统的构造 步骤 配置Busybox 编译安装Busybox 构造根文件系统 创建根文件系统映像文件 DEMO 开发板使用 Linux下的串口终端minicom U-boot使用 使用minicom连接开发板 设置环境变量(参见教材6.4.2小节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文件系统 内核设置(参见6.6.3小节P161) 内核命令行(P128,162) root=/dev/nfs nfsroot=:/nfsroot ip=:::::eth0: rw console=ttyS0,115200 mem=64M PC机的NFS服务设置(P162) 构建嵌入式Linux系统的主要任务 内核部分 内核裁剪编译 底层驱动开发 应用程序部分 构建基本的嵌入式Linux文件系统 应用程序开发与移植 嵌入式应用程序开发步骤 交叉编译 arm-linux-gcc make CC=arm-linux-gcc 将应用程序加入文件系统 DEMO 嵌入式应用程序调试 PC机算法验证 嵌入式系统上利用gdbserver进行交叉调试 DEMO * * 形成根文件系统 指明启动内核加载镜像为可读写 rw 说明根文件系统所在的路径 root=dev 例:root=/dev/ram 强制指定用于启动内核时的所使用的内存数 mem=nn[KMG] 例:mem=64M 用于指定Initial Ramdisk的地址以及大小 initrd=initrd_start[,size] 例:initrd=0xa1000000, 0用于指定内核启动完成后第一个运行的init程序路径名 init=full_path 例:init=/linuxrc 内核启动时打印输出消息的设备。ttySn表示使用第n个串口输出。选项(options)用于定义串口配置。默认配置是9600n8。 console=ttySn[,options] 例:console=ttyS0, 115200 用户应用程序和文档目录 /usr 系统管理类命令可执行文件的存放位置 /sbin 系统日志和一些服务程序临时文件的存放目录 /var 临时文件目录,许多程序都需要用到此目录进行读写操作 /t
您可能关注的文档
最近下载
- 北京市2023-2024学年高一上学期期中考试数学试题含答案.docx VIP
- PLM模型介绍[共83页].pdf
- 【行业研报】2023年太古地产行业企业战略规划方案及未来五年行业预测报告.docx
- 曼陀罗绘画疗愈减压公开课.pptx VIP
- 钙钛矿晶硅叠层太阳能电池的研究进展.PDF VIP
- 铁路损伤图谱PDF.doc VIP
- 中英文对照 MDCG-2021-24 Guidance on classification of medical devices-医疗器械分类指南.pdf
- 小学数学六年级上册期末测试卷带答案(实用).docx
- 《开展经典诵读,营造书香校园的实践探究》课题研究报告.doc
- 小学四年级上册生字听写(人教版).pdf
文档评论(0)