走近Linux开发者:Linus Torvalds

  30 Linux Kernel Developers in 30 Weeks是Linux.com 网站在2012年开始的一系列专题文章,该专题访问了三十位 Linux Kernel 的开发者,其中包含了Linus Torvalds和 Greg Kroah-Hartman 等广为人知的人士。这些人士所受访的问题包括:负责的项目、任职的公司、居住地、喜爱的工具甚至是工做时会听的音乐等等。git

  对于想要了解内核开发的人而言,这些文章值得一读,并且能够从中了解一些信息,例如多数的受访者习惯于使用命令行界面的工具来工做,在桌面环境下亦然。此外有很多人表示本身偏好在安静的环境下工做而不放任何音乐。这些受访者还分享了许多对于开发者新手的建议,例如能够从感兴趣或者比较小的项目着手,并专一在上面,以及不用害怕与其余开发者交流等。编程

  Linux Story 在接下来的日子里会为你们讲述这些内核开发者的故事,敬请期待。浏览器

  欢迎来到30周30位Linux内核开发者系列专访!本文是该系列的第一篇。Linux内核开发社区在不少方面都是独一无二的。社区中的人们所负责策划的是世界上最大的合做开发项目,而且对操做系统以及将来技术的发展有很大的影响。在接下来的日子里咱们将逐步更新本系列文章,向你们展现他们如何工做,如何跟他们一块儿工做以及什么使得他们伟大。工具

  开篇介绍的是Linus Torvalds。本周Linus在他的家乡芬兰参加千禧技术奖典礼,成为2012千禧技术奖的得主之一。在他离开前花时间回答了咱们的采访。学习

Linus Pic copy

  你的名字是?开发工具

  Linus Torvalds测试

  你在社区中扮演什么角色 / 负责哪一个子系统的开发?网站

  我是内核的顶层维护者,不直接参加任何子系统开发。可是偶尔会参与VFS层 (虚拟文件系统层) (以及更偶尔地参加VM讨论)。编码

  你的收入来源是什么?操作系统

  Linux 基金会。

  你在哪居住?为何选择那里?

  俄勒冈州波特兰市,至于缘由嘛,这里安静的多,比硅谷更宜居,从搬来至今已经好多年了。也许气候没有那么好,但我相信这里更适合孩子的成长。还有在这边咱们可以承担得起大一点的学区房。

  你最喜好的软件开发工具是什么?你一般使用什么?

  我只开一个浏览器(收发邮件和打发时间),和在几个终端中跑git。偶尔会使用gitk窗口浏览git历史记录。大多数时间是读和回邮件,合并开发树以及查看结果。

  其余我倾向于使用的工具是 perf,用于对我关心的负载问题进行压力测试(主要有内核编译和一些git工做负载)。

  如何参入Linux内核开发?

  嘿嘿,缺少常识和写操做系统的知识,不可能胜任这份工做。

  是什么让你对这份工做始终抱有热情?

  仅就技术层面来讲,我喜欢不断完善作些修修补补的事情。可事实是这份工做让我和其余人打交道,这一点真算得上意外收获。

  在协做开发过程当中你以为好玩的是什么(嘴仗,愚蠢代码的提交,惊人的成就)?

  我认为我喜欢的部分是某人使用Linux作一些彻底疯狂的事情。从技术角度看,是一些毫无心义但又使人叹为观止的事情(甚至花费几个月干这事)。

  像Alan Cox移植Linux到8086上的工做。或者一些使用了拥有RAM和SD卡的8位微处理器来构建本身的计算机的家伙,在开发板上编写一个ARM仿真器,而后启动 Linux (很是很是慢)。

  你对想进入该领域的开发者有什么建议?

  从小事作起。不必定非要作Linux,有不少的开源项目须要帮助,你能够学习如何参与到其中。一旦你确实以为用户模式的编程是在浪费时间,想要参与到内核开发中,不要尝试对内核代码进行大改,应该尝试找出一些小的问题,而后解决掉。一些像驱动程序没有如期的运行的问题。

  若是你们看到你在提交不少复杂的补丁前已经作了一些事情,花些时间学习协同开发是有帮助的。

  但最重要的是要有“好的品味”。这个不太好描述的,倒是我我的寻找的东西。人们一般用“正确的方法”作事,我在这里的意思并非指你应该遵照咱们这么多年摸索积累出来的那些规则(可是你确实最好按照这些规则来作事)。其实我特别想谈论一些可能出现的难以捉摸的代码质量问题,写代码须要有强烈鲜明的意识去作对一件事情而且不会漏掉特殊状况和复杂性, 同时也能够避免没必要要的抽象、作它应该作的, “只作一件事,而且把它作好”。

  你在编码的时候听什么?

  我须要彻底安静的办公环境。当我驱车带孩子的时候才听音乐,工做时我不想听到任何声响。不能有音乐,电脑的风扇也不能有噪音。只要安静。

  在哪一个邮件列表或IRC频道或会议中能够找到你?

  我不使用IRC或其余的实时通信工具,我只用邮件。我接收全部的内核和git邮件列表,但我有自动分析模式,这样我就能够查看我关注的或者我有被CC或要求查看的主题。

  说到会议,对我来讲一般是指 Linux 内核峰会,然而大多数年份,我也会尽量出席Linux Conf Australia (LCA)峰会。我喜欢这个会议由于它召开的时候在澳大利亚正值他们的夏季。可是 LCA 对我来讲只是一个工做完成以后的放松, 因此我仅仅是隔年参加一次或者更长时间才参加一次。

  有时候我也会出席一些其余的会议,(而出席的缘由)一般是由于这些会议某些地方颇有趣,好比说某次会议结束以后我能顺便潜个水。

  感谢你,Linus!下周咱们将对话Thomas Gleixner。本文由“www.zrnkyy.com”编辑

相关文章
相关标签/搜索