第51章 兼容与妥协
它不仅借助于IBM公司的推广,成就了因特如日中天的地位,也成为了一种业界标准,即使是在当今强大的多核心处理器上也能看到x86的身影。 因为IBM公司于1981年推出的世界第一台PC机中的CPU--i8088(i8086简化版)使用的也是X86指令,同时电脑中为提高浮点数据处理能力而增加的X87芯片系列数学协处理器则另外使用X87指令,以后就将X86指令集和X87指令集统称为X86指令集。 虽然随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到今天的Pentium4(以下简为P4)、赛扬、酷睿系列等等,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以Intel公司所生产的所有CPU仍然继续使用X86指令集,所以它的CPU仍属于X86系列。 另外除Intel公司之外,AMD和Cyrix等厂家也相继生产出能使用X86指令集的CPU,由于这些CPU能运行所有的为IntelCPU所开发的各种软件,所以电脑业内人士就将这些CPU列为Intel的CPU兼容产品。由于IntelX86系列及其兼容CPU都使用X86指令集,所以就形成了今天庞大的X86系列及兼容CPU阵容。当然在台式(便携式)电脑中并不都是使用X86系列CPU,部分服务器和苹果(Macintosh)机中还使用美国DIGITAL(数字)公司的Alpha61164和PowerPC604e系列CPU。 而苹果公司之所以会采用PowerPC芯片,正是因为他参与了这种芯片的开发,但是后来迫于这种芯片的没落和巨额的投入费用,以及为了从微软的市场里分一杯羹和获得因特尔X86指令集授权的可能性,投入因特尔的怀抱便成为了一种不得已的跳板式的选择。 因为ARM架构的成功让苹果看到了将这两者合二为一,从而设计出独属于自己的桌面级CPU的可能性。然而,迫于研发实力有限,无法单靠自身实力设计出性能强劲的电脑处理器,所以,苹果被迫暂时转向英特尔x86架构处理器,企图消化掉因特尔的技术后,在再ARM架构的基础上,扩展为动力强劲的桌面级CPU。 而这一切的根源都来自于这个在前世垄断市场的X86指令集。前世有句话说的好:占据了用户,就拥有了市场,用在X86指令集上,是再合适不过了,在日益庞大的用户基础上,任何一家公司都不得不为他低下高傲的头颅,哪怕以封闭系统和个性化十足的苹果公司也不能例外。 而X86指令集之所以纵横天下,莫于人敌,归根及底离不开IBM公司的支持和推广,正是因为如此,在IBM公司的强势干涉下,才会有兼容CPU的出现,而这些兼容CPU扩大了X86指令集的市场,将那些决策错误的CPU公司扫入了历史的垃圾堆里。 这些决策错误的CPU公司,其中不乏优秀的指令架构,但是他们没有顺应潮流,或者简单地说,就是没有将承上启下贯彻下去,一厢情愿地将自己的设计思想强加在用户的身上,给用户的使用造成了极大的不便。 这些由简单的‘不便’引发的惨案,引起了叶开的深思。思前想后,叶开决定还是继续沿用X86的指令集,有IBM和微软公司在前面为自己开辟市场,自己何必要累死累活地另辟蹊径呢?这些费力不讨好的逆流而行,是所有拥有可以看穿未来的穿越人士不宵为之的,也是需要引以为鉴的! 现在的X86指令集应该才是第一代,随着CPU系列的不断研发,才会有第二代、第三代等等,而叶开只需要提前注册几条X86指令集的专利,就可以轻而易举地获得完整的指令集免费授权,因为在这些指令中只有20%的指令集使用率达到了80%,叶开只需要注册这20%里面的专利就可以了。 那么以什么借口来注册专利呢? 毕竟,叶开现在组建的公司研究的精简指令集,可以说是完全和复杂指令集没有什么关系,如果硬要扯上关系,起码也要到了前世的95年,英特尔在设计的PentiumPro的时候,才找到了通往精简指令集的捷径:的确,把ISA换为RISC会破坏x86架构的兼容性,所以架构必须依然使用老指令,但不代表中央处理器读入x86指令后,不能翻译成别的指令。
所以,PentiumPro在取到一条x86指令时,硬件解码器会把一条CISC的x86指令解码成符合RISC风格的若干条微指令,因此,除了在起跑线上起跑慢了些以外,在解码后,Intel芯片执行的代码相对于PowerPC,在技术上不存在任何的劣势。” 而在英特尔设计8086及80286的时候,搞精简指令集的那批学者还没发表论文呢,等到IBM的个人电脑卖疯时,再推翻先前设计重新搞简化指令集己经晚了。 因此,Intel当时及后继的x86芯片都是CISC的,并且80年代产生了一系列为x86架构所写的计算机程式(很多程序在开发中还使用了大量的手写机器指令)。个人电脑不同于服务器,受众广得多,程序种类和数量也多,所以一但采用另一套指令集,就很难让用户迁移到新平台上。 另外,哪怕不计应用程序重新改写、编译、发布(当时互联网离普及还早着,大多程序都是靠软盘邮寄的)的代价,像DOS的cao作系统完全重写迁移到另一个平台上可不是闹着玩的,需要漫长的改动和漫长的调试周期。所以考虑到指令集的兼容问题,后继的IBMPC及兼容机不可能再更换到另一套指令集了。” 所以,作为首先提出精简指令集概念、在个人电脑市场暂时呼风唤雨过的IBM公司,面对市场的惯性,在这个阶段最终也是无能为力。 前世这两套系统,都是日趋向着二合一的方式兼容着,因为庞大的X86指令集令英特尔公司的设计人员头疼的同时,低功耗的ARM吹响了向其挑战的号角,而在这战场中,直到叶开穿越之前,都没有真正意思上的胜利者。 因为在某个市场上,暂时的胜利者们还在不断的兼容与妥协中,寻找着通向未来的路。