基于arm的嵌入式linux软件开发平台的搭建

基于arm的嵌入式linux软件开发平台的搭建

ID:31359121

大小:109.00 KB

页数:6页

时间:2019-01-09

上传者:U-9952
基于arm的嵌入式linux软件开发平台的搭建_第1页
基于arm的嵌入式linux软件开发平台的搭建_第2页
基于arm的嵌入式linux软件开发平台的搭建_第3页
基于arm的嵌入式linux软件开发平台的搭建_第4页
基于arm的嵌入式linux软件开发平台的搭建_第5页
资源描述:

《基于arm的嵌入式linux软件开发平台的搭建》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

基于ARM的嵌入式Linux软件开发平台的搭建  摘要:嵌入式软件开发是当前热门技术,而构建嵌入式软件开发环境是进行嵌入式软件开发的基础。该文对如何搭建基于ARM的嵌入式Linux软件开发平台进行了探究。根据软件开发的一般流程,从交叉编译环境的建立,到TFTP和NFS的配置,都进行了详细的论述,并通过实验证明了平台的可用性。  关键词:嵌入式系统;ARM;Linux;交叉编译  中图分类号:TP311文献标识码:A文章编号:1009-3044(2016)22-0227-02  Abstract:Embeddedsoftwaredevelopmentisthefocusofcurrentresearch,constructionoftheembeddedsoftwaredevelopmentenvironmentisthebasisofembeddedsoftwaredevelopment.ThispaperresearchonhowtobuildembeddedLinuxsoftwaredevelopmentplatformbasedonARM.Accordingtothemainlineofsoftwaredevelopmentprocess,fromtheestablishmentofcross-compilationenvironment,toTFTPandNFSdevelopmentenvironment,allarediscussedindetail,andtheavailabilityoftheplatformwasdemonstratedbytheexperimentalresults.  Keywords:embeddedsystem;ARM;Linux;cross-compilation6   嵌入式设备的使用日益广泛,其中操作系统的选用成为关注的焦点。嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统(包括硬、软件系统)极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面等。与通用操作系统相比较,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。目前主流的嵌入式操作系统有WindowsCE、VxWorks、嵌入式Linux等。其中,Linux成为极有吸引力的一种选择,它是个和Unix相似、以核心为基础的、完全内存保护、多任务多进程的操作系统。支持广泛的计算机硬件,程式源码全部公开,任何人可以修改并在GNU通用公共许可证(GNUGeneralPublicLicense)下发行。由于Linux桌面系统在实际使用中熟悉的人较少,开发者在进行嵌入式Linux软件开发和研究的过程中,往往面临搭建开发平台的困难[1]。本文对基于ARM的嵌入式Linux开发平台的搭建进行了研究,提供了一种可靠性较高的方法。  1嵌入式开发软件平台搭建  嵌入式软件开发一般遵循“宿主机一目标板”的开发模式。其中核心内容主要是宿主机交叉编译环境[2]以及TFTP和NFS环境的搭建。在本文给出的实验示例中,宿主机上安装的是目前比较流行的RHEL6版本。  1.1宿主机交叉编译环境的搭建6   因为成本原因,嵌入式系统的资源往往是有限的,因此直接在嵌入式系统的硬件平台上编写软件比较困难。这时候就需要交叉编译。所谓交叉编译就是在某个主机平台上(比如PC上)用交叉编译器编译出可在其他平台上(比如ARM上)运行的代码的过程。嵌入式系统交叉编译环境如图1所示。  下面就介绍如何搭建宿主机交叉编译环境。本文在测试时使用的交叉编译器版本为arm-linux-gcc-3.4.1.tgz,硬件方面使用的是上海双实科技提供的基于S3C2440的开发板。  安装交叉编译器arm-linux-gcc-3.4.1.tgz步骤如下:(通过U盘拷贝到系统中,并放置根目录下)  cd/  tarzxvfarm-linux-gcc-3.4.1.tgz  vi/root/.bashrc  添加下面一句  PATH=$PATH:/usr/local/arm/3.4.1/bin  source/root/.bashrc//使文件生效  arm-linux-gcc?Cv//查看交叉编译器版本号,应该显示为3.4.1  1.2TFTP的搭建  TFTP是一种传输文件的简单协议,它没有FTP协议那么多特征,不支持目录列表及用户认证[3],但是实现快捷,被广泛应用于嵌入式开发领域。TFTP也是基于传统的C/S模式进行工作,TFTP开发环境的构建分为宿主机端的tftp-server支持以及目标板的tftp-client支持。  1.2.1构建宿主机tftp开发环境  1)首先利用配置好的本地yum源安装tftp服务软件包  mount/dev/cdrom/media  yuminstalltftp*6   2)修改配置文件  在RHEL6系统中TFTP服务默认情况下是禁用的,所以要修改/etc/xinetd.d/tftp文件来开启服务。操作如下:  vi/etc/xinetd.d/tftp  将配置选项disable=yes改为disable=no,保存退出  3)重新启动tftp-server  servicexinetdrestart  1.2.2构建目标板tftp开发环境  一般来说,目标板都能够支持tftp-client,所以嵌入式目标板tftp环境一般就不需要再配置了。在目标板可以通过类似命令tftp?Cra.c?Cg211.65.180.1下载文件。  1.3NFS开发环境的搭建  tftp服务只在需要下载或传输文件至开发板时使用。在应用程序开发环节,通常都要  搭建好NFS环境[4]。NFS是系统间进行文件共享的一种网络协议,在NFS的应用结构中有服务器和客户机两种角色,NFS客户端通过挂载NFS文件系统的方式访问NFS服务器中输出的共享目录。因此,NFS方式比ftp方式有着更高的执行效率。  1.3.1宿主机NFS开发环境的建立  1)安装NFS服务器  mount/dev/cdrom/media  yuminstallnfs-utils  2)关闭服务器端防火墙6   serviceiptablesstop  3)配置NFS服务器  在宿主机端以root的身份登录。使用vi编辑器编辑/etc/exports文件,该文件中默认内容为空,可以添加如下内容:  /home/share211.65.180.1(rw,sync,no_root_squash)  添加的内容表示允许IP为211.65.180.1的计算机以读写的权限来访问共享目录/home/share。  4)启动RPC服务(在RHEL6中用rpcbind服务代替之前的portmap服务)  servicerpcbindstart  5)启动NFS服务器  servicenfsstart  1.3.2目标机NFS开发环境的建立  目标板如果不支持NFS,则需要重新编译内核,添加相应的选项。  1)配置内核支持NFS客户端  将内核源代码拷贝到相关目录下,然后输入命令makemenuconfig,在出现的图形界面中选择LoadanAlternateConfigurationFile菜单载入配置文件,添加内核对NFS的支持,然后保存退出,用命令makeuImage编译内核,将生成的uImage重新下载到目标板启动即可。  2)目标板对NFS共享目录的挂栽  mount-tnfs?Conolock192.168.0.10:/tftpboot/tmp  2结束语6   本文对构建基于ARM的嵌入式Linux软件开发环境进行了探究。作者在宿主机上安装了内核较新的Linux企业版本RHEL6,着重研究了交叉编译环境的建立,TFTP和NFS的配置,从实验结果来看,提供了一种可靠性较高的方法。  参考文献:  [1]苟军年.ARM-Linux嵌入式软件开发平台的搭建.计算机时代[J].2010(11):53-55.  [2]张欢庆,高丽,宋承祥.基于ARM的嵌入式Linux交叉编译环境的研究与实现[J].计算机与数字工程,2012,40(2):151-153.  [3]李怀刚,邱建新.网络安装Linux的技术原理分析及实现[J].计算机应用与软件,2006,23(9):110-112.  [4]叶军,朱华生.嵌入式LinuxNFS方式下应用程序的实现[J].微计算机信息,2007,23(8).6

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