交叉编译:ARM搏击Intel的软肋

时间:2022-07-07 03:01:29

所谓交叉编译(Cross Compiling)是指借助主机操作系统和硬件资源开发的软件代码下载到目标系统上运行的软件环境,顾名思义交叉编译是区别于宿主机编译的,宿主机编译是在主机上完成编译一调试一运行的过程,这也是目前主流计算应用模式(如PC)。交叉编译一直是MCU和嵌入式系统开发的特色和骄傲。但到了今天它面向密集计算和应用的移动互联网时显得捉襟见肘,很难想象把大量互联网上成熟的LA二进制应用,全部再经过源代码交叉编译移植到ARM体系结构,即使在同一种操作系统架构上也是巨大工作。

ARM是今天传统嵌入式系统和手机领域里的佼佼者,Intel则在PC产业占有绝对优势,预测到未来PC增长的放缓,Intel正在瞄准和互联网连接的消费电子、移动终端(MID)和超低成本上网笔记本(netbook)等嵌入式应用,依托成熟的LA处理器技术、丰富的软件、制造优势,Intel新型嵌入式Atom处理器已经在超低成本笔记本取得了成功,还正在获得一些MID、车载电脑、移动DVR成功案例。现在看来ARM和Intel两者很可能将在MID上会师,强调MID的多样性和设备体验,Intel则更多强调MID互联网体验,希望以统治互联网的LA体系优势取胜,目前看来Intel略占优势。

ARM要想在MID重新找回手机的优势,仅依靠Symiban,Android等开源手机操作系统和WinCE/Mobile、MontavistaMobilinux商业软件还远不够,构建一个ARM宿主机环境,尽快吸引更多互联网应用软件是一个迫切的课题。今天互联网世界的服务器和桌面多运行Linux或Windows操作系统,Windows虽然有支持ARM体系的嵌入式版本,但其装机量和开放性都要比开源的Linux差,Linux是一个可以使用在服务器,桌面、移动互联网终端和嵌入式设备的操作系统,著名的Linux发行版Ubuntu、Debian、Fedora和红旗Linux都已经有了相当广泛用户基础,遗憾的是它们都主要是运行在LA架构PC上,一个称为Mojo的项目已经在这个方面开始了工作,据Nokia研究中心的Andrew Christian介绍;这个项目是在2007年开始的,当时就已经看到许多嵌入式设备以及有2GSD外存和64MRAM,这足以运行一个全尺寸的开源发行版了,比较不断的重新交叉编译所有的源代码包,发现修正bug和反复测试的过程,为移动和嵌入式设备提高一个完整的Linux桌面发行版是一件有用的事情。项目目前已经发行一个基于Ubuntu 7.04“Feisty”的针对AILMv5EL指令集FIisky版本,后续开发还在积极地进展中(mojo.省略)。当然问题还有不少,比如测试环境,mojo建议最常用的是虚拟化仿真环境QEMU,真实的ARM硬件环境推介是NokiaN800,这是个价格不菲还只是在北美和欧洲市场销售的基于TI ARM的OMAPMID产品,Frisky可以安装在它外置的SD卡上运行。令人兴奋的是MoJo已经有支持TI OMAP3廉价的Beagle板移植项目,笔者大胆设想一下如果市面上有基于ARM CortexA8/A9 ePC类似的NetBook那就真是方便多了。

Intel深知MID和嵌入式设备不是PC世界Wintel可以一网打尽的道理,在亲自操刀开源项目Moblin(http://www.省略)推动Ubuntu移动和嵌入版本支持Atom外,最近收购了英国OpenedHand公司,他们开发的Poky Linux是一个为移动平台开发的基于Gnome的Linux发行版,最近他们发行了有重要意义的Poky Linux 3.0,基于X11,GTK+和Matchbox窗口管理器。Nokia的N770、N800,都是采用OpenedHand的解决方案。看来Intel目的不只是在强化Atom软件能力,还意在削弱ARM/Nokia阵营的软件实力,可谓一石二鸟。

微电子和软件技术的结合将影响半导体产业的发展,还将引申到应用系统整个产业链,ARM、Intel谁将笑到最后现在还不是定论的时候,但是可以肯定在更加开放和浩瀚的互联网世界,对于ARM挑战将远远比MCU和手机市场大得多,但我们期待ARM继续演绎传奇。

上一篇:基于Virtex-5 FPGA设计Gbps无线通信基站 下一篇:高品质汽车电子元器件原自质量保证体系