371 lines
19 KiB
HTML
371 lines
19 KiB
HTML
<!--startcut ==========================================================-->
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<title>An Interview with Linus Torvalds LG #32</title>
|
|
</HEAD>
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
|
ALINK="#FF0000">
|
|
<!--endcut ============================================================-->
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
<center>
|
|
<H1><font color="maroon">An Interview with Linus Torvalds</font></H1>
|
|
<H4>By <a href="mailto:rubini@pop.systemy.it">Alessandro Rubini</a></H4>
|
|
</center>
|
|
<P> <HR> <P>
|
|
|
|
<P>
|
|
<B>Alessandro</B>: Can you please dedicate some of your time to us?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: Sure, no problem, I'll try my best.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Are you happy with living in the States? I preferred having
|
|
a Finnish leader rather than another american ruler.. how do
|
|
you feel in this respect? Do you plan to come back?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I've been very happy with the move: I really enjoyed being at the
|
|
University of Helsinki, but I decided that trying out something different
|
|
was worthwhile, and so far the experience has been entirely positive.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
I agree that Finland is a lot more "neutral" in many ways, and that had
|
|
its advantages in Linux development: I don't think anybody really dislikes
|
|
Finland, while a lot of people are nervous about or even actively dislike
|
|
the US. So in some sense that could have been a downside, but I felt that
|
|
most people trusted me more as a person than as a Finn, so I didn't feel
|
|
it to be a major issue.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
Moving to the US has meant a lot better weather (even though this has been
|
|
one of the rainiest winters in a _long_ time here in the Bay Area), and
|
|
has also been very interesting. While I really liked my work at the
|
|
University, the new stuff I'm doing is more exciting - more on the edge,
|
|
so to say.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: We all know about the USA restrictions on cryptography; do
|
|
they affect Linux features in the field?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: It doesn't seem to be a real issue. The idiocy of the US cryptography
|
|
export rules were a problem even before I moved here: mainly because
|
|
if/when we add strong cryptography to the kernel we would have to make it
|
|
modular anyway in order to let the CD-ROM manufacturers (many of whom are
|
|
based in the US) take it out in order to sell overseas. So me moving here
|
|
didn't really change that fact - it only made it apparent that I can't be
|
|
the person working on cryptography (something that was fairly obvious
|
|
anyway, as I'm not really an expert in the area).
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
Anyway, regardless of the above I sincerely hope that the US cryptography
|
|
rules will be changed in the near future. The US rules have made a lot of
|
|
things more difficult than they should have been. (In all fairness the US
|
|
isn't the only country with problems: the French have even more of a
|
|
problem in this area and are trying to get other European countries to do
|
|
the same thing. Happily the French are a fringe group of loonies in this
|
|
matter, while the US has been a real problem due to being so central when
|
|
it comes to information technology).
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Did you ever think about leaving your role as Linux coordinator
|
|
or is it fun like it was in the beginning? If you would
|
|
leave, what would your next project be?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I've never seriously considered leaving - the only times the issue has
|
|
come up is really when somebody has asked me what the succession would be
|
|
in the case I no longer felt interested. Linux has always been so much fun
|
|
to coordinate that while it obviously takes a lot of my time I have always
|
|
felt that it was more than worth it.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Out of curiosity, how long do you write code daily, and what
|
|
is your current main activity?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I usually don't spend all that much time coding on Linux any more:
|
|
occasionally I have bursts of things I do when I code full-day for a few
|
|
weeks or so, but those are fairly rare, and mainly happen when there is
|
|
some fundamental shift in the kernel that I want to get done. During the
|
|
last year it's happened four or five times, mainly with regards to SMP or
|
|
the so-called "dentry" filesystem cache.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
Most of the time I spend reading and reacting to emails - coordinating the
|
|
others working on things, commenting on ideas, and putting together
|
|
patches. This is by far the most work: I'd say that my coding is only
|
|
about 10%, while the coordination is 90% of the work.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: How did you manage to write a free kernel and still earn your
|
|
living?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: Initially, I was a university student at the University of Helsinki. What
|
|
that means in Finland is that you get support by the goverment for a
|
|
number of years in order to be able to finish your degree, and there is
|
|
also a possibility to get special student loans. I suspect Italy has
|
|
something similar, although probably not as comprehensive as the Finnish
|
|
system.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
And after a year or two I was actually employed by the university as first
|
|
a teaching assistant and then later a research assistant, and the
|
|
university also actively encouraged me to be able to write Linux at the
|
|
same time.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
Right now, I obviously work at a commercial company, but even here I get
|
|
to do a lot of Linux work even during work hours because even though
|
|
Transmeta doesn't sell Linux or anything like that, there is a lot of
|
|
_use_ of Linux inside the company, so me continuing to work on it is
|
|
obviously supportive of the company.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
So I've always been able to do Linux together with doing my "real" work,
|
|
whether that was studying or working for a university or working for a
|
|
commercial entity. There has never been much of a clash, even though
|
|
obviously my working hours aren't exactly nine to five..
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Why didn't you turn to commercial support like Cygnus did? (I think I
|
|
know why :-)
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I just never felt the interest to turn any part of Linux commercial: it
|
|
would have detracted a lot more from my time to maintain a company or
|
|
something like that, and it was never what I was interested in.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
It would also have implicated Linux money-wise: I wouldn't have been free
|
|
to do what I wanted technically because I would be bound by constraints
|
|
brought about by having to feed myself and my family. In contrast, working
|
|
at the University or here at Transmeta, I make a living without having to
|
|
involve doing Linux-decisions into it - so I'm free to do whatever I want
|
|
with Linux without having to worry whether it will pay my next months
|
|
rent..
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
I feel a lot happier not having those kinds of pressures on Linux, and I
|
|
think most other developers feel the same way (they don't have to worry
|
|
about my technical judgement being corrupted by any financial issues).
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Do you think you changed the world or just fired the straw? (Again,
|
|
I know you)
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I started it, and I feel very proud of that. I don't hink I "changed the
|
|
world", but I feel privileged in being instrumental in changing a lot of
|
|
lives - it's a good feeling to know that what you do really matters to a
|
|
lot of people.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
I wouldn't go as far as saying that it "gives my life meaning", but Linux
|
|
definitely is a _part_ of my life, if you see what I mean.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: What's your opinion of Richard Stallman's work and philosophy?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I personally don't like mixing politics with technical issues, and I don't
|
|
always agree with rms on a lot of issues. For rms, there are a lot of
|
|
almost religious issues when it comes to software, and I'm a lot more
|
|
pragmatic about a lot of things. As a result, we know we disagree about
|
|
some things, and we actively don't try to work together too closely
|
|
because we know it wouldn't work out very well.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
The above may make it sound like I dislike rms, and at the same time that
|
|
is not at all true. Rms has obviously been the driving force behind most
|
|
of the current "free software" or "open source" movement, and without rms
|
|
the world would be a poorer place. And he _needs_ to be religious about it
|
|
to be that driven.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
So I guess the best way of saying it is that I really admire rms, but I
|
|
wouldn't want to be him, because our worldviews are different.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: On the practical side, what's the schedule for 2.2? What are the
|
|
main differences between 2.0 and the upcoming 2.2?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: As I looks now, 2.2 should be sometime early summer or so, but it's hard
|
|
to judge: there are a few things that really need to get fixed, and before
|
|
they are fixed there's no point in even thinking about it. Right now
|
|
there's a bad TCP performance problem that is holding things up:
|
|
everything _works_ ok, but it is serious enough that I can't imagine a 2.2
|
|
before it is fixed.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
The changes 2.2 will have are mainly much more mature support for the new
|
|
things in 2.0, namely SMP and multiple architectures. There are a _lot_ of
|
|
other things in there (the new dentry code, totally rewritten NFS etc),
|
|
but the SMP and architecture maturity is one of the most fundamental
|
|
things that 2.2 will have.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Bruce Perens claims "world domination: 2003"; is that realistic?
|
|
In your opinion, will the concept of free software gain
|
|
polularity in the mass market? In this respect, what's your
|
|
opinion about the move of Netscape Corp.?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: The "World Domination" thing is obviously always a bit tongue-in-cheek,
|
|
but I think that yes, a five-year timeframe for the free software movement
|
|
and Linux to make a major noticeable impact is not at all unrealistic. The
|
|
Netscape open source thing is one of the first indications of this, and I
|
|
think we'll see others doing similar things.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: How will the various free OS's coexist, in your opinion?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I think the current setup where people are aware of each other, but there
|
|
is no organized or official co-operation is probably how it will continue.
|
|
The whole point of Linux is that there is definitely room for more than
|
|
one operating system (especially if that one operating system is a bad one
|
|
made by microsoft ;), and I don't see that changing - the FreeBSD's and
|
|
other operating systems will be around. Maybe not in the same form (more
|
|
specialization etc), but I don't see any fundamental issues here..
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Or do you think that development of Wine and other tools will
|
|
lead to the cohexistence of two systems of similar technical
|
|
value, one free and the other proprietary, running the
|
|
same application programs? (Horrible question, IMHO).
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: No, I think the development of Wine will be an important step for the PC
|
|
operating systems arena, but that step will be in the way of leveling the
|
|
playing ground: when just about everybody can run the basic legacy Windows
|
|
applications like MS Office etc, that allows the systems to really compete
|
|
on being good at other things.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
So rather than having two systems of similar technical value, I think that
|
|
you'd have many systems that are all able to run the same basic
|
|
applications, but where the emphasis is on different things. Microsoft,
|
|
for example, ha salways emphasized mediocrity and high volume, while Linux
|
|
has (and will continue to) emphasized more technical issues.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Currently we lack free office applications. Is this a matter of
|
|
time, or do you think that these programs will only be available
|
|
from commercial companies?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I think that there will always be a niche for commercial programs, and
|
|
while I think we'll see free office applications proliferate, I don't
|
|
think that we necessarily _have_ to have them.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
The reason I personally want a free operating system and basic
|
|
applications is that I really think that if the basics aren't stable and
|
|
you can't modify them to suit your own needs, then you are in real
|
|
trouble. But when it comes to many other areas, those issues are no longer
|
|
the most pressing concerns, and then it is not as critical that you have
|
|
free access to sources.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Sometimes we hear of so-called ``standards'' that remain proprietary
|
|
(like I2O), is this the last rant of dying companies, or
|
|
is free software at risk?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I don't worry too much about I2O and other proprietary standards. The
|
|
whole idea of a proprietary standard has always failed - all of the
|
|
successful standards these days are fairly open. Sometimes they are
|
|
proprietary because the company that made them had enough clout to force
|
|
it to be that way on its own, but I don't think that kind of clout exists
|
|
anywhere else than at Intel and at Microsoft, and that even those two are
|
|
being eroded by competition.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: What is your position about the availability of Linux
|
|
modules in binary-only form?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I kind of accept them, but I never support them and I don't like them.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
The reason I accept binary-only modules at all is that in many cases you
|
|
have for example a device driver that is not written for Linux at all, but
|
|
for example works on SCO Unix or other operating systems, and the
|
|
manufacturer suddenly wakes up and notices that Linux has a larger
|
|
audience than the other groups. And as a result he wants to port that
|
|
driver to Linux.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
But because that driver was obviously not _derived_ from Linux (it had a
|
|
life of its own regardless of any Linux development), I didn't feel that I
|
|
had the moral right to require that it be put under the GPL, so the
|
|
binary-only module interface allows those kinds of modules to exist and
|
|
work with Linux.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
That doesn't mean that I would accept just any kind of binary-only module:
|
|
there are cases where something would be so obviously Linux-specific that
|
|
it simply wouldn't make sense without the Linux kernel. In those cases it
|
|
would also obviously be a derived work, and as such the above excuses
|
|
don't really apply any more and it falls under the GPL license.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: What do you think about the KDE-Qt question? Is Gnome going to
|
|
succeed?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I personally like Qt, and KDE seems to be doing fairly well. I'm taking a
|
|
wait-and-see approach on the whole thing, to see whether gnome can do as
|
|
well..
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: An interesting challenge is "band reservation" in the network
|
|
subsystem; is that going to happen any soon in Linux?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I'll have to pass on this one. It's not one of the areas I'm personally
|
|
involved with or interested in, and as such it's not something I'm going
|
|
to be very involved with any efforts that way. That's how Linux works: the
|
|
people who need or want something get it done, and if it makes sense on a
|
|
larger scale it gets integrated into the system..
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: Many people ask why the kernel is written in C instead of C++. What
|
|
is your point against using C++ in the kernel? What is the
|
|
language you like best, excluding C?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: C++ would have allowed us to use certain compiler features that I would
|
|
have liked, and it was in fact used for a very short timeperiod just
|
|
before releasing Linux-1.0. It turned out to not be very useful, and I
|
|
don't think we'll ever end up trying that again, for a few reasons.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
One reason is that C++ simply is a lot more complicated, and the compiler
|
|
often does things behind the back of the programmer that aren't at all
|
|
obvious when looking at the code locally. Yes, you can avoid features like
|
|
virtual classes and avoid these things, but the point is that C++ simply
|
|
allows a lot that C doesn't allow, and that can make finding the problems
|
|
later harder.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
Another reason was related to the above, namely compiler speed and
|
|
stability. Because C++ is a more complex language, it also has a
|
|
propensity for a lot more compiler bugs and compiles are usually slower.
|
|
This can be considered a compiler implementation issue, but the basic
|
|
complexity of C++ certainly is something that can be objectively
|
|
considered to be harmful for kernel development.
|
|
</font></blockquote>
|
|
<B>Alessandro</B>: What do you think of the Java phenomenon? Did you ever consider
|
|
integrating a Java VM, like kaffe, in the kernel?
|
|
<blockquote> <font color="navy">
|
|
<B>Linus</B>: I've always felt that Java had a lot too much hype associated with it, and
|
|
that is still true. I _hope_ sincerely that Java will succeed, but I'm
|
|
pragmatic and I'm not going to jump on the Java bandwagon prematurely.
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
Linux already supports seamless running of Java applications as it is, and
|
|
the fact that the kernel only acts as a wrapper for the thing rather than
|
|
trying to run the Java VM directly I consider to be only an advantage.
|
|
</font></blockquote>
|
|
<P> <HR> <P>
|
|
This article is reprinted with the permission of Infomedia, Italy. An Italian
|
|
translation of this article can be found at <A
|
|
HREF="http://www.pluto.linux.it/journal/pj9807/linus.html">
|
|
http://www.pluto.linux.it/journal/pj9807/linus.html</A>. The
|
|
interview was done by e-mail in February, 1998.
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Alessandro Rubini <BR>
|
|
Published in Issue 32 of <i>Linux Gazette</i>, September 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./henning1.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./vermeer.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
<!--startcut ==========================================================-->
|
|
</BODY>
|
|
</HTML>
|
|
<!--endcut ============================================================-->
|