今天我们有幸邀请到了《奔跑吧Linux内核入门篇》作者笨叔叔,一起来看下他的所思所想。
Q:异步社区:可以介绍一下自己吗?目前正在做哪些事情?
Q:异步社区:恭喜您《奔跑吧Linux内核》出版1年多实现了销售与口碑双丰收,这本书出版后带给您最大的变化是什么?又是什么初衷开始创作《奔跑吧Linux内核入门篇》这本书,两次写书心态有什么变化吗
笨叔叔:首先要感谢异步社区这个平台,让我可以实现自己的一个小心愿。写第一本《奔跑吧Linux内核》的初衷是想把自己多年的工作经验和总结用文字的方式记录下来。因为工作的关系,因为我是FAE嘛,常常需要面对客户的“蹂躏”。通常客户会给你一些***钻的问题,而这些问题,FAE工作人员的通常做法是把它转发后端的研发同事来回答,而我喜欢自己研究代码,自己解决,当然不是所有的问题都能一个人解决。但是与研发同事的讨论会让自己学到很多东西。
第一次写《奔跑吧Linux内核》的时候,完全没有想到要出版,只是为了把自己东西用电子档案的方式记录下来。后来写的差不多了,才联系上异步社区,所以要非常感谢异步社区这个平台。第二次写书,也就是这本《奔跑吧Linux内核入门篇》,就是带着任务来的,反而有点忐忑不安,生怕辜负了读者和老师们的期望,也衷心希望各位读者朋友可以毫不留情地给我批评和建议,以便后续修改再版的时候可以做到更好。
Q:异步社区:《奔跑吧Linux内核入门篇》您最想将这本书推荐给谁看?怎么看?
笨叔叔:《奔跑吧Linux内核入门篇》最适合已经会安装Linux系统的读者,比如通过《鸟哥的Linux私房菜》这本书学会了安装和配置常用的Linux工具和软件服务。但如果把Linux当作产品开发平台和服务器运维平台,是远远不够的,因为我们知道国内的大公司,比如BAT,都有很强大的内核团队在维护着他们的服务器。因此,我们需要了解Linux内核的方方面面,入门篇这本书最适合Linux运维的小伙伴继续深入学习Linux系统和内核的入门教程。
另外,入门篇也适合高等院校操作系统课程的参考教材,这本书配套了70多个动手实验和将近500页的教学使用的PPT课件,以及全套的实验环境和参考代码。这本书出来之后,已经被多家高校选作操作系统课程的参考教材,比如大连理工大学、上海交通大学、南昌大学等。
同时这本书也适合各大企业作为新员工的培训教材,在出版之初,已经有多家国内的公司的研发部门经理表示采用这本书作为新员工培训教材。
笨叔叔:视频课程,算是一个意外的事情。当时《奔跑吧Linux内核》出版后,不少读者纷纷留言表示对书中的内容理解起来比较困难,希望我可以出视频课程,这样方便阅读和理解书上的内容。基于这个原因,我开始尝试录制配套视频课程。视频课程和书中内容配套的,后来根据读者的需求,不断增加新的内容,比如Linux内核代码解读和导读、Vim8工具的使用、git工具的使用,以及Kdump+crash挑战死机黑屏专题等。
Q:异步社区:国内外众多的公司和行业都采用Linux作为首选的操作系统,学习Linux操作系统的人员也越来越多。Linux内核开发是一个让人听起来就觉得很了不起的工作,成为Linux内核开发领域的程序员,最大的挑战是什么?职业发展路径是怎样的?
笨叔叔:没错,现在Linux系统是操作系统的绝对霸主。除了传统的服务器领域和嵌入式领域,我们可以看到越来越多的产业都在用Linux,包括工业4.0、IoT、人工智能、物联网等。可以说Linux才是操作系统的第一,不仅是装机量第一,而且参与开发的人数和公司数量也是第一。Linux的产业生态会带来很多的职位需求,Linux内核开发在这些职位当中是最有含金量的,薪水最高,发展前景也是最好的。
最新的Linux内核代码量已经远远超过了2000万行,庞大的代码量给Linux内核的学习带来了前所未有的挑战。有挑战,意味着机遇。有时我们需要问一下自己,如果没有不断挑战的能力,我们凭什么要求老板给高薪?或者说仅仅会安装Linux系统和配置一些服务,老板为什么要给我们高薪?所以,我觉得Linux内核对学习者来说充满了挑战和机遇。在中国制造2025、人工智能、物联网等发展的大趋势下,少不了Linux,大家一起加油奔跑吧!
Q:异步社区:你觉得工作中最重要的软技能是什么?为什么?
Q:异步社区:Linux程序员的自我修养,需要哪些硬核本领?
笨叔叔:Linux涉及的东西很多,比如体系结构、C语言编程、操作系统、编译原理、汇编语言、外设芯片总线(如USB、PCIe)等。我们需要学习东西很多很多,大家加油吧!
Q:异步社区:弃Windows而拥抱Linux之后,有人预测2019年可能会是Linux年?您怎么看待这个预测?
笨叔叔:在我看来,早已经是Linux年了。Linux系统除了在PC领域被Windows打得“溃不成军”,在其他任何领域都绝对是老大,比如服务器、超级计算机、手机、嵌入式、IoT等。在操作系统领域,很难有其他的OS可以超越Linux。我觉得有两个原因,一是Linux的生态是完善的,支持的硬件是最多的,比如很多硬件厂商出来一些新东西,最先要支持的操作系统就是Linux;二是Linux的开发人员是最多的,也是最活跃的社区,有人气、有众多大公司的支持、有资金投入,这是其他任何一个社区都无法比拟的。
Q:异步社区:LinusTorvalds于内核邮件列表(LKML)中正式宣布推出Linux5.0rc1版本,宣告Linux进入5.0时代,对于Linux内核程序员有什么新的挑战?您觉得优势是什么?
笨叔叔:现在Linux内核的大版本升级已经不是因为有一些重大的特性,而是因为子版本号比较大了,所以Linux创始人Linus希望使用一个大版本号。
Linux5.0的出现,对于所有Linux内核开发人员的最大挑战是,Linux内核代码更新速度太快,比如平均2个月一个新版本。隔几个版本之后,我们会发现有不少代码发生了变化。Linux内核是采用社区开发的方式,全球有200多家顶尖IT公司和1000多名优秀的程序员参与其中,大家可以想象一下,一个人要学会1000多人的智慧结晶,当然是挑战重重。
有资金投入,这是其他任何一个社区都无法比拟的。
Q:异步社区:异步社区:有没有写下一本书的打算?可以“剧透”一下吗?
笨叔叔:因为Linux5.0出来了,因此打算把《奔跑吧Linux内核》更新到最新的Linux5.0,会增加很多新特性。这些特性一部分是在Linux4.x期间增加的特性,比如HMM等;另一部分是原来就在Linux内核里,只是《奔跑吧Linux内核》没有讲到,比如IOMMU、VFIO、hugepage、cgroup、kdump死机等。我打算根据广大读者提的建议做比较大的改动,主要的改动是增加背景知识的部分,减少书中的代码量,把代码关键部分展现出来。另外还会增加思考题,这部分主要是从工作中提炼,还有一部分是读者提出来的疑问。
Q:异步社区:对您工作和生活帮助最大的三本书?一定要推荐的?
笨叔叔:计算机方面的图书,人民邮电出版社和异步社区里有很多经典的图书,我在这里就不一一推荐了,“计算机好图书哪里找,上异步社区”!
笨叔叔著作
《奔跑吧Linux内核入门篇》
作者:张天飞
扫描二维码,一键购买
本书是一本介绍Linux内核实践的入门书,基于Linux4.0内核,重点讲解Linux内核的理论和实验。本书分为12章,包括Linux系统入门、Linux内核基础知识、内核编译和调试、内核模块、简单的字符设备驱动、系统调用、内存管理、进程管理、同步管理、中断管理、调试和性能优化,以及如何参与开源社区等内容。此外,本书还介绍了Linux内核社区常用的开发工具和理论,如Vim8和git工具等。书中包括70多个实验,帮助读者深入理解Linux内核。