对话Linux内核守护人Andrew Morton

主持人:谢谢Jonathan Corbet的讲话,接下来我们请Linux内核2.6版的守护人Andrew Morton来做一个对话。

Jonathan Corbet:我有几个问题是和大家讨论得出来的,如果有问题的话也可以回答观众的问题,首先有一个问题就是,刚才我也提到过,像在内核当中我们的这种 Pach是比较高的,我想问一下Andrew Morton你如何应对这个问题,就是你如何解决比较高的一个Pach的问题,同时维护它的内核。

Andrew Morton:实际上我并不是进行管理。并不是说像你们想象当中管理的那么多,实际上大家有时候心里上比较依赖我。而且我有的时候对他进行这种审查也并不是很多,如果当这个比例比较高的时候,那么我会告诉别人说,不好意思我没有这个时间来处理这个,那么同时我经常会拒绝一些其他的研发人员的请求,因为我实在是没有那么多时间。

Jonathan Corbet:两年前您参加一个会议,你说这个速度会降慢,因为你觉得已经基本上完成了,那么在过去这几年当中,我觉得确实是这样的,那么你觉得你们会希望怎么样呢,你希望它减慢这个速度吗,还有就是这种高速的变化,那么为什么会这样呢?它为什么会以这么高的速度进行不断的变化呢?

Andrew Morton:我觉得现在包括这个参与公司的数目和应用程序有关,我们现在有很多的研发人员,他们对内核有更多的要求,我觉得这个是为什么我们现在有一个这种高的替换率,或者高的更新率,而且现在新的技术不断的出现,还有新的硬件技术等等,都需要进行更多的支持,但是我觉得最后内核更新的速度会降慢的,因为从最根本的一个改变来说,比如说出现新的CPU,新的研发等等。但是其中有一些内核的技术,将来会比较成熟的。那么所以将来这个是会稳定下来,速度也就会放慢的。

Jonathan Corbet:你觉得在它降慢之前还需要什么样的变化。你觉得现在在哪些方面我们还需要更多的工作。

Andrew Morton:人们经常会问我这样的问题,我不知道在将来6个月之后,这个内核会提出什么样新的内容,因为我们现在没有一个在内核方面统一的控制机制,我们没有路线图,我们没有计划,所以我也不知道,只能说每一个公司,每一个人都会对Linux进行贡献。那么人们经常会告诉我们他们在做些什么,所以我只是一些猜测,但是在长期角度来说,实际上我不知道人们脑子里面想什么,我也没有办法说它长期会往哪些方向发展,我觉得最好的预测,就是我一般会读你的报告,比如说从你的发言当中,我就知道很多。

Jonathan Corbet:还有另外一个问题,就是在十年以前内核的开发,那么这种Pach,他们放到网上,经常没有什么反馈,那么可能网网就是要等到一个新的版本出来才能看到结果,那么我觉得呢你带来的一个最好的变化呢,就是说来建立了一个很积极的相应的机制,也就是说呢,人们会把他的东西放上来之后,会听到一个反馈,所以这样他们放上来的Pach不会被人家遗忘等等,我想问一下对于Pach的反映一般是什么样的呢,如果我贡献一个东西放到网上,没有人给我反映,没有人理睬的话,那么我应该做呢?

Andrew Morton:我总是希望保证每一个我所得到的人的一些贡献都会有一些响应。特别是对于一些人员他们的一些成果来说,那么如果你要是发过来,如果其他人有评论,但是我没有给你评论的话,那么就是说我对于其他人比较同意的,那么如果要是我和其他人的意见不一样的话,我也会给你一个我的响应或者是反馈。比如说我圣诞节过了两周的假期,但是我还有500个Pach等我回去看,所以我就不断的进行这方面的工作。还有一些就是你可能,你觉得放到那儿了,然后你觉得没有人理你,那么你就给我发一个私人的邮件,我会给一些反馈。一般来说我会告诉你,比如说有些人是不是反对,有些人是不是赞同,我一般会给一个反馈的。

Jonathan Corbet:人们在考虑加入到我们这个社区的时候,他们非常难以去找到方式,如何和我们的社区两交互,所以我有一个问题,对于新的开发者来讲,要成为这个社区的一部分的话,他们如何来加入?如何避免相应的一些错误?

Andrew Morton:我觉得有一件事情人们必须要小心,那就是我们都是通过Email来做自己的工作,如果你希望有一个人一直对你有一个回应,而且是非常恰当的回应的话,这个其实对于一个比如说一周都没有做回应的人来讲是非常难的。所以从别人哪里收到邮件是非常重要的。通常我们也会有这样的问题。他们会问我到底我如何开始这个内核开发呢,我认为最好的答案就是你不要问这个问题,不要问这种问题就开始开发就行了。那么开始开发首先需要一个非常好的英语阅读的能力,你需要写英语,需要网络连接和计算机,然后就开始内核开发,把你的计算机连到网络上,下载一下内核,然后就开始。加入到社区,然后对社区更熟悉,下一步就是下载最新的内核版本。下载我的版本的话可能会发现一些缺陷,一些错误,那么和其他的开发者要交流,到底如何解决这些问题,这是一个非常简单的过程。在经过两三个月之后,你可能就已经成为了一个内核的开发者,也成为了这个社区的一员,所以每一次采取一步,所以最重要的就是要开始,一旦做了两三个月的开始的工作,就会非常熟悉整个环境,那么下一步就需要考虑到底对于你自己来讲需要贡献一些什么样的原始的,原创的一些工作,发来一些变更,然后呢在整个变更库里面就有了你自己的名称,那么人们就可以搜索到你的名字,可以看到你做了哪些工作。那么这才是一个非常正确的方式来开启自己的内核开发的工作生涯。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzwyxd.html