第uClinux在UP-NETARM平台上的移植教程文件.ppt 立即下载
2024-12-03
约1.7万字
约162页
0
1.1MB
举报 版权申诉
预览加载中,请您耐心等待几秒...

第uClinux在UP-NETARM平台上的移植教程文件.ppt

第uClinux在UP-NETARM平台上的移植教程文件.ppt

预览

免费试读已结束,剩余 157 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第12章uClinux在UP-NETARM3000平台上的移植		在Linux环境下,本章主要介绍了uClinux在UP-NETARM3000平台的移植过程。包括:
	◆uClinux源码下载方法和交叉编译工具的下载、生成方法。
	◆内核源码的修改、剪裁和编译过程。
	◆内核裁剪时的菜单选项的配置方法。
	◆内核及根文件系统的烧写过程。12.1UP-NETARM3000嵌入式教学开发平台介绍		该平台是基于S3C44B0X处理器,可以运行uC/OS-II和uClinux的系统。
		它由核心模块和扩展模块组成。
		核心模块包括3C44B0x嵌入式芯片、2MB线性引导Flash和8MBSDRAM;图12-1UP-NETARM3000嵌入式教学开发平台12.2uClinux在UP-NETARM3000上的移植		其基本内容是:获取某一版本的Linux内核源码,根据具体目标平台对这源码进行必要的改写(主要是修改体系结构相关部分),然后添加一些外设的驱动,打造一款适合于自己目标平台(可以是嵌入式便携设备也可以是其它体系结构的PC机)的新操作系统,对该系统进行针对目标平台的交叉编译,生成一个内核映象文件,最后把该映象文件烧写(安装)到目标平台中。		而通常对Linux源码的改写工作难度较大,它要求不仅对Linux内核结构要非常熟悉,还要求对目标平台的硬件结构要非常熟悉。
		同时还要求对相关版本的汇编语言较熟悉,因为与体系结构相关的部分源码往往是用汇编写的,所以这部分工作一般由目标平台提供商来完成。		比如说针对目前嵌入式系统中最流行的ARM平台,它的这部分工作就是由英国ARM公司的工程师完成的,我们所要做的就是从其网站上下载相关版本Linux内核的补丁(Patch)。
		把它打到目标平台的Linux内核上,再进行交叉编译就行。其基本过程如下(以Linux2.6.0为例):	1.到ftp://ftp.arm.linux.org.uk上下载Linux2.6.0内核及其关于ARM平台的补丁(如:Patch-2.6.0-rmk1.gz)。
	2.给Linux2.6.0打补丁:zcat../patch-2.6.0-rmk1.gz|patch–p1(前面../表示补丁文件放在内核文件上一层目录)。	3.准备交叉编译环境。
		交叉编译环境工具链一般包括binutils(含AS汇编器,LD链接器等),arm-gcc,glibc等。
		交叉编译环境的搭建也是个复杂的过程,后面我将做进一步介绍。有兴趣可以一起交流(khflowerstone@126.com)。	4.修改内核目录下的makefile文件,主要是以下几行:
	①注释掉ARCH:=$(shelluname–m|sed–es/i.86/i386/-es/sun4u/sparc64/-es/arm.*/arm/-es/sa110/arm/)这一行;
	②ARCH?=改为ARCH=arm;	③CROSS_COMPILE?=改为CROSS_COMPILE=你的交叉编译工具中arm-linux所在目录/arm-linux-。
	5.此后就可以进行编译。12.2.2关于交叉编译环境		这里主要用到的编译器是arm-gcc,它是gcc的arm改版。目前Linux操作系统主要是以GCC模式进行移植的。
		GCC输出的是汇编语言程序,如果我们想要进一步编译成我们想要的机器代码,则还需要汇编器等的协助。		GNU工具链中通常包含GNUBinutils,GNUGCC,GNUGLibc。Binutils中主要包含链接器ld和汇编器as。
		GNUGLibc提供了一个C库,使得系统能完成基本的系统调用及其它的一些函数调用。下面介绍一下GCC交叉编译器的生成过程。步骤如下:	1.取得Binutils、GCC、Glibc的源码
		可以到相关网站去获得,并把这三个文件解压到你自己的目录如:/toolchain/gcc,/toolchain/bu,/toolchain/glibc,2.配置并编译Binutils,得到汇编器和连接器
		在配置Binutils之前先把Linux内核中GCC所必需的头文件拷到GCC可以找到的目录。如下操作:
		cp–drinclude/asm-arm	/toolchain/gcc/arm-linux/include/asm
		cp–drinclude/linux/toolchain/gcc/arm-	linux/include/linux	然后进入Binutils目录:
	./configure--target=arm-linux--prefix=/toolchain/bu
	makeLANGUAGES=”C”
	makeinstall3.配置并编译GCC源代码,生成GCC编译器
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

第uClinux在UP-NETARM平台上的移植教程文件

文档大小:1.1MB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用