最新天祥ARM视频TXA全部课件第三部分共四个部分ppt课件.ppt
《最新天祥ARM视频TXA全部课件第三部分共四个部分ppt课件.ppt》由会员分享,可在线阅读,更多相关《最新天祥ARM视频TXA全部课件第三部分共四个部分ppt课件.ppt(56页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、天祥天祥ARM视频视频TXA全部课件全部课件第三部分共四个部分第三部分共四个部分 出品:天祥电子出品:天祥电子网址:网址:第十三讲第十三讲第十三讲第十三讲 bootloaderbootloader原理和原理和原理和原理和vivivivi的移植的移植的移植的移植vivi的启动过程分析的启动过程分析 Bootloader的启动过程大多是分两个阶段,即stage1和stage2。依赖CPU体系结构的代码通常放在stage1中,而且通常用汇编语言实现。stage2中的代码通常用C语言实现,这样可以实现更复杂的功能,而且代码会具有更好的可读性和可移植性。vivi的启动过程分析的启动过程分析Bootloa
2、der的stage1通常包括以下步骤:1、硬件设备初始化 2、为加载stage2准备RAM空间 3、复制stage2到RAM空间 4、设置好堆栈 5、跳转到stage2的C入口点vivi的启动过程分析的启动过程分析Bootloader的stage2通常包括以下步骤:1、初始化本阶段要用到的硬件设备 2、检测系统内存映射 3、将kernel映像和根文件系统映像从 Flash上读到RAM空间 4、为内核设置启动参数 5、调用内核第五部分第五部分 嵌入式系统移植嵌入式系统移植 -BootloaderTX-2440A 嵌入式视频教程嵌入式视频教程 出品:天祥电子出品:天祥电子网址:网址:第十四讲第十四
3、讲第十四讲第十四讲 U-BootU-Boot原理分析和移植原理分析和移植原理分析和移植原理分析和移植1.U-Boot1.U-Boot简介简介2.U-Boot2.U-Boot源码目录结构源码目录结构3.U-Boot3.U-Boot运行代码分析运行代码分析4.U-Boot4.U-Boot在在TX2440ATX2440A开发板上移植开发板上移植5.U-Boot5.U-Boot常用命令讲解常用命令讲解第十四讲第十四讲第十四讲第十四讲 U-BootU-Boot原理分析和移植原理分析和移植原理分析和移植原理分析和移植U-Boot 简介简介 UBoot是德国DENX小组的开发用于多种嵌入式CPU的bootl
4、oader程序,UBoot不仅仅支持嵌入式Linux系统的引导,当前,它还支持NetBSD,VxWorks,QNX,RTEMS,ARTOS,LynxOS嵌入式操作系统。UBoot除了支持PowerPC系列的处理器外,还能支持MIPS、x86、ARM、NIOS、XScale等诸多常用系列的处理器。ubootuboot下载地址:下载地址:ftp:/ftp.denx.de/pub/u-boot/ftp:/ftp.denx.de/pub/u-boot/U-BootU-Boot源码目录结构源码目录结构1.board:开发板相关目录mon:通用的命令函数3.cpu:特定CPU架构相关目录,如arm920t
5、4.doc:uboot的开发、使用文档5.drivers:uboot支持的设备驱动程序,比如串口,nandflash,网卡6.fs:支持的文件系统,Uboot现在支持cramfs、fat、fdos、jffs2和registerfs。U-BootU-Boot源码目录结构源码目录结构7.include:头文件和开发板配置文件,configs目录下是开发板的配置文件8.lib_xxxx:与体系结构相关的库文件。如与ARM相关的库放在lib_arm中。9.lib_generic:通用的库函数:各种网络协议,TFTP协议、NFS协议等。11.tools:uboot自带的工具U-BootU-Boot第一阶
6、段启动过程第一阶段启动过程cpu/arm920t/start.s cpu/arm920t/start.s 完成硬件初始化完成硬件初始化 设置CPU工作模式 关看门狗 设置系统时钟 关MMU,CACHE 为第二阶段准备RAM空间 (调用board/smdk2410/lowlevel_init.s)设置堆栈 跳转到第二阶段代码的C入口点 (lib_arm/board.c start_armboot())U-BootU-Boot第二阶段启动过程第二阶段启动过程第二阶段代码:第二阶段代码:lib_arm/board.clib_arm/board.c中的中的start_armbootstart_armb
7、oot函数函数 init_sequence:初始化CPU,设置系统时钟,初始化定时器,初始化环境参数,初始化串口控制台,检测内存映射flash_init:初始化NORFLASHenv_relocate:初始化环境变量初始化系统外围设备最后调用main_loop(command/main.c)第六部分第六部分 嵌入式系统移植嵌入式系统移植 -Linux内核内核TX-2440A 嵌入式视频教程嵌入式视频教程 出品:天祥电子出品:天祥电子网址:网址:第十五讲第十五讲 Linux内核分析和配置内核分析和配置1.1.内核源码目录结构分析内核源码目录结构分析2.Makefile2.Makefile,Kco
8、nfigKconfig文件分析文件分析3.Linux3.Linux启动过程分析启动过程分析4.4.配置、编译内核配置、编译内核第十五讲第十五讲 Linux内核分析和配置内核分析和配置Linux内核的发展内核的发展Linux内核的最初版本由Linus Torvalds在1991年发布Linux1.0 1994年3月 仅支持386Linux1.2 1995年3月 多平台支持Linux2.0 1996年6月 支持SMPLinux2.2 1999年1月 支持更多的硬件Linux2.4 2001年1月 支持桌面系统和USBLinux2.6 2003年12月 支持更多平台,使用新的调度器,内核可被抢占,模
9、块子系统和文件系统做了大量改进,支持更多的硬件驱动。Linux内核的版本内核的版本内核源码的官方网址:内核源码的官方网址:www.kernel.orgwww.kernel.org 但这里可用的内核版本并不总是适用于所有的Linux支持 的体系结构。实际上,这个站点的内核首先确保的是在Intel x86体系结构上可以正常运行 要取得目标板可用的内核,必须找到专门负责开发相应处理器架构的团队所提供的内核版本。ARMARM体系结构的源码网址:体系结构的源码网址:www.arm.linux.org.uk/developer www.arm.linux.org.uk/developerLinux内核的版
10、本内核的版本目前TX2440A开发板上使用的内核版本:2.6.31在内核源码顶层目录下Makefile中查看版本号:VERSION=2 主版本号 PATCHLEVEL=6 主版本号 SUBLEVEL=31 次版本号 EXTRAVERSION=扩展版本号内核源码目录结构分析内核源码目录结构分析archarch 与体系结构相关的代码。对应于每个支持的体系结构,有一个相应的子目录如x86、arm等,每个体系结构子目录下包含几个主要子目录:.boot 启动内核所需的平台特有代码 .kernel 体系结构特有特征(如SMP)的实现 .mm与体系结构相关的内存管理代码 .lib与体系结构相关的通用函数的实
11、现内核源码目录结构分析内核源码目录结构分析driversdrivers 所有设备驱动程序代码,它占整个内核代码量一半以上,每一个子目录对应一类驱动程序。fsfs 文件系统代码,每个支持的文件系统有相应的子目录,如cramfs,yaffs,jffs2等includeinclude包括编译内核所需的大部分头文件,与平台无关的头文件放在include/linux子目录下,平台相关的头文件如include/asm-arm内核源码目录结构分析内核源码目录结构分析init init 内核初始化代码kernel kernel 内核管理核心代码lib lib 库函数代码Mm Mm 内存管理代码net net
12、网络支持代码sound sound 音频设备驱动代码scripts scripts 用于配置内核的脚本文件documentation documentation 内核相关文档内核配置内核配置系统的基本结构系统的基本结构MakefileMakefile:分布在Linux内核源码中的Makefile定义了Linux内核编译的规则;配置工具:配置工具:make config 字符界面 make menuconfig Ncurses图形界面 make xconfig Xwindows图形界面配置文件:配置文件:.config:在配置内核时生成,根据.config来决定使用哪些MakefileMakef
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 ARM 视频 TXA 全部 课件 第三 部分 四个 ppt
限制150内