ARM与英特尔:对Windows、Chromebook和Android软件兼容性意味着什么

英特尔x86或x64处理器传统上出现在笔记本电脑和台式机中,而ARM处理器则出现在功耗较低的嵌入式设备、智能手机和平板电脑中。但现在你可以买到搭载ARM芯片的笔记本电脑和搭载英特尔芯片的智能手机。

ARM和英特尔提供两种完全不同且不兼容的架构。无论您选择的是Windows、Android还是Chrome OS设备,您都可以在ARM或Intel x86/x64之间进行选择-选择关系到软件兼容性。

ARM与英特尔:快速历史课

英特尔芯片历来性能最好,但功耗和价格也是最高的。ARM芯片历来功耗最低,价格也低得多,但在性能上一直无法与英特尔匹敌。这不是最近的区别--十年前的手机可能会有ARM芯片,而台式PC可能会有英特尔芯片。

请注意,这里包括AMD芯片和英特尔芯片。AMD芯片也使用英特尔的x86-现在是x64,因为它是64位架构。

ARM芯片在性能方面一直在快速改进。iPhone和iPad以及大多数Android智能手机和平板电脑都内置了ARM芯片,以实现低功耗。ARM从一种廉价、低功耗的架构开始,并一直在改进它们的性能,我们可以从智能手机和平板电脑在过去几年中变得多快中看出这一点。

英特尔x86和x64芯片的功耗一直在提高,因为英特尔意识到它们在移动设备上的ARM落后了,英特尔最新的哈斯韦尔(Haswell)芯片大大延长了笔记本电脑的电池续航时间。英特尔从更昂贵、更高性能的架构开始,一直在降低功耗,使低端芯片更具价格竞争力。

ARM和英特尔芯片之间的距离越来越近,因此界限开始模糊也就不足为奇了。无论你购买的是Windows设备、Chromebook还是Android设备,这种差异都很重要。

以下是您应该关注的原因:软件不兼容性

ARM和英特尔芯片具有不同的处理器架构和指令集。这意味着您不能在ARM计算机上运行为英特尔体系结构编译的应用程序,也不能在英特尔计算机上运行为ARM编译的代码。这对Windows设备、运行桌面Linux程序的Chromebook,甚至Android设备都有重要意义。

Windows 8与Windows RT的对比

你可以在野外找到的大多数Windows设备都在英特尔处理器上运行完整版的Windows8。然而,一些设备-包括微软的Surface 2、Surface RT和诺基亚的Lumia 2520平板电脑-都内置了ARM处理器。这些ARM设备运行微软的Windows RT。

相关:什么是Windows RT,它与Windows 8有何不同?

Windows RT非常有限,根本不能运行任何非Microsoft桌面程序。微软选择用这种方式来锁定它--他们本可以允许开发者修改和重新编译他们在ARM上的Windows应用程序。如果是这样的话,您将只能安装专门为ARM编译的Windows桌面应用程序。所有的Windows桌面应用程序都不能在Windows RT上运行。

微软将从这里开始,构建一个全新的Windows on ARM桌面软件生态系统。他们还知道,许多人会感到困惑,试图在他们的ARM系统上的Windows上安装英特尔软件上的Windows。最终,他们决定与过去决裂,彻底锁定桌面。他们可能想要从Windows RT中完全移除桌面,但他们还没有发布在以前称为Metro的新界面中运行的Office版本。

你只能从Windows应用商店在Windows RT设备上安装新的“Windows 8风格”应用。大多数Windows应用商店应用都会运行,因为它们被设计为跨平台,但偶尔的应用可能只在英特尔处理器上运行。

简而言之:ARM上的Windows RT是有限的,你根本不能在上面安装任何桌面软件。

英特尔Chromebook与ARM Chromebook

一些Chromebook使用英特尔芯片,而其他Chromebook使用ARM芯片。三星广受欢迎的Series 3 Chromebook使用ARM芯片,新的惠普Chromebook 11也是如此。许多其他Chromebook使用英特尔芯片。

在Chrome OS上,这并不太重要。你仍然可以在ARM处理器上运行相同的Chrome浏览器和Web应用程序。Flash和Netflix都可以在ARM Chromebook上运行。Chrome OS没有Windows那么悠久的历史,所以你不会遇到不能在ARM上运行的应用程序。

相关:如何使用Crouton在Chromebook上安装Ubuntu Linux

然而,如果你计划将Chromebook置于开发者模式并安装桌面Linux,这一点非常重要。桌面Linux历史上一直运行在英特尔处理器上,因此在ARM处理器上运行时受到的限制要大得多。您使用的大多数软件都是开源的,可以针对ARM处理器重新编译,但是您可能想要运行的所有封闭源代码应用程序都只能在Intel芯片上运行。

桌面Linux版本的Adobe Flash插件、Steam及其包含数百个Linux游戏的库、微软的Skype for Linux、My world-所有这些应用程序都可以在开发者模式下安装在英特尔Chromebook上,但在ARM笔记本上完全无法运行。如果你计划使用Chromebook作为Linux系统,你可能会想要一个基于英特尔的系统,除非你只需要一些开放源码的实用程序。

你看对了-虽然Flash可以在ARM Chromebook上的Chrome OS上运行,但你不能在ARM Chromebook上的桌面Linux环境中安装Flash。

简而言之:Chrome OS可以使用ARM芯片,但是开发者模式下的桌面Linux系统要有限得多。

英特尔上的Android与ARM上的Android

安卓智能手机和平板电脑历史上一直运行在ARM芯片上,尽管英特尔多年来一直在努力改变这一点。他们展示并发布了内置英特尔芯片的Android手机和平板电脑。英特尔现在表示,许多搭载Bay Trail芯片的Android平板电脑很快就会上市。这些设备可能会提供比ARM平板电脑更高的性能,但这里也存在软件可比性的问题。

大多数Android应用程序使用Android SDK,并在Dalvik虚拟机上运行,因此大多数Android应用程序将同时兼容ARM和英特尔处理器。然而,一些应用程序使用Android NDK-本地开发工具包-来使用本地ARM代码,并从它们的应用程序中挤出更多的性能。这些应用程序一般都是性能敏感型的,就像游戏一样。带有ARM专用代码的应用程序不能在基于英特尔x86或x64的Android设备上运行。

2012年,英特尔表示,它们可以与95%的Android应用程序相媲美[来源]。这是个不错的数字,但95%并不是所有的Android应用程序-按照这样的兼容性,每20个Android应用程序中就有一个不能运行。如果你想玩的游戏不能在你购买的基于英特尔的安卓设备上运行,这可能会令人沮丧。

简而言之:搭载英特尔芯片的Android设备将运行绝大多数Android应用程序,但ARM设备将运行所有这些应用程序。

设备中芯片的架构很重要,因此在购买新设备时一定要注意它。你不会想最终得到一台无法安装应用程序的Windows设备,一台无法运行流行Linux程序的Chromebook,或一台无法玩你最喜欢的游戏的Android设备。

苹果的设备更加清晰。目前,苹果所有的Mac电脑都有英特尔芯片,所有的iPhone、iPad和其他移动设备都有ARM芯片。

图片来源:Flickr上的黄家辉,Flickr上的Orde Saunders,Flickr上的Torsten Maue,Flickr上的Cheon Fong Liew