Linux在ARM上的移植.ppt
《Linux在ARM上的移植.ppt》由会员分享,可在线阅读,更多相关《Linux在ARM上的移植.ppt(29页珍藏版)》请在三一文库上搜索。
1、2019/3/3,第1页,Linux在ARM上的移植,一、什么是移植? 二、Linux内核代码 三、Linux内核编译,2019/3/3,第2页,一、什么是移植?,移植就是让一个平台的代码能够在其它平台上运行。 将Linux运行在ARM上,即称为Linux在ARM上的移植。 移植大致分3个层次:体系结构、处理器和板级移植。 通常所说的移植指的是Linux内核移植,而不是发行版本的移植。,2019/3/3,第3页,一、什么是移植?,将Linux移植到ARM的前提:熟悉Linux系统运行机理、熟悉Linux内核代码结构、掌握ARM体系结构、目标处理器、目标系统相关、掌握GNU汇编和C编程以及Lin
2、ux下脚本编程。 通常仅需要作板级移植,有必要时进行处理器级移植。 参考现有的移植。,2019/3/3,第4页,二、Linux内核代码,Linux内核由进程管理、内存管理、文件系统、网络接口、进程间通信、设备驱动等模块组成。 Linux内核代码包含这些目录: arch Documentation include kernel scripts drivers init lib mm fs ipc net,2019/3/3,第5页,二、Linux内核代码,/arch目录包含各体系结构特定的代码,如ARM、i386、PPC、MIPS等。* /Documentation目录存放相关说明文档。 /inc
3、lude目录存放相关头文件。* /kernel目录包含Linux内核管理代码 /srcipts目录存放一些脚本文件 /drivers目录包含Linux内核所有设备驱动,2019/3/3,第6页,二、Linux内核代码,/init目录包含内核初始化代码 /lib目录包含一些库文件 /mm目录存放内存管理代码 /fs目录存放所有文件系统代码 /ipc目录存放进程间通信代码 /net目录存放网络相关代码,2019/3/3,第7页,二、Linux内核代码,/arch目录包含各体系结构特定的代码,在每个体系结构目录下都有: boot 内核需要的特定平台代码 kernel 体系结构特有的代码 lib 通用
4、函数在特定体系结构的实现 math-emu 模拟FPU的代码,在ARM 中,使用mach-xxx代替* mm 特定体系结构的内存管理实现,2019/3/3,第8页,二、Linux内核代码,/include目录存放体系结构特定的头文件,里面包含如asm-arm、asm-i386等目录,在其中才存放相关头文件。*,2019/3/3,第9页,二、Linux内核移植,Linux在ARM上的移植涉及目录和文件 /根目录:Makefile文件 /arch/arm目录:Makefile、config.in文件 /arch/arm/boot目录:Makefile文件 /arch/arm/boot/compre
5、ssed目录:Makefile、head-xxx.S文件,2019/3/3,第10页,二、Linux内核移植,Linux在ARM上的移植涉及目录和文件 /arch/arm/kernel目录:Makefile、debug-armv.S、entry-armv.S、setup.c /arch/arm/mm目录:mm-armv.c文件 其它目录如/arch/arm/def-configs目录,用于存放目标板的默认配置等。,2019/3/3,第11页,二、Linux内核移植,/根目录Makefile文件 修改该Makefile文件,指定目标平台和交叉编译器。 指定ARCH=目标平台 移植前:#ARCH
6、:= $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/) 移植后:ARCH := arm,2019/3/3,第12页,二、Linux内核移植,/根目录Makefile文件 指定交叉编译器: 指定CROSS_COMPILE=交叉编译器 移植前:CROSS_COMPILE = 移植后:CROSS_COMPILE = arm-linux- 指定使用arm-linux-gcc交叉编译器,2019/3/3,第13页,二、Linux内核移植,/arch/arm目录Makefi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux ARM 移植
链接地址:https://www.31doc.com/p-2202087.html