- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式linux系统移植基本知识教程
系统移植第一天
系统移植重点掌握的内容
搭建交叉开发环境
移植Bootloat
移植kernel
根文件系统的制作
第一天要掌握的
配置交叉工具链和基本命令使用
制作SD卡启动盘(未完成)
搭建tftp服务器
搭建Nfs服务器
烧写uboot(未完成)
用nfs方式启动开发板跑linux(未完成)
嵌入式系统的应用领域
工业控制:工控设备、智能仪表、汽车电子、电子农业等
消费电子:信息家电、智能玩具、通信设备、移动存贮、视频监控等
医务医疗:医疗电子
军事国防:军事电子
网络设备和电子商务
嵌入式系统的定义
一般定义:以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统
广义定义:凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统
通用嵌入式系统硬件组成部分
微控制器 2、晶振 3、内存(如:SRAM,SDRAM)
4存储器(如:ROM, FLASH, SD, 微硬盘)
其他外围设备接口 6、输入、输出接口
通用嵌入式系统软件组成部分
无OS嵌入式系统由应用层、驱动层和硬件层组成
有OS嵌入式系统由Applications、kernel、Driver、H/W组成
嵌入式系统LINUX交叉开发环境硬件基本组成
开发主机
目标机
连接介质
搭建嵌入式LINUX开发主环境的要工作
准备开发主机-目标机(开发板)以及二者连接介质
准备目标机代码
安装交叉工具链
开发主机上安装的软件(为方便调试)
终端软件(putty、minicom)
Tftp服务
Nfs服务
其他工具软件dnw等
为什么需要交叉编译
背景条件
嵌入式系统硬件资源限制
CPU 主频、内存容量
嵌入式系统MCU体系结构和指令集不同
ARM, MIPS, POWERPC
提高开发效率
交叉编译
在开发主机运行编译器编译内核、应用程序。内核和程序在目标机上运行
这个编译过程成为交叉编译。
*编译器运行在开发主机(通常是X86体系的PC机)上,编译出的代码是
目标机体系结构的,如:ARM
在主机除了编译还可以完成制作根文件系统的工作
嵌入式系LINUX开发,交叉编译使用开源GUN工具,gcc等。
Readelf
readelf可以显示elf软件格式执行文件信息。ELF格式是UNIX系统实验室作
为应用程序二进制接口开发的。ELF格式是UNIX/Linux平台上应用最广泛的
二进制工业标准之一。
Binutils
as
主要用来编译gcc输出的汇编文件,产生的目标文件由连接器ld连接
As -0 hello.ohello.s生成目标文件
size
列出目标文件每一段的大小以及总体的大小。
Size a.out
Size有两种输出格式,一种为”sysv”,另一种为”berkeley”,默认berkeley的格式
第一种格式以用“-A“或者—format=sysv指定,第二种格式用”-B“或”—format=
Berkeley指定“
Size a.out–A size a.out–B
nm
nm可以列出目标文件中的符号。用法虽然简单,但功能很强大
nm可以列出的符号:R 只读符号。 N调试符号 D已经初始化变量的符号。
T text段的符号,子程序都是这种符号。 U 未定义的符号。例如文件中不存在的函数。 c 未初始化的符号,比如定义了一个全局变量int a; 则a的符号就是这种类型。Libsupc++ 提供支持C++语言的库函数
strip
strip用来丢弃目标文件中的全部内容或者特定符号,减小文件体积。对于嵌入式系统,这个命令必不可少。
Stip使用
经过strip处理后的文件已经不包含符号了,可以使用nm加以验证
strings
strings用来打印某个文件的可打印字符串。
Strings hello.o
Strings –f nmdemo.o
objdup
objdump可以显示一个或者更多目标文件的信息,主要用来反汇编
objdump –d nmdemo.o
Objdump使用
-R 选项显示动态重定向的入口objdump –R hello
objcopy
objcopy可以进行目标文件格式的转换
objcopy -–gap-fill-=0xff –O srec u-boot u-boot.srec
objcopy -–gap-fill=0xff –O binary u-boot u-boot.bin
addr2line能够把程序地址转换为文件名和行号,前提是这个可执行文件包括调试符号。
如果可执行文件中没有调试符号,shell将返回??:0.
最常用的选项是“-e”用来指定文件名和地址
Gcc –o test –Wl,-Map=test.map –g test.c
Grep main te
您可能关注的文档
- 复旦 周小林 信息论 2.信源与信息熵.ppt
- 复古欧式演示模板.pptx
- 岩石的本构关系和强度(公式)教程.ppt
- 复礼(上课).ppt
- 复旦 周小林 信息论 6.信道编码.ppt
- 基础心理学3.2.ppt
- 岭南版美术四年级神秘的图腾柱教程.ppt
- 外刊精读(十):Could a Lack of Water Cause Wars.docx
- 夏季饮品市场调研.ppt
- 声律启蒙六麻.ppt
- 江苏省灌云高级中学2023-2024学年高三上学期第一次月考地理试题含答案.docx
- 备战2024年高考物理一轮重难点复习 第十三章 近代物理.docx
- 江苏省高邮市一中2021-2022学年高三上学期第一次月考语文试题(原卷版).docx
- 江苏省华罗庚中学2023-2024学年高三上学期12月阶段检测数学试卷含答案.docx
- 江苏省海门中学2023-2024学年高三上学期第一次调研考试地理试题及答案.docx
- 备战2024年高考物理一轮重难点复习 第九章 恒定电流.docx
- 江苏省高邮市2023-2024学年高三下学期3月学情调研数学试题含答案.docx
- 备战2024年高考物理一轮重难点复习 实验十一:探究影响感应电流方向的因素.docx
- 备战2024年高考物理一轮重难点复习 实验三:验证平行四边形定则.docx
- 备战2024年高考物理一轮重难点复习 第十四章 光.docx
最近下载
- 2024年“民用无人机及多旋翼无人机”驾驶员操控员技能与理论知识考试题库含答案.docx
- 大班上册-健康-害怕不可怕.ppt VIP
- FloEFD 2312(For NX)软件实例教程 第5章.pdf VIP
- RCS-915调试大纲及使用说明.pdf
- (统编版2024)2024-2025学年七年级语文上册:2《济南的冬天》课件(共44张PPT).pptx VIP
- 明式家具对现代家具的影响.ppt VIP
- 内镜粘膜下剥离术.ppt
- 成都市防汛应急预案.doc
- GBT 27930-2015 电动汽车非车载传导式充电机与电池管理系统之间的通信协议.docx
- 第一单元第一课《新东北风》(课件)湘艺版(2012)音乐五年级上册.pptx
文档评论(0)