Re: [ANNOUNCE] block device interfaces changes

From: Richard B. Johnson (root@chaos.analogic.com)
Date: Sat Jan 08 2000 - 23:37:16 EST


Gentlemen:

I have gotten a lot of mail on this so I will reply only once.

Many of the professional industrial uses of Unix were previously
covered using Sun boards, boxes and SunOs. If you ever dial 10 before
a long-distance number to get a cheaper rate, that's voice over
IP and we make that stuff. This was developed on Suns, runs on
them, but will soon be running on cheap Intel clones.

If you ever have to go to the hospital and have a CAT-Scan or
a MRI, you are using equipment developed by us, even though the
name on the box may be Phillips, General Electric, Toshiba, or
various other companies. You can look www.analogic.com and see
what we do for a living here.

The Sun driver interface has been constant. Unfortunately, you
have to install it, meaning link it and reboot. When Installing a
system, meaning the complete software package, the end-user's
technician installs the OS from a CDROM. Then the application
with its drivers are installed from another CDROM. This works
on Suns and has been the De-facto standard way of doing things.

Linux was not suitable for the applications running on Suns
until Linux provided the installable device driver. The ability
to install a hardware-interface module into a kernel was my main
selling point for using Linux to replace SunOs, and, indeed the
whole Sun architecture.

Incidentally, the cost is the same. A CDROM for Solaris is
essentially the same cost as a CDROM for Linux. Once you start
distributing an operating system and supporting the distributors,
a "free" operating system is no longer free.

By the time a decision was made to produce our new Exact Baggage
Scanner, marketed by Lockheed-Martin, engineering management was
dragging its feet on the use of Linux. They wanted something that
was "everything to everybody", but didn't want the cost of using
Suns. Further, it had to be completely under company control.

I was unable to convince anybody to use Linux so I had to write
my own Operating System. It is called ARTOS (Analogic Realtime
Operating System). Our Sky Computer Division, which produces the
world's fastest (still) digital signal processor, made the high-speed
stuff, a lowly Intel Pentium with my OS is used as the system
controller, and an Alpha Workstation is used for the user interface.

When this was completed, we went on to producing our third generation
CAT Scanner. This uses a Pentium as the main system controller and
Linux as the operating system. The User Interface uses Windows-NT.
It was felt that Linux was sufficiently well-hidden in the bowels
of the machine so nobody would care.

The drivers in this machine comprise both block and character devices.
One of major building blocks is the driver that interfaces to the
Digital Signal Processor. This DSP board comprises up to 32 TMS-320C20
DSPs plus an i960 for interface. It is made by our CDA Division.

Completed data, available within a 32k window, a 512x512x16bit chunk,
must be transferred to the User Interface within 1/4 second to make
the specification. It does.

Now, our legal department has defined the criteria we must meet to
use Linux. They presume that we will provide a "current distribution"
of Linux to every end-user. They also defined that, since drivers
may be deemed to modify the operating system, we have to provide
driver source-code to the customer if they request it. Application
code continues to be proprietary.

Changing the kernel interface to drivers is counter productive.
In fact it makes the usual field installation impossible. The usual
installation would automatically and transparently compile the
interface modules, using the new Operating System. This is no longer
possible because the compilation will fail.

Again, if Linux is to become other than an interesting experiment,
one cannot change these interfaces without understanding the whole
picture.

Distributors don't care. The more changes there are, the greater
the obsolescence, the more money they make selling new boxes of
CDROMs. Therefore there is no controlling negative feedback to
be obtained from the distribution channel. You can reject what I
say out-of-hand, and continue as an experiment, or you can listen
and make a significant contribution to providing jobs worldwide.

It is, of course, possible to fragment Linux. A company could be
started, called StableLinux that distributes only Linux n.n.n and
performs bug-fixes and maintenance on that version only. This is
not helpful to the greater Linux community. Instead, we need to
minimize the changes that affect the interfaces to world-wide
applications. Just as POSIX attempted to stabilize the API so that
one could write "portable" code, the interface to hardware that
hasn't even been invented yet has to be stable.

Cheers,
Dick Johnson

Penguin : Linux version 2.3.36 on an i686 machine (400.59 BogoMips).

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Jan 15 2000 - 21:00:13 EST