国产自主CPU/操作系统真正实力是这样!
中国拥有世界超算第一的神威太湖之光,令人振奋的是其搭载的为国产CPU。但大众能够接触到搭载国产CPU和操作系统的电脑却少之又少。前不久兆芯对外宣称自主研发的CPU在性能方面已经可以与国际厂商竞争。仿佛昨天还性能羸弱的国产CPU一跃便达到了国际水平,再加上宣称国产安全操作系统的中标麒麟,国产CPU和操作系统真的要崛起了吗?
笔者认为,国产CPU和操作系统崛起的标志应该是在民用级普及。从这一观点来看,国产CPU和操作系统距离崛起还有相当长的路要走。不过欣慰的是,两者在通往民用的道路上已经越走越快,而且最重要的是做到了自主可控,其中的代表就是龙芯+Linux。
CPU为什么不是前面提到性能比肩Intel/AMD的兆芯呢?要想弄明白这个问题,我们需要对国产CPU进行梳理。
国产CPU的设计和制造
目前国产CPU大致可以分为四大类:自主、开源方案、购买方案和授权。
第一类自主设计,其中的代表就是龙芯。龙芯的微架构是中科院自主研发的,可能由于其兼容MIPS指令集而被解读为并不是完全自主设计。2011年的时候,龙芯就已购买了MIPS64位架构授权。
但如今MIPS逐渐没落,所以龙芯的市场前景并不可观。一些朋友可能有机会拿到搭载龙芯CPU的笔记本,其性能表现是比较糟糕的。
即使如此,龙芯的现实意义却是最大的。作为一个国家的战略技术储备,龙芯会一直活下去。中国科学院龙芯CPU首席科学家胡伟武在接受采访时表示,龙芯CPU完全可以做到世界第一,但问题就在于没人用、没人买。软件生态上的匮乏是制约龙芯发展的一大原因。
国产CPU设计和制造现状
第二类开源方案,其中的代表就是SPARC架构的CPU。这一类CPU基本不会用在民用领域,大多用在航空领域,比如大家熟悉的神舟飞船,欧洲一些国家的航天器也采用此类CPU。
第三类购买方案,其中的代表就是alpha架构的CPU。神威太湖之光就是用的这种,同样不适合民用。虽然在超算领域神威太湖之光是最强的,但自身还是存在一些设计缺陷,比如内存设计很弱,浮点性能强,适合做并行计算,有点像显卡。单核性能比较弱,可能还不如龙芯。
第四类授权,这是目前最为广泛的,比如前面提到的兆芯是x86的授权,大家熟知的华为的麒麟处理器是ARM的授权。除了这两个外,还有飞腾(ARM)、展讯(ARM)等等。这一类在商业化道路上是走的比较轻松的,因为不用担心兼容性问题,花费的钱也比其他类要少一些。
但这一类是受人制约的,虽然是自行设计Soc,但相比龙芯的自主设计要有些区别。从长远来看,这些授权依旧是别人的东西,信息安全受制于人,产业发展受制于人。在商业上使用可以,但冠以国产之名确实有些牵强。
除了CPU设计外,CPU制造也是一大坎。目前国内芯片工艺比较落后,比如光刻机(简单理解为决定芯片多少纳米)就无法达到世界水平,这也使得国内无法生产高端芯片,以前的龙芯都是委托别人制作的。收购是最佳捷径,但其中涉及到政治、经济等多方面问题,一些国家限制中国收购类似镁光这样的企业。
总体而言,国产CPU确实取得了长足发展,但在核心竞争力方面依然比较弱,尤其是民用领域几乎全部依赖国外技术授权。在制造工艺上也受制于技术水平,无法大规模制造高端芯片。
国产操作系统将何去何从
说实话,真正意义上的国产操作系统的发展还不如国产CPU。目前国产操作系统基本可以分为三大类:完全自主、开源系统和修改闭源系统。
第一类完全自主的操作系统有很多,但如果从应用生态方面来看的话,完全自主操作系统的数量是0。这是因为编写一个操作系统的难度并不是很高,只要学过计算机专业、水平高一些就能编写一个简单的操作系统,但这样的操作系统是没有意义的。
最主要的原因就是它并没有完整的软件生态系统。为什么大家都习惯用Windows,是因为我们经常用到的软件和服务都在Windows上,比如购物经常用的网银,在其他系统上是无法使用的。系统的发展是个漫长的过程,不仅仅是系统自身完善,更是系统生态的完善。
第二类开源系统就太多了,PC上有大家熟悉的Linux,比如麒麟、红旗、乌班图和deepin等桌面操作系统;手机上有多数人都在用的Android,比如国内三大手机系统MIUI、Flyme OS、Smartisan OS等。这些操作系统的本质都是Linux或类Linux,只不过换了换皮肤,深度定制些功能等。所以它们能够运行相同的程序。
第三类修改闭源系统,这一类比较少见,就是花钱买完整的授权,然后在源码上进行修改。代表类型是VxWorks,在嵌入式中比较常见,比如交换机这种产品的系统,在民用级的产品中几乎见不到。
从以上三种类型中可以看到,Linux作为开源系统是比较好的选择。可能有人会担心开源系统不安全,其实这个担心是有些多余。系统都已经开源了,即使不安全也能直接看到。也正是这个原因,Linux系统从来不需要杀毒软件,可以说Linux没有国别之分,它是世界的。
由于我国在国产CPU和操作系统这两方面起步比较晚,所以在发展程度上还无法达到世界级水平。而且建立一个完整的生态系统(硬件+软件)并不是一朝一夕的事。所以从目前形势来看,民用级中龙芯+Linux是比较好的选择。当然也要分清国产CPU和操作系统这两者的主次关系,技术壁垒在芯片上,所以国产CPU的重要性要大于国产操作系统。