




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
英文专业资料翻译英文专业资料翻译英文专业资料翻译英文专业资料翻译英文资料题目英文资料题目英文资料题目英文资料题目RUNNINGLINUXONARMDEVELOPMENTPLATFORMS英文资料来源英文资料来源英文资料来源英文资料来源HTTP/WWWARMCOM中文译文题目中文译文题目中文译文题目中文译文题目在在在在ARMARM开发平台上运行开发平台上运行开发平台上运行开发平台上运行LINUXLINUX专专专专业业业业自动化自动化自动化自动化姓姓姓姓名名名名学学学学号号号号指导教师指导教师指导教师指导教师二OO八年六月十六日在在在在ARM开发平台上运行开发平台上运行开发平台上运行开发平台上运行LINUX2007年1月摘要摘要摘要摘要这篇文档介绍了怎样在基于ARM的开发平台上安装和运行LINUX的步骤,包括安装BOOTLOADER,内核和文件系统镜像。这篇文档并不打算成为关于开发与建立LINUX系统的完全手册,在开源社区里已经有大量可获得的关于这方面的信息,开源论坛也提供了许多有价值的信息。请参考ARMLINUX的维客网站(WWWLINUXARMORG或者WWWARMCOM/LINUX来获得更多信息。索引索引索引索引1安装预先编译好的镜像2BOOTLOADER3LINUX内核4文件系统5编译工具51交叉编译52二进制兼容性6UCLINUX7附加注意事项1安装预先编译好的镜像安装预先编译好的镜像安装预先编译好的镜像安装预先编译好的镜像镜像文件可以通过比如ARMREALVIEWICE这样的调试器安装到闪存上,这种调试器通过JTAG运行控制器与开发板相连。ARMREALVIEWRINTEGRATOR的开发板使用ARMFLASHUTILITY由板子提供来烧写镜像(比如AFUAXF,在调试器中运行工具AFUPROGRAM1UBOOTC/TMP/UBOOTBINLOWESTAVAILABLEFLASHATLOCATION0X24440000BLOCKB30PROGRAMMINGBLOCKB30ARMREALVIEWVERSATILEPB,AB926EJS通过调试器运行由开发提供的BOOTMONITORAXF程序来烧写镜像。程序上有几个关于烧写ELF格式或者是二进制格式的选项菜单。为了通过闪存运行程序你应该按照如下烧写ELF格式的镜像到闪存FLASHWRITEIMAGEC/TMP/UBOOTAXFNAMEUBOOTREALVIEWVERSATILES提供了一个叫做“NETWORKFLASHUTILITYNFU”的附加的闪存烧写工具。这个工具能够通过以太网连接来烧写镜像到闪存。为了从一个IP已知(比如19216801的服务器下载并烧写一个UBOOT镜像文件到闪存,你可以使用如下命令序列MANAGEDHCPCSTARTMANAGEMAPN19216801FLASHWRITEIMAGEN/UBOOTAXF请参考你的REALVIEWVERSATILE系列光盘中提供的文档来获得更多的信息和精确的语法。在烧写其他镜像文件内核与CRAMFS文件系统的时候可以使用类似的过程。这些镜文件应当按照二进制格式烧写而不是按照ELF格式烧写。更多的信息请参考随开发板所提供的固件文档。2BOOTLOADERUBOOT是REALVIEWINTEGRATOR与VERSATILE版本的启动加载器。可以通过WWWSOURCEFORGENET/PROJECTS/UBOOT/来获取源代码和文档。UBOOT预期是在ARM板子上内存的的0X0100000地址处开始运行。提供的镜像可以通过一个调试器加载而从这个地址上运行。REALVIEWINTEGRATOR原始二进制文件(或者是ELF文件可以在闪存的开始处被替换并当作默认的镜像而被执行。REALVIEWVERSATILE你应当使用ELF文件直接从闪存运行,或者从内存加载和运行原始的二进制文件。为了编译UBOOT你需要从上述网站上下载源代码的发行版本。对REALVIEWINTEGRATOR与VERSATILE的支持已经加入了UBOOTCVS/GIT的软件仓库。在写这篇文档的时候附加的补丁或许已经应用上了,如果有的话,这些补丁应当被列出在对外公布的邮件列表上源代码可以从HTTP/WWWARMCOM/LINUX/LINUX_DOWNLOADHTML获得。一旦你已经解压源码,你需要设置并编译BOOTLOADER。你可以从MAKEFILE的上面部分来参考所有的目标列表。为了设置与编译BOOTLOADER你应当执行下列命令REALVIEWINTEGRATOR/CPMAKEINTEGRATORCP_CONFIGMAKEREALVIEWVERSATILEMAKEVERSATILEAB_COFIGMAKE编译出的可执行文件二进制或者是ELF格式被放置在最顶层的目录。为了编码传递给LINUX内核的默认的命令行参数和默认的BOOTLOADER命令序列比如DHCP/BOOTTP,FLASH等,使用了很多的宏定义。这其中的许多宏定义可以通过使用UBOOT的SET命令进行交互式的改变。ARMREALVIEWVERSATILE开发板所用的参数可以通过各自的在INCLUDE/CONFIGS目录下的配置文件得到,这些配置文件都定义了像CONFIG_COMMANDS,CONFIG_BOOTARGS与CONFIG_BOOTCOMMAND这样的宏。LINUX内核通常从由宏CFG_LOAD_ADDR0X7C0指定的地址开始加载,然后从0X8000处执行一个未被压缩的内核镜像。当将一个原始的LINUX内核二进制文件镜像转化成一个被UBOOT加载的文件时,这些参数由UBOOT的MKIMAGE工具指定。当编译UBOOT时MKIMAGE工具被内置在里面。注意,当你通过以太网下载一个内核镜像的时候,你应当配置你的服务器能够识别你的开发平台的网卡地址和镜像的下载位置。从闪存的镜像中启动从闪存的镜像中启动从闪存的镜像中启动从闪存的镜像中启动当把UBOOT启动文件加入LINUX内核二进制镜像中去时,请确认加载与执行的地址都被设置为0X8000。启动命令应当是INTEGRATORCPCP0X0X7FC00XINTEGRATORCPBOOTM你也可以使用UBOOT所带的“HELP“命令来查看每个命令的精确的语法。命令行命令行命令行命令行LINUX内核的命令行可以在UBOOT的提示符下通过使用SET命令来改变。“PRINTENV“命令可以用来列出当前的环境变量。当从一个BOOTLOADER执行一个LINUX内核的时候,内核就会使用由指出的命令行来代替任何默认的内置的命令行。镜像可以允许你保存环境变量到闪存中,这可以通过使用“SAVEENV“命令来实现。从HTTP/WWWARMCOM/LINUX中获得的UBOOT镜像包含了已保存在闪存中的从闪存的低部开始的按照的UBOOT,内核和文件系统的顺序保存在闪存中的命令行。3LINUX内核内核内核内核内核的源代码可以从WWWKERNELORG网站上下载并获得,任何附加的补丁应当按照如下添加在基本内核目录树上CDLINUX2619/PATCHPL对于每一个平台和预先编译的镜像都有配置文件。相关的配置文件应当复制到内核文件并命名为CONFIG,内核可以通过运行MAKEXCONFIG或者等价的命令比如MAKEMENUCONFIG来配置。以下命令序列可以用来编译构建内核MAKEXCONFIGMAKEIMAGE在ARCH/ARM/BOOT/中产生原始的二进制镜像一个包含与内核镜像相关且能够被调试器加载的调试信息的VMLINUX文件会产生假设内核在编译的时候使用了G选项BOOTLOADER同时也能检测到平台的ID,信息被保存在寄存器中。内核在启动并执行以前需要平台的编号。当直接从一个调试器中启动一个内核的时候,寄存器中的值需要有调试器设定。4文件系统文件系统文件系统文件系统由本页提供的内建的文件系统可用在ARMREALVIEWINTEGRATOR与VERSATILE版本的平台上。使用一个脚本文件可以在运行的时候检测平台的类型,并且创建一个指向适当的串口设备/DEV/TTY的符号链接。这些镜像包含了一个系统工具,命令和应用程序的子集。为了配置一个压缩的文件镜像,ARM_EMBEDDED_LINUX_230TARGZ文件需要解压。编译的指令由最顶层的README文件提供,此文件还列出了产生一个压缩文件系统镜像的各个步骤。用于编写此文件系统比如说CRAMFS文件系统中应用的程序的源代码包的复件可以以代码的形式向ARM网站索取联系ARM技术支持。文件系统或者通过NFS被挂载或者放在闪存上,取决于平台的设置和在启动时传递给内核的命令行参数。在任何情况下,文件系统的位置由内核的命令行参数以“ROOT“选项的形式具体指出,或者是ROOT/DEV/MTDBLOCKI或者是ROOT/DEV/NFS,其中I由合适的分区数代替。在REALVIEWVERSATILE版本平台上,MTDPART选项需要被定义以便指出镜像存放在闪存的哪个位置。这些已经在内核源代码目录下的DRIVER/MTD/目录下整理好了,并且在配置文件中还有一个与REALVIEWVERSATILE平台二进制镜像有关的配置文件。5编译工具51交叉编译ARM交叉编译工具链需要安装在宿主机上以便用来编写LINUX内核或者应用程序。在默认情况下这篇文章假设是在一个基于LINUX宿主机的开发平台上。请注意下载下来的预先编译好的工具链需要假设你安装在系统上的GLIBC的函数库的版本23。以ROOT用户来执行如下步骤来解压并且安装预先编译好的工具链到你的系统MKDIR/USR/LOCAL/ARM/GNU/RELEASE411CD/USR/LOCAL/ARM/GNU/RELEASE411TARXVFZSOURCEYG411ARMNONELINUXGNUEABII686PCLINUXGNUTARGZLNS/USR/LOCAL/ARM/GNU/RELEASE411/USR/LOCAL/ARM/GNU/RELEASES用来编译GCC工具的源代码可以从WWWCODESOURCERYCOM或者从GCCCVS的主要的软件仓库下载。也可以到这个网站的讨论小组上去讨论与ARMGNU工具有关的技术性的问题。可以编译多种编译器的目标文件AMRELF系列能够产生与任何操作系统都无关的FLAT格式或者是标准的二进制文件。ARMELF选择了与ARMLINUX共用大量代码的ELF格式支持。ARMNONELINUXGNUEABI是在LINUX上需要的目标文件并且能够编译支持LINUX/ARM的ELF格式。预先构建的工具链是按照ARMLINUX的选项产生的,并且不是使用的236版本的GLIBC。52ABI兼容性在这个发行版中使用的GCC也就是GCC41默认使用了支持ARM构架的ABI。LINUX2619的内核可以设置为支持新的ARM构架的ABI和旧版本的ABI。随文件系统提供的22版本的软件包在编译时已经加入了对新的ABI的支持,你应该确保你在配置内核时加入了对ABI的支持KERNELFEATURESCONFIG_AEABI。可以使用内核配置选项KERNELFEATURESCONFIG_OABI_COMPAT来使用ARM构架的旧版本的ABI,然而这需要一个与内建了支持旧版本ABI(也就是AEL210二进制工具的文件系统联合使用。在使用诸如由IOCTL调用而传递的数据结构体的时候,这就显得十分重要,从内核的角度与从用户的角度来看这些地方的数据类型与队列必须精确一致。这篇文档可以从地址HTTP/WWWARMCOM/PDFS/AN150B_BUILDEING_LINUX_APPLICATIONS_WITH_RVCTZIP下载。6UCLINUX本页提供预先编译好的UCLINUX内核镜像。主要的软件仓库的关于UCLINUX源代码的内核信息可以从HTTP/WWWUCLINUXORG和HTTP/OPENSRCSECSAMSUNGCOM网站由HYOKS为了最初的ARM移植而创立上下载。在2005年,对没有MMU的ARM的支持已经加入到了主内核中,并且大部分的不支持MMU的内核补丁应当被整合到主内核中。在这个网站上获得的UCLINUX内核镜像是由与EABI兼容的工具链产生的,并且内核在编译的时候使用了CONFIG_AEABI选项。然而这并不是一个完整的对UCLINUX兼容的EABI也就是共享库等)。在本页上提供的文件系统的镜像是一个由社区成员们制作的工具与可执行文件的集合体,并且有编译的时候没有使用EABI选项。假设已经对内核进行了设置,内核可以处理这两种类型的二进制文件。UCLINUX对应用程序使用一种FLAT格式的二进制文件。这只是一个简单的包含了加载与执行需求最小的可二进制格式。一个特殊的为ELF
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 派送花束活动方案
- 医院质量管理目标体系构建与实施路径
- 2025届邢台市柏乡县三上数学期末考试模拟试题含解析
- 行政管理经济法概论试题及答案集锦
- 2025年中级经济师复习重点试题及答案
- 掌握公共关系学的思维方式试题及答案
- 2025年市政工程项目实践试题及答案
- 防范恶劣天气安全教育
- 林业有害生物防治协议
- 心理学社会现象分析试题集
- 妇科常见疾病及护理常规
- 化工设备巡检培训
- 电机学II知到智慧树章节测试课后答案2024年秋广东工业大学
- 2024银行从业资格个人贷款教材
- 2024中国电信通信传输设备与线路维护服务采购协议3篇
- 空气源热泵培训资料
- 吊篮安装安全技术交底
- T∕HGJ 12400-2021 石油化工仪表线缆选型设计标准
- T-CBIA 009-2022 饮料浓浆标准
- DB64-266-2018:建筑工程资料管理规程-201-250
- 2025届高三地理一轮复习课件第二部分+4.2区域发展对交通运输布局的影响
评论
0/150
提交评论