x86一统天下是胜利还是歧途
Java有一个口号:编写一次,到处运行( Write once, run anywhere. );这是指它的跨平台能力。现在再提这句话已经没太大意思了——因为几乎任何语言都可以做到这点。但是,当Sun在上世纪九十年代初提出这句话的时候,我们知道这曾带来了多大的震撼!让我们回到那个时代。那时,编写便携代码(portable code)的工作是让人极其头疼的,它们需要能够足够干净的移植到十几种不同架构的处理器上。当时的处理器有Alpha、MIPS、PA—RISC、PowerPC和Sparc……可以想见,通过所有这些的编译器可不容易。有人使用小端字节序(little-endian byte ordering),另一些人使用大端字节序(big-endian byte ordering)。有人喜欢CISC(复杂指令集),有人喜欢RISC(精简指令集)。在那样的混乱中,Java的出现的确是个天大的好消息。但看看今天的情况。当2006年苹果最终放弃PowerPC后,x86成为桌面处理器领域的独舞者。即使在服务器方面,现在所有的主要硬件厂商都在提供x86架构的服务器产品,无论他们曾经站在怎样的立场。事态的发展并不止于此。今天,即使非x86的平台也想做得像x86一样。比如上周一家名为Mantissa的公司发布了新的软件包,能够让IBM大型机运行虚拟化的x86操作系统。也许终极的答案会是JPC虚拟机,用Java编写的完整的x86模拟层——它是如此完整,我们将可以在一个浏览器窗口里启动Linux。随着时间推移,我们似乎看到一个新的“编写一次,到处运行”正在出现,而这次的主角不是Java字节码,而是处理器的语言,它的名字叫做x86。x86的成功源于对商业市场的妥协如果我们把x86的历史挖出来,你肯定会觉得有点意思。因为我相信你一定认为是8086将x86带入市场主流的,如果你真这样想,那说明你搞错了,x86真正意义上的繁荣应该归功于8088。【51CTO.com编者注,8086和8088均是上世纪70年代Intel公司的CPU型号。8086诞生于1976年,是一款开创了后来处理器世界的传奇产品,其芯片架构直至今日还被作为业界标准。8086是16位微处理器,芯片上有2.9万个晶体管,采用 HMOS工艺制造,用单一的+5V电源,时钟频率为5MHz~10MHz;8088于1977年诞生,既能处理…

