Part04嵌入式Linux开发环境的搭建ppt课件.ppt

Part04嵌入式Linux开发环境的搭建ppt课件.ppt

ID:59415982

大小:73.00 KB

页数:41页

时间:2020-09-19

Part04嵌入式Linux开发环境的搭建ppt课件.ppt_第1页
Part04嵌入式Linux开发环境的搭建ppt课件.ppt_第2页
Part04嵌入式Linux开发环境的搭建ppt课件.ppt_第3页
Part04嵌入式Linux开发环境的搭建ppt课件.ppt_第4页
Part04嵌入式Linux开发环境的搭建ppt课件.ppt_第5页
资源描述:

《Part04嵌入式Linux开发环境的搭建ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式Linux开发环境的搭建【学习目标】●了解嵌入式Linux系统的移植了解Bootloader的原理掌握嵌入式交叉编译环境的搭建学会编译Linux内核学会搭建Linux的文件系统9/15/20211一、嵌入式Linux系统的移植二、Bootloader的构成原理三、嵌入式交叉编译环境的搭建四、Linux内核和文件系统的烧写五、Linux内核的配置和编译六、linux文件系统的搭建七、NFS文件系统的配置和使用9/15/20212一、嵌入式Linux系统的移植Linux操作系统的移植主要包括移植Bootloader、移植Linux内核、移

2、植相应的驱动程序和构建文件系统。9/15/20213嵌入式系统与主机的连接方式JTAG接口JTAG仿真器与主机连接,将引导程序固化到FLASH中。串口主机通过minicom或Windows超级终端等工具获得目标板程序运行、调试信息。网络一般采用NFS、TFTP等协议传输文件。USB主机为USB主设备端,目标板为USB从设备端,用于下载程序到目标板中。9/15/20214Windows超级终端的使用9/15/20215minicom的使用9/15/20216二、Bootloader的构成原理简单地说,Bootloader就是在操作系统内核运行

3、之前运行的一段程序,它类似于PC机中的BIOS程序。通过这段程序,可以完成硬件设备的初始化,并建立内存空间的映射关系,从而将系统的软硬件环境带到一个合适的状态,为最终加载系统内核做好准备。通常,Bootloader比较依赖于硬件平台,建立一个通用的Bootloader是一件比较困难的事情。9/15/20217Bootloader的操作模式(一)系统加电或者复位以后,CPU从厂家预设的某个地址上取指执行,Bootloader通常被固化在这个地址上。在嵌入式开发时,通常要使用各种命令操作Bootloader,一般使用串口来连接PC和开发板,通过

4、串口输入各种命令和观察运行结果。用户使用产品时,不需操作Bootloader。9/15/20218Bootloader的操作模式(二)启动加载(BootLoading)模式:上电后,Bootloader将操作系统从固态存储设备中加载到RAM中执行,用户不需介入操作。是最终产品发布的模式,也叫“自主”模式。下载(DownLoading)模式:开发人员使用各种命令,通过串口、网口、USB等方式从主机下载内核镜像和文件系统等,将其固化至固态存储设备。9/15/20219Bootloader的启动流程由于Bootloader的实现依赖于CPU的体系

5、结构,因此大多数Bootloader都分为Stage1和Stage2两大部分。依赖于CPU体系结构的代码,如设备初始化代码等,通常都放在Stage1中,而且通常都用汇编语言来实现,以达到短小精悍的目的。而Stage2则通常用C语言来实现,这样可以实现复杂的功能,而且代码具有更好的可读性和可移植性。9/15/202110Bootloader的启动流程-Stage1基本的硬件初始化,包括屏蔽所有的中断、设置CPU的速度和时钟频率、RAM初始化、初始化外围设备、关闭CPU内部指令和数据cache等。为加载stage2准备RAM空间,通常为了获

6、得更快的执行速度,通常把stage2加载到RAM空间中来执行,因此必须为加载Bootloader的stage2准备好一段可用的RAM空间。拷贝stage2到RAM中,在这里要确定两点:①stage2的可执行映像在固态存储设备的存放起始地址和终止地址;②RAM空间的起始地址。设置堆栈指针sp,这是为执行stage2的C语言代码做好准备。9/15/202111Bootloader的启动流程-Stage2用汇编语言跳转到main入口函数(blmain)由于stage2的代码通常用C语言来实现,目的是实现更复杂的功能和取得更好的代码可读性和可移植

7、性。但是与普通C语言应用程序不同的是,在编译和链接Bootloader这样的程序时,不能使用glibc库中的任何支持函数。初始化本阶段要使用到的硬件设备,包括初始化串口、初始化计时器等。在初始化这些设备之前、可以输出一些打印信息。检测系统的内存映射,所谓内存映射就是指在整个4GB物理地址空间中指出哪些地址范围被分配用来寻址系统的内存。加载内核映像和根文件系统映像,这里包括规划内存占用的布局和从Flash上拷贝数据。设置内核的启动参数。9/15/202112三、嵌入式交叉编译环境的搭建交叉开发模式就是指在主机上编辑、编译程序,然后在目

8、标板上运行、验证程序的过程。在裁减和定制Linux内核用于嵌入式系统之前,由于一般嵌入式开发系统的资源有限,通常都要在PC上建立一个用于目标机的交叉编译工具链,用该交叉编译工具链

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。