写点什么

在中国做操作系统研发 20 年是种什么体验?丨 openEuler 英雄汇

  • 2020-12-26
  • 本文字数:3323 字

    阅读完需:约 11 分钟

在中国做操作系统研发 20 年是种什么体验?丨 openEuler 英雄汇

20 年的操作系统从业经历,让武延军对技术、生态与商业有了深刻的理解。在他眼里,国内操作系统走过的历程虽然漫长,但发展方向总体上仍在往前推进。制约中国操作系统行业发展的问题出现在哪些方面?为什么中科院软件所会选择与 openEuler 一起合作?一个成功的操作系统应该是怎样的?带着这些问题,InfoQ 记者采访了中国科学院软件研究所特聘研究员、博士生导师,副总工、智能软件研究中心主任武延军。


20 年从业者视角下的操作系统行业


1997 年,武延军就读于清华大学计算机系,大三的时候有幸进入中科红旗实习,从此以后就与操作系统行业结下了不解之缘。


当时中科红旗董事长孙玉芳也是中科院软件所的老师,我后来从清华保送到中科院软件所跟着孙老师读博士。06 年博士毕业留在了软件所工作,期间有一年多时间在美国 Stony Brook 大学读博士后,08 年回国以后一直在中科院软件所工作至今。


这近 20 年的操作系统从业经历让武延军感触颇深,虽然中国的操作系统行业发展历程比较长,但其实还一直处于一个不停往前的状态。


2000 年左右我在中科红旗实习,见证了产品化操作系统进入到个人领域的历史时刻。在此以前,Unix 这类操作系统都只能在大公司或者银行、电信行业里见到,但那几年像红旗、幸福、蓝点这些 Linux 的出现,让我们学生也能接触到操作系统的底层技术,这是我印象最深的时刻。


可能今天的开发者们很难想象当年那个时代,国内能接触到底层技术的渠道并不多,互联网上共享出来的资料和文档也远不如今天这样翔实,每一个操作系统行业的从业者都历经艰辛。


2000 年左右真正懂得 Linux 内核级开发的人特别少,当时我们在红旗的粗略统计不超过 100 人。包括后来国家启动的一些操作系统的科研项目时,也发现了我们技术力量的薄弱,真正能在操作系统底层、开源社区做出重量级贡献的人屈指可数。包括学术界知名的人也非常少,直到后来上海交大陈海波老师打开局面,我们在国际上才逐渐被人知晓。


操作系统相比于其他技术稍显“硬核”,加上其较长的产出周期,也导致了业界对其的关注度一直远远低于其他新兴软件层面的技术。但近两年来,国内对操作系统行业的关注度有了质的提升,按武延军的话说——“爷爷辈的人都在关注操作系统”。


从社会关注度到人才数量的规模化,再到以 openEuler 为代表的社区活跃度,中国操作系统行业的拐点将至。

openEuler 与中科院软件所的故事


其实华为在内部研发 EulerOS 的时候,我们已经有所了解,华为也跟中科院软件所做过多次技术交流。包括 EulerOS 团队的很多成员、奠基人也是我的同事、师兄。在中国操作系统行业里,很长时间我们都是在国外根社区的操作系统发行版的基础上做定制、裁剪、修改、完善,比如 Debian、Fedora、Ubuntu 等,但这样的基础实际上是不牢靠的。去年开源的 openEuler 正式发布以后,中科院软件所也觉得这是一次机会,于是就很顺理成章地达成了战略合作的意向。


在战略合作协议达成以后,中科院软件所做操作系统方向的人才全面投入了 openEuler 的建设中。目前中科院软件所在 openEuler 70 余个 SIG 组的建设中承担了 7 个,占比相当高。同时在 openEuler 技术委员会的相关社区活动、代码 review、社区 issue 处理等方面也做了很多工作。


今年 9 月,我们正式把 openEuler 作为中国科学院大学必修课的参考系统,大家都在 openEuler 上做实验,这也是首次把 openEuler 带到校园教学里。今年中科院软件所发起了开源软件供应链点亮计划,首次活动吸引了国内外 129 所高校、389 个社区开源项目参与,这其中 openEuler 作为共同主办方也做了很多工作。


什么样的操作系统是成功的?每个人都会有自己的评判标准,在武延军这里,标准有三点:


第一是社区的国际化。我们的操作系统发展,不能只是国内在用,自己人在玩,一定要走出国门,不能闭门造车。比如现阶段至少辐射日韩、东南亚,未来扩展到欧洲,最后再席卷全球。


