[collect]长期有耐心

=Start=

缘由:

由前段时间国内讨论的比较火的华为「鸿蒙」操作系统想到的一些事情,主要是在摘录「最专业的对“鸿蒙”的评论」一文中部分段落基础上自己的一点思考,记录一下,方便以后回顾。

人们总是高估两年能发生的变化,总是低估五年能发生的变化。 ——比尔·盖茨

正文:

参考解答:

关于微内核,这个东西一直是学界的宠儿,并不是业界的宠儿。以应用为代表的Linux之父从技术的角度狂喷微内核。

微内核经过好几代发展,发展到seL4,这个L4厉害了。它是人类历史上第一个用形式化证明的操作系统。

简单点说,用数学方法从逻辑的角度证明这个操作系统是 Bug Free的,是没有 Bug的。为什么Linux不可以呢?哈哈,很简单,内核太复杂了。没有办法证明,超出人类人力所及范围。正所谓成也萧何,败也萧何。微内核的简单,成就了它的高安全。

#首先,微内核的核心好处是显而易见的——安全,且能从数学层面上证明的安全,所以,他是一定会有应用场景的(特别是那些对安全要求高的)!而且经过这次贸易战,我们国家、人民会更深刻的意识到底层技术安全的重要性,因此也会更重视,会有更多耐心和投入。

但是……核心只保留基本的资源管理:处理器的时间、内存、通讯、中断等。所有其他功能统统都扔给应用层管理,以服务的形式去提供功能。服务之间采用IPC通讯,即进程间通讯。

#其次,当前上层应用都在大搞特搞微服务化了,为什么底层的就不能这么搞?这个产品前期肯定是会有很多问题的,比如性能方面的损耗,但学术界在研究,工业界以华为为代表的也在探索实践,国家应该也会从上层的规划安排上在这方面给予一定支持,这是一个趋势(不以个人的意志为转移),总体前景个人觉得还是十分乐观的。另外就是,反过来想这件事——如果不大力去做,总想就着眼前的这点东西凑合过,未免太过短视(让我想起几年前在知乎上看到的一个问答「百度之前内部是很有技术追求的,在Hadoop刚出来的时候就考虑自己用C++实现一套大数据处理系统,但后来因为非技术性的内部权力争斗而停止了,不过当年做那个叫做Pyramid项目的人后来也都成为了各自方向的核心,即便最后项目没成,但人才、经验也都得到了锻炼和保留,虽然绝大多数最后都没留在百度……」)。

目前市场上还是宏内核的天下,如Linux、Unix、Windows等,微内核商业上较为有名气的可算是QNX。好在巨头们都看到了微内核的进步,Google搞了Fuchsia OS (内核Zircon),华为搞了鸿蒙,苹果MAC和IOS也号称微内核,微软搞混合内核。一时间好不热闹。我个人坚信微内核是未来的方向,尤其是华为手握CPU的设计和操作系统的设计,想做个带硬件优化的高性能系统并非难事。此举会引领学界和产业界对微内核的一个小高潮。

微内核因为比较小,不到1万行C代码。只要处理器支持MMU,应该就可以跑出微内核的全特性。服务是可扩展的,依据不同的应用上不同的服务就好,有点像USB热拔插,现在电脑没有光驱、硬盘、打印机等,用USB扩呗。这也决定着,微内核可以在各种场景下见到它的身影。手机,上面弄个Android Binder,堆上相关的库就可以跑Android;服务器,上面弄个Type-2的虚化或者容器,就可以跑各种各样的服务。嵌入式,嗯,当然,体积不是问题,应用更不是问题。

华为这次的发力,真正的用一种操作系统内核统一了大多数应用场景。配上他们自家的开发工具,相信应该是很好用的。对于华为的开源,还有鸿蒙的未来发展。我持乐观态度,毕竟中国市场问题不大。活下来,发展起来只是时间问题。同时,推动微内核的发展,这是一个开启新纪元的大事。

文无第一,武无第二。操作系统领域也是。产业用什么往往并不代表那就是方向,要结合行业支撑发展和行业应用的发展看。紧跟时代潮流,我们错过两次工业革命,难道再错过第三次吗?

