FreeOS.com logo

FreeOS Most Popular
* Most Read stories
* Commented Stories
* Active Categories
* Non Linux Section
* User Submitters
* Top Polls
* Top Authors
* Top Reviews
* Top Rated
* Top Search Terms

Top Articles
* Writing a Linux device driver
* The Linux filesystem explained
* Samba NT Domain Controller
* Setting up Squid as your caching HTTP/FTP proxy
* Web server tutorial - Part 1

FreeOS Highlights
* Howtos (72)
* Reviews (20)
* Opinions (18)
* Interviews (8)
* News (3)

My FreeOS

Nick:
Pass:
Register

Forgot your password?

Contact Us
Contact Us

       

Project: Linux triangle Interviews triangle

Michael Tiemann CTO, Red Hat

By Prakash Advani <prakash@NOSPAMfreeos.com>
Posted: ( 2000-11-27 13:11:41 EST by )

"Red Hat has worked incredibly hard to make Red Hat 7 the best Linux
distribution ever, and I think we did a great job balancing a lot of complex
requirements. Did we make some mistakes? Yes. Are we fixing them? Yes."

Why did Red Hat decide to ship a development snapshot of GCC instead of the
most recent released version, 2.95.2?

There was a lot of discussion about this on Slashdot when Red Hat 7 shipped,
and with 20/20 hindsight, it appears that no better technical decision could
have been made. I will leave it to speculation as to whether we could have
navigated certain political minefields better, but let me explain the
rationale again.

Red Hat has many different constituencies, ranging from enterprise customers
to ISVs to kernel developers to systems vendors. It would have been great if
GCC 3.0 had been a released compiler and had all the quality, performance,
functionality, and features that our various constituents required. Alas, GCC
3.0 is very much a work in progress, and while we've contributed significantly
to that work (many Red Hat engineers are full-time GCC developers), GCC 3.0 is
still quite a ways off. At the same time, the latest released version of the
compiler, 2.95.2, had a number of significant issues that made it an
inappropriate choice. There were issues related to newer kernel development,
issues related to newer glibc development, issues related to the ever-changing
C++ standard, and issues related to processor support (we wanted to make Red
Hat 7 a first-class IA-64 development platform). After careful analysis, we
concluded that if we tried to bring 2.95.2 up to the level that we required,
it would duplicate large amounts of work that we and others had already done
on the development snapshot. We decided it would be better to stabilize that
snapshot, than add more features to a compiler that had already given us a
certain amount of trouble. I think that Richard Henderson, one of the main
GCC developers summed it up best on the kernel developer's mailing list:

If you want to blame someone in Red Hat for making the decision to ship a gcc
snapshot, then you might as well blame me.

The reasons are the following:

1. 2.95 is the least stable release that we (the fsf gcc team) have shipped
in a long time. It does ok on x86, but is pathetic on the other platforms
that Red Hat cares about -- especially Alpha.

The late July snapshot we shipped is most definitely more stable, largely I
think due to Geoff's automated regression tester bitching at people when they
break the tree.

2. C++ in 2.95 is already ABI incompatible with egcs 1.1 and gcc 3.0, so
clearly (to my mind anyway) it didn't matter whether we shipped 2.95 or a
snapshot, we would still be incompatible with Red Hat 6 and Red Hat 8.

3. While the C++ ABI for 3.0 is not complete, the API is. That is, the
snapshot we chose will be compatible with 3.0 at the source level. With the
exception of "export" I understand from Jason that we are now very close to
standards conformance.

4. We could either spend our QA time reviving the dead 2.95 branch, or we
could spend that QA effort on mainline, helping get 3.0 stable.

Someone on this thread complained that the RPM that we shipped is highly
patched. Bar two (the sbreg_byte patches), all of those patches are in
current cvs. Since at some point procedure would not allow us to take a new
snapshot, those 85 patches are a visible side effect of the QA work that was
done.

Frankly, I didn't even consider C++ ABI compatibility with other Linux
vendors, since I think that's a losing proposition until everyone is using
gcc3. We were _already_ incompatible, since there are a mix of egcs and gcc
versions involved.

Red Hat has worked incredibly hard to make Red Hat 7 the best Linux
distribution ever, and I think we did a great job balancing a lot of complex
requirements. Did we make some mistakes? Yes. Are we fixing them? Yes. In
fact, with Red Hat Network, it's easier than ever to be a part of the progress
we're making, and I invite people to check it out at
http://www.redhat.com/network

Other distributions like SuSE and Mandrake are using ReiserFS. Why doesn't Red
Hat 7 also include ReiserFS?

I expect that ReiserFS will be one of the options available to Red Hat
customers along with other journaling file systems as they become available.
Red Hat is working on ext3, which provides a very seamless migration from
non-journal to a journal filesystem. There are some theoretical performance
issues with ext3. It's not clear that those issues will become a practical
problem or not for the kind of applications that people are building these
days. It's also true that for some application that ReiserFS or JFS or XFS
could be the right solution. If they are part of that kernel at a time then
we'll support them.