第二是价值的高端化。像 openEuler 这样的操作系统、开源社区,未来一定要出现像 Red Hat 这样具备高商业价值的公司,能证明它在商业上可以取得广泛的成功。


第三是用户的平民化。平民化意味着,不管是我们做开发的,还是学生或普通爱好者,都能普遍地使用这个操作系统。


至于其他的技术形态,例如微内核是否要取代宏内核、分布式全场景、低代码 / 无代码的编码模式,每个人的想法可能都不太一样,我觉得只要多往更好的方向去努力就行了。


采访期间,正值 Red Hat 宣布停止维护 CentOS 8,武延军对此也有自己的观点:


国内很多厂商,特别是做服务器的厂商已经习惯了用 CentOS,因为它是来自 Red Hat 商业版经过验证的开源版本,放在服务器上非常稳定。包括很多云厂商 host 上的主机默认都是 CentOS,大家已经习惯了这种局面。


这个消息出来以后,短期内可能不会有太大的影响,毕竟以前的版本目前还都能用。但长期来看,其实是给大家敲响了一个警钟,并不是所有开源的东西都是可持续的,如果你不参与到社区当中,最后影响的人还是你自己。


至于这个事件对国产操作系统带来的机会,我反而认为这本身就应该是国产操作系统应该做的事情。国内厂商不能只用开源的版本,更应该参与到其中,甚至主导一些软件包的开发、维护,这样在问题出现的时候,国内厂商有能力、有底气站出来说这个事情对我们没有影响,我们甚至可以像 Oracle 一样站出来说你们可以用我们的 Linux 发行版。从这个角度看,我认为 openEuler 有这方面的潜质。对 openEuler 的发展,也同样需要社区的广泛参与,才能给它往后的发展带来更多可能性。


技术仍是核心问题,人才培养至关重要


今年,武延军在中科院大学教授操作系统的必修课程,这门 60 个学时、三个学分的必修课也吸引了不少学生群体。国内目前陆续也有一些高校开设了操作系统课程,但在整体的人才孵化层面还有一定差距。


CS(Computer Science)专业其实应该是一个非常核心的学科领域,国外很多知名大学几乎都会开设像操作系统和编译这样非常硬核的课程,但在国内很多高校却没有开设,或者说因为缺乏这方面的老师,开设不起来。这是我们后续需要加强的地方。


如果你在上学的阶段没有系统地接触过操作系统的底层原理,以后做相关的工作可能还是错过了最好的一段学习时间。


过去几年间,InfoQ 关注到很多小学、初中在义务教育阶段开设了编程语言的学习课程,但对操作系统这样偏基础软件的领域反而是没有过多涉猎,包括很多大学计算机系对其关注度也不够。武延军认为这也是对行业发展不好的地方。


从技术、商业、生态三个角度讲,很多专家认为现在操作系统行业不是技术问题,是生态问题。但从我的角度看,最核心的问题其实还是技术问题。我们在 Linux Kernel 等很多社区里,非常活跃的贡献者还是很少。华为在 Linux Kernel 里贡献量到了第二位,这是一个很好的现象,但我们的差距还是比较大。


另一方面,核心技术的掌握还不够,掌握核心技术的人也还不够多。等哪天我们解决了这两个问题,可能很多问题,包括商业问题和生态问题也就能迎刃而解。


技术未来的落脚点一定是落在学生群体,如何让更多学生群体拥抱看起来过于“硬核”的操作系统行业,也是当前面临的一大问题。为此,中科院软件所发起了“开源软件供应链点亮计划”,并在今年举办了暑期 2020 编程计划,支持上百名学生,在社区导师(均为开源社区资深人员)的带领下,参与开源社区项目、贡献代码和文档。部分学生通过此次活动甚至成为了顶级开源社区认可的核心代码提交人员(committer)。


我其实跟很多老师做过交流,大家发现学生的技术方向选择还是多以就业为第一目的。如果要吸引学生群体的加入,一定要在就业市场、产业需求上做一定的引导。华为在这方面做得非常好,真正地把底层的基础软件的价值给体现出来,通过持续的投入获得商业上的回报,让大家看到基础软件领域其实是有巨大价值的。


第二方面,要有老师的引导。操作系统行业本身不是一个产出周期快的领域,老师对学生的选题考核一定不能短平快,不然会使学生产生挫败感。参与一个操作系统的项目,可能半年没有成果。但搞一个 AI 模型,可能半个月就能有所成果。这两者之间的度量方式一定不能相同,老师对学生的引导也不能盲目跟风。参与规模庞大的 TensorFlow 开源社区完成一两个神经网络模型所能取得的成长,一定比不上深度参与一个维护者少但影响广泛的 OpenSSL 项目。

