With all the talk about Linux fragmenting, and debate over whether it will ever scale to the enterprise, the man who started this whole fracas remains a pillar of calm through it all. We talk to Linus about the changing Linux community, his thoughts on the future of Linux, and how his life has changed in the past two years.
|PHOTOS © GARY WAGNER|
Though leading the Linux community has been likened to shepherding cats, the closest thing we have to a lead cat-juggler is the man who wrote the Linux kernel, Linus Torvalds. But Linus is taking a less public role as of late, in part because he’s settled down with his wife, two daughters, new car (a BMW Z3, thank you very much), and a new house in Silicon Valley. Also, he’s been punching the clock at Transmeta Corp. as well as working some rather long hours to get the much anticipated 2.4 kernel finished and out the door — a release that was originally expected in December of 1999.
Linus took the time to meet with Linux Magazine’s Adam Goodman, Robert McMillan, and Jason Perlow at last August’s LinuxWorld Expo in San Jose to tell us what he sees in Linux’s future. Also in attendance was regular contributor Lee Gomes.
Linux Magazine: Do you picture yourself as the leader of Linux?
Linus Torvalds: Yeah, but it’s not in the charging sense where I’m holding the flag while the troops follow me as hard as they can. I’m not even a manager because being a manager implies that you have some kind of job. Linux is more of a huge crowd milling around with tons of different ideas, where everybody wants to kind of feel the warmth of everybody else.
Think of penguins in Antarctica and you’ll get the idea. You’ll have these people at the edges that want to go one direction, but at the same time they want to have the other penguins with them to keep warm, so that they’re not standing out there freezing to death. So they’re pushing in different ways, and I’m in the middle with a big red flag where people can use me as a way to see where the community is going.
LM: Do you think that some day you may be called in to mediate between where different members of the Linux community — vendors, for example — want to take the kernel?
LT: I don’t think so. There will be people with hurt feelings — there have been people with hurt feelings — though usually it’s not widely discussed. But I don’t understand people who gripe about what commercial companies do. They can choose to ignore it if they want to. Actually, I kind of understand because I used to be nervous about that myself a long time ago; and it’s just never been an issue, so I stopped being nervous about it. I don’t care anymore.
LM: What were you nervous about before?
LT: The controlling with money kind of thing, which is something you see in the press. People will say that these people are trying to take over Linux. That happened with early players like Slackware. Then people were wondering, “Hmmm…these people are selling CDs. What will that result in? The end of the world?” Then IBM got some of the same flack. Oracle got the same flack. Red Hat is obviously getting the same flack right now, still.
But, in the end, there’s very little that money can do to take over from a technology standpoint. It’s basically too expensive to try to take over all the developers. I mean, IBM tried to do things with money on OS/2. That doesn’t work. People are worried about Red Hat. Let’s face it; compared to the stuff that got Linux started, Red Hat’s resources are small. Even IBM’s resources are really small in the global picture.
LM: IBM recently told Linux Magazine that they’d contribute any technology that the Linux community wants them to contribute. But, they said they didn’t think the Linux community necessarily wanted a lot of enterprise features right now.
LT: IBM certainly wants to sell [enterprise features]. Maybe more than IBM, you’ll find companies like SGI that are hungrier to sell to the enterprise. That’s the only market they’re going after. SuSE is also very geared towards being a kind of enterprise thing; probably because Linux is — to some degree — taken a bit more seriously in Germany. It was used for business in Germany before it was used for business over here. And there are a lot of people interested in doing enterprise, big iron stuff.
LM: Are you one of those people?
LT: I think it’s interesting, but at the same time I don’t actually think the problems seem to be there. It’s something that has been solved not just once, but ten times before. That’s something that all the Unix vendors ended up doing anyway. There’s a lot of money involved in that market, so there’s not a lack of resources in that sense. It will happen eventually.
LM: But right now, the way things are structured, don’t you need to approve whatever happens to the kernel?
LT: No. That may be how people see it, but the way things actually happen is that people do the work independently. And when it’s done, they have the code and they deploy Linux internally. By that time it’s usually been discussed to death and then some. I may have had input before, and I may still have some issues, but it’s not as if I’m the gating factor. People are doing this in spite of me and then merging code back later on.
LM: I’m confused — can people put code in the kernel even if you don’t want it there?
LT: That happens all the time. Even a lot of features that become part of the official release have been around as patches for years. I’m there to say, “Okay, let’s not hurry into this. Let’s not make any bad decisions.”
LM: It sounds like you’re saying we’re going to see more and more people adding kernel patches and creating different kernels in order to add enterprise features.
LT: Actually, I would not say more and more people. There aren’t that many people who are doing the kind of work we’re talking about. We’re not talking about hardware that is easily available. It’s not more people, it’s just a different quality of people. So when IBM says that they’ll only give the Linux community stuff that it asks for, they don’t get it. They are, in effect, part of the Linux community. Nobody asked them to do something; they did something and by doing something they became part of the Linux community.
If you look back to the community eight years ago, it was very homogeneous — basically technical people with university degrees who were really interested in operating systems. They may not have necessarily been interested in using it for anything practical, but they were interested in the technology. That kind of person still exists, but now there are different people out there too. There are the GNOME people, who are interested in the user interface, and there are the SGI, IBM, and Siemens people who are becoming part of the Linux community.
LM: IBM is the Linux community as much as you are?
LT: Oh yes. They may not realize it because they don’t think of themselves that way. IBM is huge and they have a lot of resources. And they have a lot of people who have done the kinds of things that they wanted done before. That’s a huge advantage for IBM as a member of the Linux community. But it’s not going to be me who asks for those types of features because I don’t need a high availability cluster of 100 machines. I’m fairly happy with my limited computing resources.
LM: But what if IBM needs a change made to the kernel? Don’t they need to go through a certain process in order to get it to be part of the standard Linux kernel?
LT: No, but that’s probably how they are used to working. IBM is a hierarchy, and if you’re an engineer you don’t just add a feature because you want to — you get permission. The bigger the feature, the higher up you have to go. That’s not how Linux works. The way it works with Linux is that you just do it, and you do it in the open so that others can comment on it and possibly say, “Okay, you’re being really stupid here.”
The way you get my approval is not by asking for my permission. You get my approval by doing it and then saying, “This is what we did, this is why we did it, and look, we have all these people who are actually using it and they’re really happy with it. And we think it fits really well into the system. Could you consider just making it part of the standard system, because it would be so much easier for us?” That’s how it has always happened. It’s just the scale of the people involved is different than it used to be.
The Trouble With Standards
LM: Do you believe interoperability standards like the LSB [Linux Standards Base] are important?
LT: I think that the LSB shouldn’t even be seen as interoperability standard. Standards are really documentation. They’re documentation for how things work. Sometimes people make standards before the things work, and those standards tend to be really bad. Sometimes people make standards by writing down how things work, and those standards tend to work very well indeed. I think LSB is the latter kind of standard. And I think it should be. In the Unix world there’s POSIX. The Unix people always had trouble coming to grips with making standards before, and what POSIX did differently from all the previous Unix standards was that instead of trying to create a good new standard for all of Unix, they took existing practices and they wrote them down.
LM: What kind of event is necessary for the LSB to start making any significant progress?
LT: I think that people need to really want to have it bad enough. I mean, people want to have the LSB right now, but people are not necessarily committed enough to put a lot of resources into it. So, it’s not going very fast. At the same time, there are a lot of people who are committed to doing LSB. Right now, there’s this preliminary version out that is kind of the subset of what they want the final thing to be.
It’s going to happen. But people should see it as documentation of existing practices. They should not see it as the road to heaven. That’s how some people see the standards. They think that standards are what decide how things work. If you look at standards that way, you’re always going to be disappointed.
LM: How much do you worry about Linux fragmenting?
LT: Not very much. The license tends to keep fragmentation down. If there’s a new feature, and people actually agree that it’s really useful, you just import it into your source tree and you’re done.
LM: How about the idea that one distribution — say Red Hat — might become the de facto standard that people write applications to?
LT: I believe in competition. Whatever wins. It’s the survival of the fittest.
LM: What if that doesn’t include your kernel?
LT: So then it doesn’t include my kernel. It’s not a big deal.
LM: I’m asking because Caldera has indicated that they believe Linux is not only the kernel, but also the API that resides on top of it. They plan to release a UnixWare kernel with Linux APIs that could be used as a high-end replacement for the standard Linux kernel.
LT: If they think they can do that, then by all means, they should go ahead. That’s where competition comes in; the best wins. Competition is good as long as it’s honest, and you don’t kick the other person in the groin in order to win. I’m confident enough that it’s going to be the open source Linux kernel that’s going to be the best. But I don’t care if somebody else tries to compete.
I think if [Caldera's kernel] were to become more popular than [standard] Linux, then that’s okay. It’s not as if I haven’t had more than my 15 minutes of fame. I don’t actually believe that will ever happen, but it’s not that personal to me.
LM: When you say you believe in competition, I’m wondering, do you include Solaris and NT?
LT: Oh, yes.
LM: And on a personal level, do you think it is fun trying to beat NT and Solaris?
LT: It’s very much been a part of the motivational thing to always have something to compare against. If you don’t have anything to compare against, it’s very hard to make good judgments on what you’re good at and what you’re bad at. For example, one of the issues last year was the MindCraft thing [MindCraft is an independent research laboratory that last year reported test results -- paid for by Microsoft -- indicating that Windows NT outperformed Linux in certain basic server tasks. -Ed].
LM: How hard was that to deal with?
LT: It was really personal for a few months. I took it fairly personal, especially the way they did it.
LM: What happened?
LT: Well, it was a panel discussion in Chicago and it was the first time I’d been on the floor at the same time as people from Microsoft. Five minutes before the panel started, the Microsoft guy handed out this paper that contained the results from the MindCraft study, and I didn’t even have time to really see what it meant. So, when he actually took this up in the panel, it was hard for me to say anything.
LM: But in the end, Microsoft was right, don’t you think?
LT: Microsoft was right. The point was that it actually gave us a much better baseline to compare what we were bad at. We’d probably been naive and thought that we were doing some things really well. Then having somebody do that comparison was very motivational. That was quite important.
Everybody expected some kind of attack from Microsoft, so I think we’d been a bit arrogant in believing that there were so many benchmarks that we were so much better at than NT. It took a lot of people by surprise, including me. We really lost badly in that one. There was certainly that kind of naivete.
Beyond the Troublesome Teens
LM: What do you think it will take for Linux to be able to make the leap to the desktop?
LT: I don’t know. I think that, to some degree, you’re going to find it a lot easier for new people to start using it. I mean, [DOS basically grew up] with the teenagers that used it. It’s hard to enter that market. It’s just so painful to take an existing machine and do the upgrade. Even Microsoft finds it hard to get people to upgrade their own operating system. Windows 2000 has been out for [a while], and the numbers don’t look that good.
I suspect one of the first places you’ll really start seeing Linux on the desktop is in businesses, because it’s easier to get into that market. It’s less personal. I think you’re starting to see some of that already. Perhaps not so much in the U.S., but I think you will see businesses start adopting it next year.
LM: What applications will drive Linux into this market?
LT: To some degree, it’s not the applications. The thing that I always felt about ApplixWare and StarOffice is that it just didn’t matter how good they were. Even if they were as good as Word, they would still be a niche kind of thing. That’s one of the reasons I’m really happy that Sun got bludgeoned into making StarOffice really open. The difference between StarOffice being available basically for free on CDs and [StarOffice] being GPLed is that the next version of StarOffice will be on every single Linux distribution. That kind of availability may make a difference. I mean, the biggest advantage of Microsoft’s soft-ware is that it’s available everywhere. That’s the thing that open source really changes; it makes software really available.
LM: Suppose that Microsoft released Office for Linux. Do you think it would make any difference?
LT: In the end, the thing that really makes Windows the platform of choice is not only do you not have to think, “Is Office available?”, but that you also don’t have to think, “Hmm… Are a thousand game titles there? Is Quicken available?” It’s the no-brainer choice.
Actually, I think Office would be kind of huge. It would be big because A) a lot of people do use Office and B) it also would be a huge psychological factor. Basically, it would mean that Linux and the Mac would be completely on par.
LM: But the Mac has a huge application base and many things to recommend it, and still the vast majority of people choose Windows.
LT: People get Windows because it’s still the no-brainer. You can argue that the Mac has almost all the programs, but people will still say “almost?” Plus, the Mac has other problems. It’s hardware availability is much, much worse.
LM: You’re making it sound like it is a negative thing to be a no-brainer.
LT: No, no, it is a positive. It’s absolutely a positive. What Linux needs to do is become a no-brainer decision. And that’s not going to happen fast. The no-brainer point is five or ten years in the future. To reach the point where the desktop is actually better than the competition, and you have [the applications that] 90 percent of the people actually use — I think that will happen next year.
LM: What kind of user do you think is going to care about the 2.4 kernel?
LT: I think there are some users that just couldn’t use Linux before. 2.4 will make a difference to them. There are a lot of performance improvements even for normal use, even on dual CPUs. It’s really painful for me to go back to a 2.2 kernel because when I do a kernel compile, my screen becomes jerky under X, when I do a parallel compile, and the load shoots up to 30, 2.4 is so much smoother; it’s really noticeable.
LM: What do you see as a Linux 2.6-level problem? Or a 3.0-level problem?
LT: The plan for some time was that 2.4 was going to be the SMP port. What happened was that 2.0 was the first kernel that did multi-architecture and did SMP basically. So now in 2.4, we do multi-architecture and we do SMP pretty much as well as we can do it. The next jump is probably going to be NUMA (Non-Uniform Memory Architecture) — things like that. That would be 3.0. So, there may not be a 2.6. It depends on what actually happens there.
LM: Do you think that there will always be one Linux kernel?
LT: Probably not. To some degree, there are already different kernels — like Victor Yodaiken’s RTLinux kernel. It might happen in the really high-end space, too. One of the things that the SGIs and the IBMs of this world might be interested in is all of these 512 CPU monster-computers. The kind of changes they require might not be suitable for a normal machine anymore. We tried to make it easy to synchronize RTLinux with the Linux kernel; but we didn’t try to synchronize them to death. They have their own tree, and I’ve also tried to make sure that it’s easy for them to update to my tree. Victor and I have had a lot of discussions about how to abstract things out so that their tree doesn’t need to be unnecessarily different. But [this may become] an issue for the very high-end or specialized markets.
LM: So you think that in a few years we’ll still be using the same kernel for desktops and servers?
LT: Oh yes. There are a lot of advantages to having one system that is flexible. We’ll see basically the same kernel but with tweaks; there’s no question about that. You already see that different Linux vendors have different tweaks. I mean, some Linux vendors, for understandable reasons, are more interested in localization. But on the whole, the differences between a normal desktop and an eight-way server are not that big.
LM: Do you have any kind of sense of how far the kernel will scale?
LT: I don’t know. I used to think that it wasn’t worth going past about eight processors, just because it becomes so expensive. And right now, eight-way machines are starting to be economically viable — not for normal people, but for small businesses. I don’t see that it’s completely impossible that we’ll have a low-level CC:NUMA going up to 32 processors in a few years. There are people who want to go to the hundreds. I don’t know if the hundreds are going to be possible with the same source base. Probably not. Thirty-two? It’s not certain but it’s not completely unlikely either. It also usually depends a lot on the load. Depending on how you use [the kernel], it may scale or it may not.
LM: Last question: Are you a millionaire yet?
The Regis Question
LT: Well, I was and then I bought a house.
LM: So you’re not a millionaire now?
LT: On paper I probably am.
LM: So this has actually worked out pretty well for you after all.
LT: Oh yeah. I’m not complaining.
Robert McMillan is executive editor of Linux Magazine. He can be reached at email@example.com.