龙芯社区之星-陈华才:Linux内核中龙芯3号和KVM/MIPS的Maintainer
龙芯技术社区
龙芯技术社区旨在整合龙芯生态力量,为龙芯技术路线下的技术人员,提供技术交流、方案分享、课程学习、源码管理、在线体验以及人才服务的统一开放平台。为广大爱好者了解龙芯、用上龙芯、用好龙芯营造便利的环境,共同打造一个开放、平等、自由的龙芯生态。
社区之星-推荐语
龙芯社区之星,陈华才。陈华才博士主要负责龙芯3号处理器的内核开发,著有《用“芯”探核——基于龙芯的Linux内核探索解析》,做为Linux内核中龙芯3号和KVM/MIPS的Maintainer向Linux内核官方社区贡献了大量代码,为龙芯生态发展做出了突出的贡献。
陈华才,博士,高级工程师,毕业于华中科技大学。曾在Intel开源技术中心实习,从事Xen虚拟机监控器和Linux内核的开发工作。毕业后进入中科院计算所博士后流动站,同时被派往江苏梦兰集团企业博士后工作站从事研究工作,期间获“江苏省科技创新团队”称号。曾在江苏航天龙梦信息技术有限公司工作十年,担任副总工程师,负责龙芯3号处理器的内核开发工作。现工作于龙芯中科技术股份有限公司,继续负责Linux内核相关开发,是Linux内核中龙芯3号和KVM/MIPS的Maintainer,著有《用“芯”探核——基于龙芯的Linux内核探索解析》一书。
=====
成长故事:兴趣是最好的老师
1.大家好,今天我们非常荣幸的邀请到龙芯社区之星,Linux内核专家,陈华才博士,陈博士,跟大家打个招呼吧。
陈华才:大家好,我叫陈华才,毕业于华中科技大学。曾在Intel开源技术中心实习,从事Xen虚拟机监控器和Linux内核的开发工作。毕业后在江苏航天龙梦信息技术有限公司(前身是中科梦兰,最早的龙芯产业化基地)工作了十年,期间一直负责龙芯3号处理器的Linux内核开发。最近我有幸加入了龙芯中科技术股份有限公司,继续负责Linux内核相关开发。现在我是Linux内核中龙芯3号和KVM/MIPS的Maintainer。著有《用“芯”探核——基于龙芯的Linux内核探索解析》一书,大家有兴趣的话可以去看看。
2.做为内核领域的技术大牛,能说说您是怎么一步一步成长到现在的吗?
陈华才:说大牛,有点夸奖了。其实我的成长主要可以归结为两个因素:一个可以说是爱国情怀,另一个则是Just For Fun(只是为了好玩,也就是兴趣驱动的意思)。我其实是上了大学后才真正开始接触计算机的,那时候觉得电脑啊、操作系统啊,都很有趣。各种各样版本的DOS、Windows都安装过一遍,看看有什么区别,有什么好玩的。最后折腾来折腾去发现怎么这些都是外国的,就没有一个国产的操作系统吗?作为“生在红旗下,长在幸福中”的一代人,发现我们在计算机操作系统这方面,这么落后,就无法接受这个事实。于是便在网上寻找中国的操作系统,然后就找到了红旗Linux。当然,严格来说红旗Linux也算不上100%的国产,但是有一个部分国产的系统,总比一个纯外国系统要好,对不对?于是,Linux就这样为我打开了新世界的大门,扎进去就一发不可收拾了。作为一个自由软件,Linux内核的哲学是“人人为我,我为人人”,参与进去开发能够带来无穷的乐趣,这就是Just For Fun。兴趣是最好的老师,当你在内核里面做了贡献,得到大家的认可以后,就会形成一个正反馈,贡献越来越多,自己的能力和成就感也越来越强。
3.当前您主要关注和研究的技术领域有哪些啊?
陈华才:Linux内核现在已经非常庞大了,我个人目前主要的精力还是在Linux内核,围绕Linux有关的自由软件领域也会做一些事情,比如虚拟机(包括KVM、QEMU等)和图形栈(包括Xorg、Wayland、Mesa等)之类的,也贡献过一部分代码。
社区贡献:Linux内核中龙芯架构的维护者
4.您是怎么和龙芯结缘的,有什么有意思的小故事么,可以和大家分享下么?
陈华才:我与龙芯的结缘,跟我与Linux结缘的故事很相似。姑且把红旗Linux这样的国产Linux发行版当作中国的操作系统吧,但这电脑里的CPU依然不是国产的啊。我们常常说中国的计算机产业缺芯少魂,芯就是CPU,魂就是操作系统。这话呢,普通人说完也就完了,但我是学计算机的啊,这缺芯少魂有我的一份责任对不对?于是在寻找中国CPU的过程中,我发现了龙芯。大概是2006年,最早的一批龙芯产品(福珑微型计算机)在中科龙梦(现在叫航天龙梦,也就是我毕业后工作了十年的地方)问世了,我当时就买了一台,直到现在还珍藏在我家里。
5.在社区的贡献方面,您做的最多工作有哪些啊?
陈华才:主要是Linux内核中对龙芯的支持。如果碰到一些其他开源软件对龙芯的支持不好,我也会加以改进,比如QEMU、Xorg、LTP,都有一些。
6.在社区建设方面,您有哪些想法和建议,能分享一下么?也可以聊聊社区内的一些有意思的人和事。
陈华才:我觉得我们国内的一些企业,思路可能有一些偏差,一定要搞清楚社区建设的本质。这个本质不是利用社区、控制社区,而应该是团结社区、繁荣社区。对社区要友好,要提供足够的资源。至于社区里面的趣事其实很多,像我们龙芯社区里面的活跃分子,他们往往不仅仅是一个开发者,同时也可以是段子手,是表情帝。比如我们会把龙芯当成一种“信仰”,而信仰龙芯的这群人自称是“神龙教”。又比如我们有一个QQ群叫“龙芯神学院”,里面有一水的“首席科学家”。
技术展望:异构计算和量子计算机
7.在未来的前沿技术方向上,您觉得有哪些有意思的技术,可以给大家简单介绍下么?
陈华才:我觉得基于硅芯片的通用CPU可能快要碰到天花板了,当然对于龙芯来说还有很大的进步空间。关于整个计算机体系结构的发展方向,一方面是异构计算,比如各种各样的加速卡、FPGA、AI芯片等,最近苹果推出了一款M1芯片,号称把Intel都打趴下了,其实M1严格意义上来说,他是一个SOC,集成了GPU、AI加速和CPU等,它是利用CPU外部的加速卡,把整体性能提高了,这也是异构计算的一个发展方向;另一方面是量子计算机,当整个CPU碰到天花板以后,量子计算机应该是以后发展的一个方向,当然这还有很长的路要走。
开发者寄语:星辰大海里,我们一起成长
8.对于龙芯相关的研发人员,您有什么成长的建议么?比如学习方法、学习资料和学习渠道,能给大家推荐下么?
陈华才:我们常说,龙芯的征途是星辰大海,希望大家能与龙芯一起共同成长,成为见证历史甚至创造历史的人。很多事情,是不可以走捷径的,捷径可能会导致”基础不牢,地动山摇“。有人问我是怎么学到现在这个程度的,我的办法其实很简单,如果你坚持做一件事情,做10年,想不成为这方面的专家都难。至于学习方法,我觉得还是先学习通用Linux,再来研究龙芯,这样分两步走会比较合适一些。至于学习资料方面,书籍是很多的。比较流行的有《鸟哥的Linux私房菜》,比较适合想要成为熟练的linux用户;如果想做开发的话,可以看看《深入理解Linux内核》,这本书稍微有点老了,但很经典。新一点的,笨叔叔写的《奔跑吧Linux内核》也是非常不错的。另外,大家也可以去看看我所写的《用“芯”探核——基于龙芯的Linux内核探索解析》,这本书还是非常适合想研究龙芯内核的开发者的。