Linux kernel developer Andrew Morton spoke at the Bay Area Linux Users Group (BALUG) June 24, 2008 meeting, held at the Four Seas restaurant in San Francisco.
The talk drew a fairly large crowd. As is the custom at BALUG meetings, the first hour or so was spent socializing and enjoying a buffet dinner.
Andrew's presentation was interesting and informative. He spoke about his past and current roles as a Linux kernel developer, the current state of the kernel and a number of other topics; he covered many areas. Andrew was also most gracious in answering a myriad array of questions, both during and after his presentation.
Throughout his talk, Andrew emphasized that testers are the kernel team's most valuable resource. He said no special testing procedures are needed to contribute as a tester - just use Linux for your daily work, preferably the latest kernel snap-shot, and aggressively produce bug reports. Andrew recommends testing as the best first step to becoming a kernel developer (he also said picking up and completing an abandoned device driver is another good way to get into kernel development.) He identified wireless hardware, USB and Nvidia as big problem areas. Speaking of problem areas, Andrew expressed a strong aversion to the Ext3 file system, complaining about how the journaling "takes control of your system for 15 seconds and doesn't give it back." Also on the topic of problems, he emphasized that bugs are triaged and those affecting only a few machine types are not likely to get fixed, but this again presents an opportunity for someone wanting to get involved in kernel development to gain experience and recognition.
Andrew mentioned in passing that the tickless architecture is finished, works well, and is mainly a power saving feature. He also mentioned how pervasive Linux has become as an embedded operating system; he was surprised to learn that Linux is the operating system in virtually every high definition television produced in Asia.
Andrew said 2.6.25 was a very special kernel and the team worked very carefully on it. He mentioned that these days many new kernel features are driven by corporate users. Andrew's favorite new kernel feature is containerization - he said virtualization is a "terrible hack" and that containerization will be a much better solution to the problem of running multiple operating systems on a single computer. This is quite important, considering all the effort that has gone into virtualization by both hardware and software designers in recent years. If containerization proves successful, it will impact the virtual machine market. Andrew mentioned the OpenVZ project has done a good job of implementing containerization.
Andrew spoke about the Linux kernel team's resiliency. He said the team is larger than ever and the development process is very efficient. To illustrate the team's efficiency, he mentioned the massive amount of code submitted and incorporated into the kernel these days. He said the process is so "well oiled" that he only emails Linus two to three times a year. He thinks that at this point Linus is more important for setting the prevailing philosophy, tone and direction and for his "tie breaking" function. He stated that technically, other people can do what Linus does and people currently do things Linus has done in the past. This is good news for Linux users.
Andrew spoke about how his primary job was to integrate all the major mm subsystem trees with Linus' kernel tree and that now he integrates Stephen Rothwell's linux-next tree with Linus' kernel tree. Andrew mentioned he plans to ease out of the kernel team and that he has a replacement who is gradually assuming more of his responsibilities.
Perhaps the most striking thing about Andrew is his level of enthusiasm. He obviously takes great pleasure working with Linux. Attending his presentation was fun and informative.