CPU 战争 40 年,终于把 Intel 打趴下了
上个世纪 70 年代,内存又慢又贵, 程序员得想尽一切办法节省内存。
那个时代的编译器也比较差劲
所以,70 年代的程序员几乎都写得一手好汇编。
为了帮助程序员写好汇编,这个时候的 CPU 也有意把指令集做了增强。
80 年代初,Intel 的 x86 CPU 和微软的 DOS 被 IBM 选中,成为了 IBM PC 兼容机的处理器和操作系统。
在摩尔定律的支配下, x86 CPU 变得越来越复杂。
最后,连编译器都受不了了。
IBM 研究院的 John Cocke 发现,处理器提供的大量指令集和寻址方式并不会被编译器生成的代码用到。
既然如此,为什么不设计一个新的指令集,保留这最常用的 20%的指令呢?
这样 CPU 的设计和实现岂不更加简单?
这就是著名的精简指令集(RISC)的思路。
当时,IBM,加州大学伯克利分校的 David Patterson,斯坦福大学的 John Hennessy 是 RISC 研究的先驱。
RISC 可不仅仅把指令做了精简,还有其他一些非常重要的提升。
新理论的诞生从来都不是一帆风顺的,当时 CICS 的一些设计大师就持不同意见。
David Patterson 憋着一口气,带领自己的学生,设计出了一款 RISC 处理器, 1982 年, RISC-I 处理器发布了。
看到 RISC 有如此表现,一大批公司开始采用 RISC 的思路来设计处理器,RISC 如同星火燎原之势,迅速攻占了服务器端市场。
虽然牢牢统治着 PC 市场,但 RISC 的发展让 Intel 感受到了巨大的压力,Intel 决定两条腿走路。
但是 PC 是 x86 架构,所有的操作系统和软件都围绕它来构建。
i860 连兼容的操作系统和软件都没有,根本就发展不下去。
既然 RISC 发展不起来,Intel 下定决心,抛弃 RISC, 一条道走到黑。
到了 1995 年,Intel 终于找到了办法,那就是把 x86 的指令集,解码成类似于 RISC 的微操作(uops),执行的时候采用 RISC 内核。
Intel 利用从 PC 市场赚取的巨额利润,不断投入,随着体系结构和微电子技术的进步,CICS 在结构上的劣势逐渐消失。
《一线大厂 Java 面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】
在 Intel 的进攻下, RISC 在服务器 CPU 市场节节败退,时至今日,被 Intel 占据了 95%的市场。
再加上桌面市场, x86 几乎完成了垄断。
评论