This is the second of a three part series that began last Tuesday on Linux Torvalds’ keynote interview at this year’s LinuxCon. In today’s segment, Torvalds talks about how the GPL has helped prevent fragmentation.
“Don’t get me wrong,” Linus Torvalds said, “we still argue. We’re not all happy people, we don’t love each other.”
He was talking about the Linux kernel community, completing his answer as to the “lowlights” of his years as Linux’s lead developer.
“I suspect a lot of developers really don’t like each other,” he continued, “but quite often, even if there’s not a lot of happy love feelings, I get the feeling there’s a lot of respect for the technical side and things are working very well — in ways that things have not always worked.”
“Did you ever really consider walking away from it?” prompted VMware’s Dirk Hohndel, the interviewer and Torvalds’ old friend. The two seemed to be only vaguely aware of the audience as they spoke, although Torvalds occasionally cast a glance in the audience’s direction to keep it engaged. Mostly the interviewer and the interviewee were connected to each other, with the audience watching something of a private conversation being held for their benefit.
Torvalds seemed to have trouble with his reply and never really answered the question about whether he’d ever seriously considered quitting. “I can think of…but they have been very rare. I mean, they have not been…”
Instead, he abruptly returned to talking about kernel developers and maintainers. “It’s been a great community; we’re actually somewhat famous,” he said. “The kernel mainly is famous for not being a great community. To a large degree it’s been because people then highlight the bad things going on. People are so nice, in general. People are…I wouldn’t say polite. Very many people are never ever polite. But you can just feel the fact that people want to work together and want to make a better system and that really makes for a great community.”
Hohndel took the cue, if that’s what it was, and changed the subject. “As a kernel community, over the last 25 years there have been challenges. One of the ones that always came up, and I remember this in the early days when SMP was introduced, was the question of fragmentation. How do we keep one single kernel? What’s your thought about the Android kernels where all the different vendors are so far away from mainstream?”
“I used to be worried about fragmentation and I used to think that it was inevitable at some point,” Torvalds replied. “Part of that was obviously the history of Unix, where everybody who was looking at the history of Unix and comparing Linux through traditional Unix was saying it’s going to fail, because it’s going to fragment, because that’s what happened before and we’ve seen this, so why even bother. There, I think, the license made a huge difference.
“Me and the FSF, we don’t have this loving relationship, but I really love the GPL version two. I really think the license has been one of the defining factors in the success of Linux, because the whole enforced you-have-to-give-back has meant that fragmentation has never been something that has been viable from a technical standpoint. Fragmentation can still happen due to social issues or, my biggest fear, fragmentation would happen due to different markets.”
The “markets” he was talking about include big business, the enterprise and academia, a world populated by supercomputers, big iron and embedded systems, a space with very little consideration for the lowly desktop.
“SGI was pushing Linux into thousand core machines and our SMP was kind of wobbly even on eight CPUs,” he remembered. “It was good if you had two, it was okay if you had four, eight was kind of pushing it, and then SGI comes along and says, ‘We have this 256 CPU machine and next year we want to put it on a thousand twenty-four, and long term more.’ They wanted to talk to me about how to manage this and I told them that ‘you should just go off and do your own thing, because we’re not there. You should do your own big iron version of Linux.’ And they did to some degree, but they kept moving things back [upstream] and the standard kernel also kept trying.
“That’s where the license comes in,” he continued. “The code is out there and you have all these people who can try to merge it back, because anybody can do that. We ended up just improving to the point where our limits from the standard kernel went away and the SGI people were really happy to try to push their code to us so that they’d have less maintenance headaches with all the changes they did. That experience just convinced me that even if you have completely disparate machines and target markets, we really can have a single image from the source code standpoint.”
Which brought the discussion to mobile devices, with vendors who “are so far away from mainstream.”
“You mentioned Android,” Torvalds said. “I don’t think it’s a huge deal. The biggest problem with Android is that in the embedded market on the cell phones you have this odd dichotomy where hardware is the newest of the new. There’s a new chip coming out and three weeks later there’s a prototype phone, and two months later, in some parts of the world, there’s actually a phone on the shelves with this new hardware.
“But they have this model where software tends to lag by much more than that, so the software versions are often two years old or a year and a half old, because that’s what they had and hardware developers are really excited about new hardware but they just want to run the old software and then they hack it out to work on new hardware. That has been somewhat of a problem always in the embedded space and now in Android, but even that is actually getting better.”
The theme that seemed to be developing in the interview was that everything is getting better, which is good to know.
Read Part III of our coverage of Linus Torvalds’ keynote interview at LinuxCon.