在龙芯,自主创新的文化理念培养孵化了一大批技术创新型人才,他们不光在本职工作上全情投入,同时也经常活跃在各大技术社区贡献智慧。他们通常深藏在幕后,埋头于代码之中,今天我们邀请他们走到台前,通过人物专访,说说他们的“芯”路历程。
人物一
陈华才
人物简介
陈华才,博士,高级工程师,毕业于华中科技大学。曾在Intel开源技术中心实习,从事Xen虚拟机监控器和Linux内核的开发工作。毕业后进入中科院计算所博士后流动站,同时被派往江苏梦兰集团企业博士后工作站从事研究工作,期间团队获“江苏省科技创新团队”称号。曾在江苏航天龙梦信息技术有限公司工作十年,担任副总工程师,负责龙芯3号处理器的内核开发工作。现工作于龙芯中科技术股份有限公司,继续负责Linux内核相关开发,是Linux内核中龙芯3号和KVM/MIPS的Maintainer,著有《用“芯”探核——基于龙芯的Linux内核探索解析》一书。
可以分享一下您的成长经历吗?
A:兴趣是最好的老师
其实我的成长主要可以归结为两个因素:一个可以说是爱国情怀,另一个则是Just For Fun(只是为了好玩,也就是兴趣驱动的意思)。我其实是上了大学后才真正开始接触计算机的,那时候觉得电脑啊、操作系统啊,都很有趣。各种各样版本的DOS、Windows都安装过一遍,看看有什么区别,有什么好玩的。最后折腾来折腾去发现怎么这些都是外国的,就没有一个国产的操作系统吗?于是借助红旗Linux,走进了Linux世界,扎进去就一发不可收拾了。作为一个自由软件,Linux内核的哲学是“人人为我,我为人人”,参与进去开发能够带来无穷的乐趣,这就是Just For Fun。兴趣是最好的老师,当你在内核里面做了贡献,得到大家的认可以后,就会形成一个正反馈,贡献越来越多,自己的能力和成就感也越来越强。
社区方面您做了哪些工作?
A:围绕Linux内核开展相关工作
当前我主要关注和研究的技术领域在Linux内核,围绕Linux有关的自由软件领域也会做一些事情,比如虚拟机(包括KVM、QEMU等)和图形栈(包括Xorg、Wayland、Mesa等)之类的,也贡献过一部分代码。从龙芯CPU出发,完善Linux内核中对龙芯的支持。如果碰到一些其他开源软件对龙芯的支持不好,我也会加以改进,比如QEMU、Xorg、LTP,都有一些。
社区建设方面您有哪些感悟?
A:社区建设的本质应该是团结社区
在社区建设方面,我觉得我们一定要搞清楚社区建设的本质。这个本质不是利用社区、控制社区,而应该是团结社区、繁荣社区。对社区要友好,要提供足够的资源。至于社区里面的趣事其实很多,像我们龙芯社区里面的活跃分子,他们往往不仅仅是一个开发者,同时也可以是段子手,是表情帝。
未来的技术发展,您个人看好哪些领域?
A:异构计算和量子计算机方向
关于整个计算机体系结构的发展方向,一方面是异构计算,比如各种各样的加速卡、FPGA、AI芯片等,最近苹果推出了一款M1芯片,号称把Intel都打趴下了,其实M1严格意义上来说,他是一个SOC,集成了GPU、AI加速和CPU等,它是利用CPU外部的加速卡,把整体性能提高了,这也是异构计算的一个发展方向;另一方面是量子计算机,当整个CPU碰到天花板以后,量子计算机应该是以后发展的一个方向,当然这还有很长的路要走。
给开发者的几点建议
有人问我是怎么学到现在这个程度的,我的办法其实很简单,如果你坚持做一件事情,做10年,想不成为这方面的专家都难。至于学习方法,我觉得还是先学习通用Linux,再来研究龙芯,这样分两步走会比较合适一些。至于学习资料方面,书籍是很多的。比较流行的有《鸟哥的Linux私房菜》,《深入理解Linux内核》,《奔跑吧Linux内核》也是非常不错的。另外,大家也可以去看看我所写的《用“芯”探核——基于龙芯的Linux内核探索解析》,适合想研究龙芯内核的开发者的。
人物二
杨铁柱
人物简介
龙芯社区之星,Linux爱好者、内核开发者和社区活跃贡献者,专注于文件系统、内核调测和性能调优等领域。致力于推动社区内核在龙芯平台上直接编译和升级、正常启动和运行,积极参与内核社区,解决内核实际问题,实现内核实际需求,为龙芯生态的发展做出了突出贡献。
您是怎样一步一步走到现在的技术level的?
A:找好个人发展方向,始终怀有信念与希望
我觉得我只是一棵小草,根据自己的能力和兴趣先找方向,在解决问题和实现需求的过程中,不断实践和学习,时刻保持成就感和危机感,知我所能,我所能者,尽善尽美;知我所不能,我所不能者,虚怀若谷。不懒散不傲慢,耐得住寂寞,挡得住诱惑,受得了委屈,有信念有希望。
您在社区维护方面负责哪些工作?
A:确保Linux社区内核与龙芯平台适配
我的主要工作是Linux社区内核对龙芯处理器和桥片的支持,已保证在龙芯平台上可以直接编译和升级、正常启动和运行,除此之外在调测工具方面也有一些投入。
社区运维方面有哪些经验?
A:内部带动大家参与,外部广泛建立合作
我一直希望参与龙芯社区内核的人能够越来越多,希望有朝一日龙芯的产品内核能够约等于社区内核,最近一年我和龙芯公司外面很多参与社区内核的人都建立了联系,龙芯公司内部也有不少人向社区提交补丁,我们和社区内核的维护者也建立了良好的合作和信任关系。有一些补丁,我们都是先提交社区,经过多次讨论和评审,合入社区之后再合入产品内核,我们也会收到社区维护者的一些意见和建议,参与社区某种程度上来说,也有利于公司产品内核的质量。
下一步的工作方向能和我们透露一下吗?
A:未来将投入到内核稳定性评测
内核稳定性评测是我们现在投入的一个方向,产品内核在正式发布之前都会经过很多测试,但是在用户实际使用时还是会出现一些稳定性问题,我们在尝试通过一些工具尽早发现和解决这种问题。
给开发者的建议
最好的学习方法就是实践,如果想参与社区的话,可以订阅邮件列表,查看某个方向的补丁记录,多使用最新内核,发现问题后尝试解决并提交补丁到社区,多看书多看资料,循序渐进,厚积薄发。
近期,龙芯技术社区上线,欢迎点击“阅读原文”查看!
也希望众多龙芯开源爱好者们加入到龙芯各大社区里来,发挥大家的聪明才智共建开源世界!
另,龙芯中科也欢迎有理想有抱负的软件技术大咖加盟,码动未来,构建芯生态!详见此处