数据库 频道

中国操作系统如何崛起,「openEuler」是转折点

  文/老鱼

  “缺芯少魂”一直是中国信息科技产业的伤痛,其中“魂”指的就是操作系统。实际上,中国操作系统布局很早,却一直不是很成功,为什么?原因可能很多,但有一点很关键,没有自己的根社区。武延军说。

  武延军,中国科学院软件研究所(以下简称:软件所)总工程师,智能软件研究中心主任,中国开放指令集联盟开源软件工作组组长,RISC-V国际协会技术战略委员会委员,openEuler开源操作系统社区副理事长,OpenHarmony开源操作系统技术指导委员会委员。

  职务很多,但方向聚焦在操作系统和开源两个关键词上。

  在武延军看来,openEuler出现以前,中国操作系统处于游击队式的「开源 1.0」时代,那个时代,虽然也能零星听到一些国内发起的开源项目,个别老前辈也有一定的国际影响力,但并没有形成一种大社区和大生态。

  在openEuler出现后,尤其在华为的大力推动下,迅速蜕变成一个有目标,有组织、成体系的社区,并在很短的时间内就把上下游生态全部连接起来。

  数据显示,openEuler汇聚全球340多家企业(包含英特尔、SUSE等国际公司),吸引近万名开源贡献者,版本下载量累计超过54万次,装机达200万套。这是中国操作系统行业从未有过的事,是一个非常明显、质的变化,这标志着中国操作系统进入正规军式的「开源 2.0」,武延军有说。

  「开源 2.0」的下一站是「开源 3.0」,武延军认为,如果照这样发展下去,未来几年,我们就会进入到「开源 3.0」阶段。国内可能会出现类似于 Red Hat等在商业上取得成功的开源软件公司。

  走进操作系统

  1997年,武延军就读于清华大学计算机系,保送研究生后,进入中科红旗实习,与操作系统的缘分也由此展开。

  “红旗这类Linux操作系统的出现,让我们学生也能有机会接触到操作系统的底层技术,是让我印象最为深刻的”。武延军说。当时,中科红旗董事长孙玉芳是其博士生导师,从清华保送到中科院软件所,武延军就是跟着孙玉芳老师读博士。

  中科红旗这段实习的经历,成为武延军踏入操作系统门槛的第一步,也让他深刻感受到,我们国家在操作系统技术力量上的薄弱。武延军说,那时候(2000年左右),真正能在操作系统底层在开源社区做出重量级贡献的人屈指可数。

  在2005年攻读博士学位期间,武延军参加了谷歌举办的第一届“编程之夏”(Google Summer of Code,GSoC)活动。在这次活动上,前FreeBSD基金会主席Robert Watson,亲自指导了武延军。

  大师亲自指导的经历,对武延军触动很大。“感觉就像是打开了一扇窗,看到了世界级大师是怎样去工作的。”武延军感叹的说。这也让他体会到,一名学生在导师指导下,真正去完成一个开源社区项目,实现对于学生启蒙意义的重要性。另外,在一个开源生态发展中,繁荣的社区意味着什么。

  2006 年,武延军博士毕业后留在了软件所工作,期间有一年多时间在美国纽约州立大学石溪分校攻读博士后。在美国期间,武延军参加了谷歌举办的第一届安卓开发者挑战赛(Android Developer Challenge),虽然最终未能获奖,但他看到了庞大开发者群体对于一个操作系统崛起的重要性。

  2008 年,武延军回国,按单位安排,他参与了多个国家“核高基”项目,“核高基”的“基”指的是基础软件,即操作系统,数据库等。武延军也因此参与了早期各种操作系统的部署,也包括当时非常具有前瞻性的汽车操作系统。

  但是,让武延军颇为遗憾的是,受限于当时国内技术水平及人才储备,“核高基”项目很多研发工作并没有在关键核心技术做出很好的突破,特别是在操作系统根社区方面,国内几乎没有布局。

  “如果当时,我们有自己的操作系统根社区,只要有足够的时间,就可以借助开源模式把中国需求转化为中国技术,变成中国产品,最后还能回馈开源社区形成中国贡献。”武延军不无遗憾的说。因为,我们没有自己的根社区,这就导致了一些中国需求和中国技术,最后只能提交到国外开源社区,并变成国外产品,反过来占领中国市场,这就导致了自主性缺失。

  好在openEuler根社区的出现,让武延军终于看到了转机。

  与openEuler的合作契机

  openEuler,源于华为自主研发的服务器操作系统EulerOS。

  2019 年 9 月 18 日,华为宣布开源EulerOS, 并命名为openEuler,2019年12月31日openEuler 开源社区正式上线。

  2020年3月,华为开发者大会2020上,软件所基于openEuler的发行版EulixOS 1.0正式发布。

  2021年11月,华为正式将openEuler捐赠给了开放原子开源基金会(OpenAtom Foundation),并明确表示华为不会做商业发行版,以此来打消合作者的顾虑,吸引合作者加入openEuler生态。这一举措效果是显著的,越来越多合作伙伴开始基于openEuler打造自己的发行版。

  截止到目前,在openEuler的12家商业发行版厂商中,软件所是一个特别的存在。毫无疑问,软件所并不是一家公司,而是一个国家级的科研、学术机构,这与其它11家公司有本质的区别,出现在商业发行版厂商中,这意味着什么?软件所为什么选择openEuler?

  软件所的加入,可以说是一个标志性的事件,这意味着产学研合作开始在openEuler开源社区里出现了,这将极大缩短学术界与产业界的距离。更意味着,软件所这样顶级的科研、学术机构对自身定位的调整,产业界需求成为其科研导向,并开始将资源投入和布局往产业需求倾斜。

  软件所为什么会选择openEuler?基于前面谈到的认知,国内缺乏一个操作系统根社区。而在根社区的建设与根技术的布局上,武延军认为,openEuler目前是国内布局最周全、实施推进最好的。

  软件所推出基于openEuler的发行版EulixOS目的与其它发行版是有区别的,并不是为了商业盈利目的。武延军强调,打造EulixOS的主要目的,是把软件前沿基础的、关键核心的技术在这个系统里进行集成和验证。这样,以后做研究实验都可以基于这个平台进行积累。而过去,所有科研实验几乎都是基于Red Hat等国外版本的操作系统,武延军希望,从EulixOS开始发生改变。

  软件所重点是做RISC-V(开源指令集)这类比较新兴的生态,包括编译工具链、编程语言库、开源软件供应链认证等非常基础的事,EulixOS的用户就是科研人员。武延军说。

  目前,软件所在 openEuler 70 余个 SIG 组的建设中承担了 7 个,占比很高。同时,在 openEuler 技术委员会的相关社区活动、代码 review、社区 issue 处理等方面也做了很多工作。

  开源软件供应链点亮计划

  「开源软件供应链点亮计划」是由软件所2020年发起,并长期支持一项活动,旨在解决基础开源软件面临的许可、质量、维护和技术支持等问题,进而影响整个软件产业的供应链。“开源之夏”是该计划的主打活动品牌。

  “开源之夏”对标谷歌“编程之夏”(Google Summer of Code,GSoC)。是一个面向全球高校学生活动,并不仅限于国内,鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展,培养和发掘更多优秀的开发者。

  虽然“开源之夏”得到了openEuler的大力支持,但并不只针对openEuler,而是涵盖了124个开源社区,500多个开源项目,不夸张的说,是在为整个开源软件产业供应链源源不断的发掘和输送人才。

  为什么叫“点亮”计划,这背后是有寓意的。武延军说。一个开源项目可能被很多工业级产品所使用,但是,有可能我们现在还没有人去参与,也没有人能掌握。如果这个开源项目出现了缺陷漏洞,或者后续版本不开源了,就会带来业务中断的风险。在这种情况下我们应该有人去把它的维护工作承担起来,而不是一直“拿来主义”。这是软件所发起开源软件供应链点亮计划的初衷。

  武延军将开源软件供应链中的各种风险环节称之为“暗点”,我们希望有人能把这些“暗点”去“点亮”,有人去维护,甚至去主导和演进,消除潜在风险,这就是“点亮”的由来。

  据武延军介绍,截止到目前,「开源软件供应链点亮计划」已经第三期。上一期,全球有400多所高校1800多名学生参与了这个项目,包含美国UCLA高校,英国帝国理工等知名高校,也有印度和巴基斯坦等国家的高校学生参与。

  很多人或许并不理解「开源软件供应链点亮计划」的意义,不少人认为,中国操作系统行业萎靡不振并不是技术问题,而是生态问题。但从武延军的角度看,最核心的问题其实还是技术问题。而攻克关键核心技术的战略基础是人才,未来主力军一定是在学生群体,过去,大部分学生对开源并没有太多概念,也并不了解开源社区的运作模式、开源软件的开发模式以及开源规则背后的理念。

  科研院所本身具有培养学生的职能,武延军说,从学生培养角度来说,我们有责任有义务尽早告诉他们哪些开源项目是高质量的、有价值的、参与其中对他们的成长是有益的。如果再拔高一个维度,哪些开源项目对产业有帮助,对解决国家面临的“卡脖子”问题有帮助,甚至对推动全球开源发展是有帮助的。

  「开源软件供应链点亮计划」就是这样一种方式的具体落地,而源源不断的技术人才输送,才能有力支撑中国开源社区的发展,并为其提供长期的发展动力,中国操作系统才会有未来。

2
相关文章