部署基于ARM的嵌入式Linux.pptx
《部署基于ARM的嵌入式Linux.pptx》由会员分享,可在线阅读,更多相关《部署基于ARM的嵌入式Linux.pptx(63页珍藏版)》请在咨信网上搜索。
1、1第四章部署基于ARM的嵌入式Linux系统v4.1嵌入式系统的软件组成及部署、启动过程v4.2移植的层次及内容v4.3Bootloader在ARM平台的移植v4.4Bootloader的启动过程v4.5Linux内核在ARM平台的移植v4.6Linux操作系统的启动过程v4.7Linux文件系统v4.8各个部分烧写方法v4.9总结24.1嵌入式系统的软件组成v嵌入式Linux系统从软件的角度通常可以分为5个层次,即:bootloader,Kernel,驱动程序,文件系统,应用程序34.1嵌入式系统的软件组成44.1嵌入式系统的部署过程v1烧写bootloader第1次烧写(新的没有任何内容的
2、flash):JTAG接口线连到PC并口上.第2,3,.烧写:网线或串口等方法v2烧写内核v3烧写根文件系统(可以把驱动程序和应用程序放在文件系统中)v4下载应用程序(也有可能把应用程序放在根文件系统的某个目录下,与根文件系统一齐烧写到flash)v详细烧写方法在后面介绍54.1嵌入式系统的启动过程Bootloader内核镜像文件image根文件系统镜像ramdisk其它文件系统Flash全局数据结构解压后内核代码内核镜像文件image根文件系统镜像ramdiskSDRAMentryaddrentry64.2移植的层次及内容v移植是指将软件从一个平台迁移到另一个平台,包括:从一个硬件平台移植到
3、另一个硬件平台从一个操作系统移植到另一个操作系统从一种软件库环境移植到另一个软件库环境74.2移植的层次及内容v软件进行移植的容易程度即可移植性,我们这里谈到的移植主要是从一个硬件平台到另一个硬件平台。v硬件平台的移植又分为以下几种:跨系统结构的移植跨处理器移植跨平台移植84.2移植的层次及内容v什么是跨系统结构移植?跨系统结构(跨构架architecture)就是从一种结构的处理器移植到另一种结构的处理器上。例如:X86ARM特点:移植工作量大,需要对底层做大量修改,例如内存管理,中断管理等94.2移植的层次及内容v什么是跨处理器移植?跨处理器移植(Processor)就是在同一种系统结构的
4、两种处理器间进行移植。例如:PXA255PXA270这种移植相对简单,只需要修改arch下和Include/arch下相应的代码。主要增加对外设的支持。104.2移植的层次及内容v什么是跨平台移植?跨平台移植(Platform)就是在使用相同处理器不同的外设的系统间进行移植。是最常用的移植方式,需要的改动很少,主要集中在外设的驱动程序上。114.2移植的层次及内容v本课程移植内容Bootloader的移植操作系统内核的移植124.3Bootloader在ARM平台的移植vBootloader介绍vBootloader的种类134.3.1Bootloader介绍vBootLoader指系统启动后
5、,在操作系统内核运行之前运行的一段小程序。通过BootLoader,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。144.3.1Bootloader介绍vBIOS的功能a.自检及初始化b.程序服务和设定中断vBIOS的类型vBIOS芯片的种类154.3.2Bootloader的种类vBootloader的种类viviPPC-BootU-boot164.3.2Bootloader的种类vVivi代码结构介绍Arch:此目录包括了所有vivi支持的目标板的子目录(这里只有s3c2410目录)drivers:其中包
6、括了引导内核需要的设备的驱动程序(MTD和串口)。MTD目录下分map、nand和nor三个目录。init:只有main.c(第2阶段执行代码)Lib:一些平台的公共的接口代码Include:头文件的公共目录,其中s3c2410.h定义了处理器的一些寄存器,以及Nandflash的一些寄存器.platform/smdk2410.h定义了与这块开发板相关的资源配置参数。174.3.3Bootloader的制作v以vivi为例对不同嵌入式处理器进行代码修改选项设置(根据不同的外部设备,如串口个数、存储器类型等)编译生成镜像文件184.4Bootloader的启动过程vvivi的运行分为两个阶段19
7、4.4Bootloader的启动过程vstage1通常包括以下步骤(完成含依赖于CPU的体系结构硬件初始化的代码,包括禁止中断、初始化串口、复制自身到RAM等。相关代码集中在head.S(viviarchs3c2410目录下):硬件设备初始化;为加载BootLoader的stage2准备RAM空间;拷贝BootLoader的stage2到RAM空间中;设置好堆栈;跳转到stage2的C入口点(/init/main.c)。详细见文档204.4Bootloader的启动过程vstage2通常包括以下步骤:初始化本阶段要使用到的硬件设备;检测系统内存映射(memorymap);将kernel映像和根
8、文件系统映像从flash上读到RAM空间中;为内核设置启动参数;调用内核。详细见文档214.5Linux内核在ARM平台的移植v4.5.1内核结构v4.5.2系统移植v4.5.3内核编译v4.5.4Linux内核调试224.5.1内核结构v(1)arch:包括硬件特定的内核代码,如arm、mips、i386等;v(2)drivers:包含硬件驱动代码,如char、cdrom、scsi、mtd等;v(3)include:通用头文件及针对不同平台特定的头文件,如asm-i386、asm-arm等;v(4)init:内核初始化代码;v(5)ipc:进程间通信代码;v(6)kernel:内核核心代码;
9、v(7)mm:内存管理代码;v(8)net:与网络协议栈相关的代码,如ipv4、ipv6、ethernet等;v(9)fs:文件系统相关代码,如nfs、vfat等;v(10)lib:库文件v(11)Documentation:文档234.5.2系统移植v(1)修改根目录下的Makefile文件a.指定目标平台为ARM:#ARCH:=$(shelluname-m|sed-es/i.86/i386/-es/sun4u/sparc64/-es/arm.*/arm/-es/sa110/arm/)ARCH:=armb.指定交叉编译器:CROSS_COMPILE=arm-linux-244.5.2系统移植
10、v(2)修改arch目录中的文件根据本章第一节可知,Linux的arch目录存放硬件相关的内核代码,因此,在Linux内核中增加对S3C2410的支持,最主要就是要修改arch目录中的文件。254.5.2系统移植va.在arch/arm/Makefile文件中加入:ifeq($(CONFIG_ARCH_S3C2410),y)TEXTADDR=0 xC0008000MACHINE=s3c2410Endif264.5.2系统移植vb.在archarmconfig.in文件中加入:if$CONFIG_ARCH_S3C2410=y;thencommentS3C2410Implementationdep
11、_boolSMDK(MERITECHBOARD)CONFIG_S3C2410_SMDK$CONFIG_ARCH_S3C2410dep_boolchangeAIJICONFIG_SMDK_AIJIdep_tristateS3C2410USBfunctionsupportCONFIG_S3C2410_USB$CONFIG_ARCH_S3C2100dep_tristateSupportforS3C2410USBcharacterdeviceemulationCONFIG_S3C2410_USB_CHAR$CONFIG_S3C2410_USBfi#/*CONFIG_ARCH_S3C2410*/274.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 部署 基于 ARM 嵌入式 Linux
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。