查看原文
其他

思考|为什么中国没开发出自己的操作系统?

向技术大神致敬的 阿法兔研究笔记 2021-10-31

-Value-

-Trend-

-Future-

   “ 科学技术是第一生产力 ”

     —邓小平《在全国科学大会上的讲话》1978.3.18


2020年庚子年,国际局势风云变幻,外部环境险象丛生。大国博弈的经验告诉我们,核心技术对企业乃至国家的发展都有着重大意义。


在博客园看到Stitch的这篇《为什么中国开发不出流行的操作系统和编程语言》(原文地址:https://www.cnblogs.com/StitchSun/p/12889614.html),分五个部分对操作系统和编程语言进行了分析和讨论,是一篇可以引发读者思考的文章。
文末,阿法兔对Stitch的推论展开了进一步讨论:

"中国什么时候可以开发出属于自己的操作系统?"
当然,文章仅是思想的表达方式,希望可以和更多朋友交流。

注:本文约5300字,推荐阅读时间约为 12分钟

作者 | Stitch

编辑 | 阿法兔


知乎有两个帖子很有意思:

中国能不能写出操作系统?
中国为什么没有自己的编程语言?

看了很多回答,有的答案主要是按照编程语言出现的时间顺序等梳理;有的回答非常认真,但是逻辑有问题;还有一种是搞笑的。

那么,为什么中国没有开发出流行的操作系统和编程语言?

Stitch的答案是:

中国没有开发出成功的操作系统和编程语言,根本原因是中国的 IT 产业处于落后状态。还在循着美国产业发展路径追赶,没有发展到世界顶尖。

没有站到浪潮前沿,就无法感知产业发展方向,就无法创造出适合未来产业发展趋势的操作系统和编程语言。

好,现在问题来了,什么时候中国可以开发出操作系统?什么时候可以研发出自己的编程语言?问题问的比较好,暂时不回答,在文末有答案。

1.PC 操作系统发展历史

简单回顾下操作系统发展历史,现在的操作系统有十几个,对于 IT 行业以及互联网从业人员接触到的有:

  • PC 操作系统:DOS,Windows,Linux,MacOS
  • 服务器操作系统Linux,Unix,OS/2 等
  • 手机操作系统:Android,iOS,BlackBerry (黑莓),Symbian(塞班),Windows Mobile
  • 嵌入式系统:WindRiver,QNX 等实时操作系统。

对于普通人一般接触到的操作系统就三种:电脑的 Windows 和手机平台的Android、iOS,其他的估计连听说过都没有。对于业内人士,写一个操作系统不难,难的是基于这个系统的生态系统。IT 从业人员和专业技术人员都在这个操作系统上工作以及开发应用,这样才是一个成功的操作系统,而不仅仅是在高校内教学的教学模型,或者是实验室的试验品、Demo。

写一个成功的操作系统,不仅仅靠技术先进,还需要天时、地利、人和。

我们回顾下当下最成功的操作系统是怎么发展起来的,以 Windows 和 iOS、Android 为例:

DOS 系统最早是一个技术人员的作品,被比尔盖茨买过来,修改用在了 IBM 的 PC 电脑上,随着个人电脑的普及而发展起来。当时电脑都没有操作系统,DOS 一出来就基本占据大部分桌面市场,后来基本 DOS 内核的 Windows 随后推出。

因 IBM 兼容机的价格优势,在与苹果电脑的竞争中占据优势。理所当然的各种应用软件都是基于 Windows 系统开发的。可以说 PC 时代的软件巨头都是基于 Windows 平台的。后续跟随操作系统图形化界面的潮流推出 Windows 系统,此后一直占据着个人电脑操作系统的主流。

后来, Linux 系统想占据个人桌面系统,努力了很久,一直没有成功,不是技术不先进,图形化不够漂亮,软件不够丰富(对于非办公人员来说,日常软件已经够用),而是个人电脑的浪潮已经过去。普通人已经适应了 Windows 系统的操作了,微软成为了事实上的个人电脑的系统的标准的制定者,操作习惯的引导者。

操作习惯一旦养成,想改变是非常困难的,普通人重新去学习一种新的操作习惯的成本太高,软件开发厂商重新适配新操作系统的成本也是巨大的。当年推出的 Windows Vista 系统,因操作方式变化太大,遭遇了失败。

所以 Windows 的“天时”是个人 PC 的浪潮,“地利”是在美国,完善的配套产业,“人和”是比尔盖茨的商业能力,以及,起步时妈妈是 IBM 的董事,IBM 的 PC 预装了 DOS。

由于当时苹果的封闭,Windows 系统在技术上没有苹果的好,但是借助 IBM 的兼容 PC 价格优势,占领了大部分市场。随着时间的累积,Windows 的生态越来越丰富,应用软件,企业应用等,甚至影响了硬件标准的制定。

个人操作系统多年来积累的软件,以及很多的企业应用和服务,要迁移,需要把原来的需求理清楚,新系统上开发,还要详细测试没有 Bug,新旧系统切换还要保证原有业务稳定,迁移成本是一个天文数字,没有公司可以承担的起。

所以在个人操作系统领域,Linux 根本没有可能挑战 Windows 系统。

2.智能手机操作系统

手机操作系统基本是 iOS 和 Android 的天下,这波浪潮离我们比较近,很多人都经历过这两个系统发展和完善。

时间拨回到 2007 年,当时第一代 iPhone 刚发布,震惊了世界,十几年过去了,重新回顾发布会,依然觉得震撼,真的是划时代的产品。

从此,开启了从 PC 时代向智能手机时代的大幕,开启了 PC 互联网时代向移动互联网时代的大幕。苹果凭借 iPhone 的发布,获得了巨大的成功,后续的智能手机界面和操作方式,都是以此为准,可以说苹果制定了智能手机图像界面的标准以及操作标准。

这一变换,直接带来了 IT 产业的环境变化,从生物学的角度来说,外部气候已经变了,所有的生物都要做出改变来适应新的气候,完成迁移,不然就会被时代淘汰。

智能手机的普及以及手机操作系统的出现,是一个全新的平台和领域,也是整个 IT 产业的重大变化。原有 PC 时代的软件巨头和互联网巨头都在努力向新的平台迁移。移动平台是全新的,操作方式是全新的,全都是未开发的荒地,没有旧时代的巨头阻挡和门槛。

智能手机的销量每年增长 50% 以上,意味着用户每年增长 50%,这里全新的蓝海,是时代弄潮儿的最佳机会。抢占住了移动平台,就拿到了通往未来的门票。

美国智能手机操作系统的 “天时、地利、人和” 

  • 天时: 经过 2000 年后互联网泡沫的破灭,硬件技术已经有了长足的进步,低功耗的 CPU 可以运行起来 480*320 的分辨率的画质了。3G 网络的发展,速率基本可以到 2M 以上了,基本达到了宽带的条件

  • 地利: 在 2006~2007 年,美国依然是 IT 产业的高地,硬件到软件,无不是独步天下

  • 人和: 硅谷作为 IT 产业的圣地,操作系统人才积累雄厚。最关键的是有乔布斯这个从 PC 时代走过来的大神

美国硅谷具备了 “天时、地利、人和” 三个条件,iOS 和 Android 顺利的占据了智能手机操作系统的市场,基本没有遇到太大的阻力。

另外来看,手机操作系统有资格参与竞争的选手也不多,欧洲诺基亚主要的 Symbian 系统,加拿大黑莓主导的 BlackBerry OS,微软主导的 Windows Mobile(Phone),三星的 Bada(后来的 Titan),由于各种原因,这几个系统都在竞争中失败了。国内的厂商当时一个能打的都没有,甚至在智能手机爆发时(2007 年,iPhone 发布时),国产手机被山寨机打的节节败退,处于历史的低谷,根本不是现在的情形(国产智能手机占 80% 以上份额)

可见当时国内在整个智能手机开始普及时,产业链哪个环节都没有优势,连一个像样的领导厂商都没有。而操作系统的特点是。一旦占据了市场,基本很难更换,现在去开发一个新系统来抢占原来市场,非常困难,需要完整的工具链支持,开发者迁移成本也非常高。

所以操作系统国内没有占据市场,是整体由国内 IT 产业的发展水平决定的,没有站在浪潮之巅,就感知和引领行业的发展方向,提前占据新的领域。

3.国内操作系统的机会

iPhone 发布后,整个产业界一下震惊了,苦苦探索的智能手机终于了有了方向

在苹果之前,智能手机是黑莓,Symbian,WindowCE,这几个系统的思路基本是 PC 系统的延伸,而不是像 iOS 一样专门为智能手机设计的操作系统。当时的 Android 系统还是 Robin 的玩具,设计还是全键盘的设计。

在 iPhone 发布不久,谷歌灵敏的嗅到时代巨变来了(成为巨头的公司一定是灵敏的,对于产业的发展趋势判断一定是超级的,不然谷歌也不会成为穿越时代的传奇),迅速收购了 Android 系统。和当年微软的 PC 操作系统的思路一样,操作系统开放给手机厂家使用,占据了大部分的智能手机系统的份额,拿到了智能手机操作系统的门票,使自己的互联网服务有了栖身之地,奠定了谷歌在移动互联网时代的基业。

回顾这些,就是想说明:一个操作系统的成功,一定是跟随着产业发展的浪潮,满足了产业发展需要的需要,随着产业一起发展,才能获得成功,这个就是吴军老师写《浪潮之巅》里的,大公司也有随着时代转型,不然也会没落。

结合前面的论述,现在主流的操作系统,PC 上的 Windows,服务器上的 Linux,智能手机的 Android 和 iOS,格局一定,基本无法动摇

想开发出流行的操作系统,要等到下一个产业变迁的时刻,同时国内还要有巨头来主导,保证资本和人力的投入,还有庞大的市场来检验,以及对应的技术人才和商业人才积累。

这样的“天时、地利、人和”,才可以抓住机会,占领新兴产业需要的操作系统。

回到本文的标题,什么时候会出现中国主导的操作系统,个人觉得,在出现新技术领域时,一定会有中国操作系统的一席之地。这个时间点在什么时候,我也不知道。

但是下一次产业机会出现的时候,“天时、地利、人和”的优势是在中国这一边的

  • 天时:现在国内移动网络开始普及 5G,4G 覆盖率非常高,移动用户数巨大,现在国内的 IT 厂商具备和全球顶尖的实力,阿里,腾讯,华为。在应用层面,许多应用都是在国内先出现,然后普及到全球,抖音就是一个例子(先抛开最近的局势不谈)

  • 地利: 现在 IT 产业的硬件制造的高低在中国,智能手机厂商华为、OPPO,VIVO,小米,都是全球前几大厂商。硬件生产效率惊人,可以第一时间以合适的成本和速度生产出新领域的硬件平台

  • 人和: 这个 “人和 ” 不是指具体的某个人,首先国内IT产业经过这些年的长足发展,在底层系统方面积累了人才,操作系统,数据库等


还有就是有了全球 TOP 级的平台,阿里,腾讯,华为,这些企业可以和美国的 IT 企业在研发投入上竞争,当新的产业机会出现时,这些巨头肯定会全力投入竞争,起码在资本投入方面,是可以与美国的企业想媲美的。

还有一个就是国内巨大的市场,一旦占据就可以快速摊销研发成本,产品快速迭代和进化,可以更方便的抢占市场和竞争。抢占新领域的操作系统,就补上了操作系统的一环。

4.新的编程语言

同理,编程语言也一样,一个编程语言的发展,是切实解决产业发展中的问题,提升开发效率而取得发展的,不是闭门造车

现在最流行的编程语言,Java,C,Python,C++,JavaScript 等,也都是满足了产业界的巨大需要,占据了一席之地。

以我现在用的 Python 为例,Python 发明于 1991 年,一直处于小众的领域,躲在角落里做一些杂活,“苟延残喘”的活着,如果没有找到新的用武之地,Python 就会慢慢消失在历史的长河中。

幸运的是 2007 年谷歌使用 Python 做运维,找到了自己的用途。不然发展十几年版本才进化到了 2.6 版本。出现较晚的 Java 都进化到了 6,7 了。

有了谷歌的站台,业界也开始学习谷歌来做运维,Python 开始取得了发展。后面更加幸运的是赶上了科学计算以及大数据的浪潮,在数据分析领域发挥了自己的特长,进入了编程语言的前五,还当了几次年度语言

所以编程语言的设计不一定就是按照教科书的范式设计最好,而是需要多方面的因素来促成。例如 C#,语法设计号称经典,和 Java 撕逼这么多年,也没有威胁到 Java 的地位。一个是 Java 早期发展占据很多领域,还有就是 Java 靠着 Android 强力续命了。

如果是微软的系统取得了今天 Android 的地位,C# 估计就替代 Java 在 Android 上的应用开发语言地位了。

5.新产业出现的时间

什么时候产业会出现新的机会,方向是什么,现在都没有定论。需要大量的先驱去尝试,去探索,最终找到一个出口。这个过程有多久,比较难说。

不过我们可以回顾下历史,PC 发展是起于 20 世纪 70 年代末,大规模普及要到 21 世纪初 Windows XP 发布,2015 年达到顶峰,时间跨度是 35 年(1980~2015)

智能手机孕育在 20 世纪 90 年代末,有 Windows CE,黑莓等,取得突破是 2007 年在 iPhone 发布,大规模普及在 2010 年,时间跨度是(2000~2010)

可以看到产业发展速度是呈加速度的,智能手机从 iPhone 发布到规模普及,不到五年。

现在智能手机功能的发展基本已经停止了,近五年已经没有重大的新功能了,CPU 中加入 NPU 等都是在尝试,是不是产业发展方向还不一定,至少华为是走在业界的前沿,开始向无人区探索了。

新的机会现在就在孕育,静悄悄的发展,在寻找发展的最佳路径,就像电子不知道哪里电阻最小,只会寻找最近的电阻最小的方向去。

下面为本文作者Stitch的看法:

 个人觉得电脑,手机以及众多穿戴设备,家用智能设备,这些太复杂了,太多了,确实提升了不少体验,但是使用起来却不智能。可能会出现一个统一的系统。但是感觉这个产业规模不够大,无法孕育一个主流的操作系统。

那么,中国什么时候能开发出自己的操作系统?

以下是阿法兔的看法:

笔者认为,中国想要开发出来自己的操作系统,需要以下两个条件:

  • 一是出现某个巨头,这个巨头拥有极其强大的现金流优势,能几十年如一日的做研发。目前我认为比较有可能实现的是华为鸿蒙OS,但是,任何新的操作系统都需要面对各式的问题和挑战:

  •     要以何种方式进行开发者支持

  (Developer Support)?
  •     怎样鼓励基于鸿蒙的新应用开发?

  •     如何进一步可持续发展?

  •     长期策略又是怎么样的?


比如,曾经操作系统失败的例子有Ubuntu Mobile, Firefox OS, Symbian OS, RIM等。
如果华为能解决上述挑战,笔者认为,鸿蒙就会成为首个中国独立成功开发并应用的操作系统。

  • 二是出现某个完全不同于PC端和移动端的,新时代使用场景衍生出来的新平台(例如iOT等)

例如,iOS出现的契机是移动互联网给人们提供了一个新的应用场景——智能手机。苹果公司于2007年6月29日推出了基于iPhone(移动端的)iOS操作系统,当时称为iPhone OS。从那时起,iOS操作系统每年都会进行优化和升级,不断增加新功能并,重新定义iDevice上的所有功能。

如果出现一个革命性的新场景,这个场景需要操作系统,并且现有的操作系统不能满足新场景的需求,也就是前文所说的产业变革,就会出现中国独立研发操作系统的窗口。



「推荐阅读」

公众号:阿法兔研究笔记

微信号 : AlphatuDiary

感谢您看到这里。

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存