2020-12-26 10:582494

评论 1 条评论

发布
用户头像
能和电动汽车一样就会好很多 出几个蔚来 理想 这样的操作系统厂商
2020-12-26 17:01
回复
没有更多了
发现更多内容

全球分布式云大会:AntDB超融合流式实时数仓,打造分布式数据库新纪元

亚信AntDB数据库

AntDB AntDB数据库 企业号 5 月 PK 榜

mate云端元宇宙系统智能合约链游开发技术

Congge420

区块链

【GPT-4理论篇-1】GPT-4核心技术探秘 | 京东云技术团队

京东科技开发者

人工智能 openai GPT-4 企业号 5 月 PK 榜

完整版来了!阿里Dubbo技术负责人准备的源码教程,很有大厂风格

Java你猿哥

Java 架构 dubbo ssm

DevEco Studio 3.1 Release | 动态共享包开发,编译更快,包更小

HarmonyOS开发者

HarmonyOS

IDO&IEO盘点,包括PoseiSwap等即将面向市场的潜力打新活动

西柚子

“数据进化论”2023数智科技大会官宣:从看、用到智能,与客户共进化

奇点云

发布会 奇点云 数据云 数智科技大会

PAG动效框架源码笔记 (三)播放流程

olinone

ios android 特效

【实践篇】教你玩转JWT认证---从一个优惠券聊起 | 京东云技术团队

京东科技开发者

分布式 JWT 企业号 5 月 PK 榜

全靠这份阿里大佬的“Java进阶面试手册”收获蚂蚁offer

Java你猿哥

Java kafka Spring Boot Netty java面试

airasia Superapp × HMS Core:便捷出行,悦享全程

HarmonyOS SDK

HMS Core

基于Jmeter 的接口自动化测试实践探讨

jackwang

NFT盲盒卡牌游戏系统开发搭建

Congge420

区块链

技术同学如何快速熟悉业务

老张

系统架构 业务

Java常用对象映射工具的介绍和使用

echoes

智能合约DAPP挖矿系统开发应用

Congge420

区块链

顶会ICSE-2023发布LIBRO技术,缺陷自动重现率达33%

华为云开发者联盟

人工智能 华为云 大模型 华为云开发者联盟 企业号 5 月 PK 榜

为什么 GPU 更适用于时域算法,而 CPU 更适用于频域算法?

思茂信息

gpu cpu 计算机 电脑 电脑硬件

为世界第一大癌症高效研发首创新药,AI大模型助力药物研发叩开未来之门

飞桨PaddlePaddle

百度飞桨

速下载!交通业数据安全政策汇编发布

极盾科技

数据安全

元宇宙链游系统开发搭建技术

Congge420

区块链

“中国法研杯”司法人工智能挑战赛:基于UTC的多标签/层次分类小样本文本应用,Macro F1提升13%+

汀丶人工智能

人工智能 nlp 文本分类 小样本学习

500行代码手写docker开篇-goland远程编译环境配置

蓝胖子的编程梦

Docker 容器 云原生 k8s 命名空间

如何进行测试分析与设计-HTSM启发式测试策略模型 | 京东云技术团队

京东科技开发者

测试 测试策略 企业号 5 月 PK 榜 HTSM

RocketMQ你不得不了解的 Rebalance机制源码分析

Java你猿哥

Java 源码 RocketMQ ssm client

常用的表格检测识别方法 - 表格区域检测方法(下)

合合技术团队

人工智能 文字识别 表格识别 表格检测

上线半天下载量破100W!美团大佬的Java性能调优实战手册,超详细

Java你猿哥

Java JVM 多线程 ssm 性能调优

TIDB General Log抓取分析神器

TiDB 社区干货传送门

管理与运维 故障排查/诊断

LED显示屏技术升级方向介绍

Dylan

技术 升级 LED显示屏

龙蜥开发者说:构建软件包?不,是构建开源每一个角落!| 第 20 期

OpenAnolis小助手

开源 操作系统 龙蜥社区 开发者说 优秀贡献奖

Midjourney|文心一格prompt教程[技巧篇]:生成多样性、增加艺术风格、图片二次修改、渐进优化、权重、灯光设置等17个技巧等你来学

汀丶人工智能

人工智能 AI绘画 MidJourney prompt learning

在中国做操作系统研发 20 年是种什么体验?丨 openEuler 英雄汇_开源_小智_InfoQ精选文章