操作系统这个领域,是国人研究的弱项,为什么?

首先是这个领域是基础领域,已经被研究得太多了,没办法,研究的点很难找。想发一篇像样的论文毕业,太难太难,这也使得很多人不愿意选择这个领域;

其次,操作系统是一个工程性非常强的领域,你说那么多废话有啥用,来写个系统跑跑看?MMU的各种切换,内存的各种管理,各种调度算法,各种虚化……虽然可以用流程图画完,估计没几个能坚持下来,更不用说兑换成相应的代码了。算法不仅要正确,一堆工程细节,实现起来痛不欲生。调试异常困难。需要非常好的抽象和分析能力。

最后,企业们都知道,拿来主义好。早年用uC/OS-II,商业偷着用。后来改用FreeRTOS。做应用的企业都明白,操作系统不是最终产品,花那么多精力在底层上,是吃饱了撑得吗?所以,很少企业投入这块。加之国内的知识付费,软件付费的氛围,导致这块没有利润,就活不下来。

企业没需求,学生毕业没工作;学界需要论文,要成果。大家都不愿意搞这个领域,其结果就是我们在这个领域的落后。

现在,鹅厂搞了一个物联网的OS,与FreeRTOS这种核心类似,主要目的也不是发展操作系统,而是推自家的云平台。阿里也是。不过,至少,这些大企业意识到,这种基础软件的支撑意义。

#根据一些其它的文章、评论来看,Windows和mac OS就是微内核的代表,Linux经过这么长时间的发展,也经历了许多变化。

微内核的确有一些性能上的瓶颈,但学界已经在努力,工业界已经开始在破冰。这都是好的迹象。且,像华为这样的企业,自己拥有CPU的设计能力,设计一个微内核的加速硬件模块,并不是难事,可以直接把微内核送上天。反正手机底层是封闭的。其他的领域,比如说车载、军事、服务器,有些地方都是超高可靠性的领域。非微内核不能。

#华为真的是国内为数不多适合做微内核OS的厂商了,不论是在人才的储备、技术的能力(软、硬件),还是老板的眼光、态度(自主自强、有钱且愿意投钱、长期有耐心)上,再加上现在这个时间点也是蛮适合的(经历了国外打压)。

#只要方向大致正确,再加上不断努力和长期有耐心,未来可期。

参考链接:

=END=

声明: 除非注明,ixyzero.com文章均为原创,转载请以链接形式标明本文地址,谢谢!
https://ixyzero.com/blog/archives/4598.html

《[collect]长期有耐心》上有1条评论

  1. 高手都是长期主义者
    https://mp.weixin.qq.com/s/AltCgbORls5XwR3JeHgSXg
    别高估自己1年的成就,却低估自己10年的发展
    https://mp.weixin.qq.com/s/ENM51whxls4agxZzEDax3A

    引发焦虑的原因很多,其中一个非常重要的原因就是“着急” - 急着想要达成目标。
    可是,越是急着达成目标,目标往往越难实现;越着急就越失望,越失望就越焦虑。
    于是就形成了焦虑的习惯 - 每周总有那么一两天是在焦虑中度过的。

    怎么办呢?
    答案就是:做个“长期主义者”。
    说起来,这个解药并不复杂。然而它难就难在即便告诉了你,你也还是做不到。

    有三种非常典型的“短线思维者”,分别是:机会主义者、速成主义者以及犹豫的人。

    这些都会带来什么样的后果呢?
    后果一:无法全情投入当下、感受当下、享受当下。
    后果二:无法真正有效的创造未来。

    三种典型的长期主义者
    1、金钱投资的长期主义
    2、自我成长的长期主义
    3、事业发展的长期主义

    “如果你做一件事,把眼光放到未来三年,和你同台竞技的人很多;但如果你的目光能放到未来七年,那么可以和你竞争的人就很少了。因为很少有公司愿意做那么长远的打算。”

    在明确了自己想要做的事情后,还需做到以下四点,才算是个“长期主义者”:

    1、清晰的认知
    2、坚定的信念
    3、根据信念制定原则
    4、根据原则严格执行

发表评论

电子邮件地址不会被公开。 必填项已用*标注