If you see the latest release of Mandrake they've implemented some neat
enhancements. Like they have this GUI partitioning tool that lets you resize
any partitions without formatting. Does Red Hat plan to do anything like that?

We're always taking advantage of the open source development nature of Linux.
Everything that goes through kernel.org and through Alan Cox ultimately winds
up at Red Hat. At the same time it's also important to note that we do have
many of the guys who are doing a lot of the key kernel infrastructure that
allows companies like Mandrake to write these things. If the Linux kernel did
not support the API's that are needed by ReiserFS or it didn't support the
capabilities needed by these other tools then the whole open source eco-system
would collapse. So we think it's great that other people are doing open source
development also.

Which distribution do you feel is your main competitor?

Right now our main competitors are Sun Solaris and Microsoft.

An interesting phenomenon that is happening these days is that Red Hat gets
associated with Linux. So instead of saying Linux vs. Netware vs. Microsoft,
they say Red Hat vs. Microsoft. What are your views on this?

You have to have a reference point. What is Linux? From our perspective we've
worked hard to packaging testing and distributing a particular thing. We call
it Red Hat. That's the distribution that most people take as the reference
standard. Maybe it's a function of its quality or maybe it's a function of its
popularity. You can't compare Microsoft vs. Linux but you can compare Windows
2000 vs. Red Hat Linux.

Is Red Hat the number one Linux distribution? What are the segments where it's
popular and where does it lack?

Red Hat Linux is the number one OS in a number of market segments. There are
some market segments that we feel will not be so important in the future. The
whole Windows desktop paradigm was invented in the 1980s. It may be obsolete
5-10 years from now. Even Microsoft is moving away from that, as can be seen
from this .NET thing. Do we invest resources in older technology that we know
is obsolete or do we innovate in the Internet infrastructure space?

I think the answer really is that we see a number of ways in which Red Hat
Linux is already the market leader in the segment or can be a leading OS.
That's our aim. The fact that we don't care about problem X or Y creates
opportunities for other distributions.

Red Hat doesn't make a version of Linux that is fine tuned for the desktop.
They target the server segment only. Does Red Hat believe that the desktop is
dead?

That's not a fair question because we do provide a workstation configuration.
The workstation configuration does have the necessary driver and application
support. I think it is too quick to call the desktop dead and it's certainly
wrong to ignore the workstation market because that is what Linux developers
work on. We can't abandon the developers; we can't abandon our own developers.
We have to continue to support the new hardware capabilities that are coming.
In terms of the traditional desktop, which is only low value application
driven, who knows where that's going to go.

Was that the reason why Red Hat acquired Cygnus?

Cygnus provided key development tools and Cygnus' relationships in the
embedded space expanded Red Hat's mission from server vs. desktop to the whole
host PC space. Our announcement with Ericsson with respect to the webphone,
our announcement with Motorola of high availability embedded systems. There
are a lot of exciting things happening in the embedded space and Cygnus on
it's own would not have been able to address this space. Red Hat by itself
would not have been able to. But Cygnus plus Red Hat now has the ability to
attack those spaces.

Cygnus has its own OS, eCos. Where does Linux fit in?

eCos is an appropriate OS for very very small devices. One of our customers is
building a digital TV and after the application, there was only 24KB left for
OS space. All the proprietary OS' were not able to go less than 50KB. When
eCos was configured for this, their first try was
11KB! Do you want to spend time and effort trying to strip Linux down to that
level or do you want to use a Real time OS, which is scalable, supports the
same POSIX API that Linux does. So the way to look at it is that Red Hat can
support more than one file system and more than one
kernel too but still have a consistent programming API.

Is eCos open source?

We always do open source. It's actually something like the Mozilla public
license. The reason we didn't want to put it out as GPL was because if this
Digital TV company links an application to the kernel. We did not believe it
was commercially possible to GPL the kernel.

Do you think there is room for more free OS'?

There's always room for individual preferences. Look at how many programming
languages exist. There are probably only going to be one or two OS' that reach
the critical mass of 10 million plus users. Will there be room for more than
one OS for 10 million plus users? I don't know. I guess that depends on the
population of the world.

If there's another OS came out that was a Free OS and started doing well then
will we see something like Red Hat BSD or something?

I think comes back to the critical mass question. I think that for Red Hat,
it's better to enhance our technical solutions to meet customer requirements
than it is to dilute our brand with other operating systems that don't have
the critical mass of Red Hat Linux or eCos.

Red Hat

Other articles by Prakash Advani

Current Rating: [ 7.56 / 10 ] Number of Times Rated: [ 27 ]

More Interviews
* Interview: Morphix founder Alex de Landgraaf
* A talk with Paul Leroux
* In conversation with Martin Konold
* "Linux is a very strong and reliable operating system"-- Philippe Kahn
* Sun shines on Linux too!

Contents
Articles
  Howtos
  Interviews
  News
  Opinions
  Reviews
Comparison
Links
  Articles
  Howtos
  Interviews
  Opinions
  Reviews
  Websites
News

Linux
About Linux

Print It!
Printer Friendly Version