|
September 15, 1996
On Station Wagons and Operating Systems
When I was in school, my parents had a Chrysler Volare station wagon.
It was the perfect car for our family, since it offered general-purpose
utility for everyone. My mother used it to carry the groceries needed
to feed our small army, and my father used it for transporting his hobby
gear from the workshop to the repair shop. And when it came time for
Christmas road trips, we could throw our suitcases in the back and still
use the roof rack for gifts. In terms of overall functionality, the old
beast could not be beat.
But what the Chrysler offered in utility, it lacked in specialty. When
I came of age, the last thing I wanted was to drive around on dates in
a dowdy station wagon. Instead, I dreamed of fast, powerful sports cars--and
still do to this day. The utility of a station wagon just doesn't appeal
to me. If I had a family, however, I probably wouldn't be looking at
sports cars.
The point I'm trying to make is that although a station wagon offers
adequate value across the board, it doesn't offer excellent value in
any one particular area. It simply is not possible to combine the power
of a sports car with the ruggedness of a Jeep or the capacity of a van.
For a one- or two-car family that needs a general-purpose vehicle, a
station wagon can be a great choice. But for people who want specific
functionality, it's a foolish one.
The same is true for operating systems. Some operating systems--most
notably Microsoft Windows NT--offer the same value proposition as a station
wagon, while other operating systems--Novell NetWare, Unix and others--offer
extreme value in vertical areas that the general-purpose systems simply
cannot provide for adequately.
One Size Fits All
Like the station wagon, NT provides a little bit of performance, reliability
and scalability, and it promises satisfactory functionality in these
areas. If you're looking for a single system to give you all these functions,
NT is an adequate choice. You likely will get what you want out of the
operating system as long as you don't demand too much in any one area.
Sure, you'll be able to reliably run general network services and back-end
applications, but you won't be able to run great networks or huge applications.
For these vertical needs, you'll soon discover the limitations that a
one-size-fits-all OS carries with it.
These limitations show up in many places, including on corporate intranets.
Unless your company is relatively small and has no need for high-end
performance, large-scale services or consistent reliability, you'll likely
find that the station wagon won't serve your needs very well.
Faster Than a Speeding Bullet
If you want a local intranet server to provide great performance, for
example, you're probably better off sticking with your existing NetWare
servers. NetWare is an extremely lightweight OS that is designed for
one thing--very fast network service. It delivers on its promise with
the added benefit of minimal hardware requirements. Under moderately
heavy loads, Novell's Web server is ranked consistently as the fastest
on the market. Where a Unix or NT Post Office Protocol (POP) server might
take two minutes to process 30 messages, the NetWare equivalent will
take about 30 seconds. In a large-scale user environment with hundreds
of users, this makes a big difference in end-user satisfaction.
But does NetWare make for a great general-purpose OS? No, because that's
not what it was defined for. Sports cars have to be lightweight and compact
to maximize acceleration, speed and control. Adding armored panels and
a box trailer to the OS would slow it down so much that it would defeat
the design objectives. But this does not mean that NetWare is completely
unreliable either. If applications are written well, they won't cause
the OS to crash. Conversely, if an application is written poorly, then
it will cause any OS to crash, regardless of how much armored plating
is installed.
Capacity also counts. If your intranet site will be running lots of
back-end applications, then you're probably going to be happiest with
one of the many Unix vendors specializing in this arena. Companies such
as Hewlett-Packard, Silicon Graphics and Sun Microsystems can provide
you with superscalable systems that support hundreds of thousands of
script executions per day. This level of capacity just can't be found
with a general-purpose OS like NT.
Form and Function
One of my Internet service provider friends recently tried to convert
his back-end operations from Unix to NT. Before he was done, he had gone
from two basic Sun hosts to seven dual-processor Pentiums, and even then
he still had to run his Domain Naming System (DNS) services on one of
the Unix hosts. NT simply wasn't able to handle the load his customers
generated. In this case, beefing up an NT box so that it will effectively
run DNS, HTTP, FTP, NNTP and SMTP/POP is akin to the effort of adding
turbochargers and big-bore kits to the old Volare. You can soup up the
engine if you really want to, but she'll still handle like a station
wagon. The money is better spent elsewhere.
Form Matching Function
Another important aspect to consider is suitability of design to function.
Does the native OS come with the tools you'll need to get started immediately,
or will you have to improve the engine? Where Unix comes with a variety
of shells and scripting tools that allow you to write full-function Common
Gateway Interface (CGI) apps immediately, with NT you get CMD.EXE and
COMMAND.COM, both of which are designed for a general-purpose OS, and
are woefully unprepared for use in these kinds of applications. If you
don't believe me, try to write a CGI script that divides two numbers
using either of these shells and no third-party tools. Since they don't
provide even rudimentary mathematical functions, you just can't do it.
Just as NetWare is optimized for performance to the detriment of robustness
and superscalability, Unix's scalability sometimes comes at the expense
of performance and extreme reliability. You can solve the performance
problem by buying a larger processor (which, incidentally, does not always
work with NT). As for robustness issues, choosing and developing applications
well tends to make this a nonissue.
If your environment requires near-constant uptime, then look to any
of the historically mature operating systems: MVS, VMS and MPE. Although
this may seem somewhat ludicrous on the surface, these systems are more
robust than anything else on the market. The level of application control
and system recovery these systems provide is simply unmatched by any
general-purpose operating system.
Network Computing's intranet and Internet services were hosted by a
Digital Equipment DEC MicroVAX 3100, and although the system was old
and slow, it was always up. Since Network Computing switched to NT-based
services a year ago, there has been a string of problems cropping up
on a weekly basis. The reliability is just too low, even for our modest
usage.
Although Microsoft often brags about NT's reliability and crash-protection
features, these are generally limited to the application environment,
and not to the OS itself. Although I've rarely seen the entire NT system
crash from a bad application, I've seen the OS crash on many occasions.
Meanwhile, there are scores of so-called legacy sites whose continuous
system uptime is measured in years.
Now, I don't want to come off sounding like I hate NT or that I don't
think it has a place in the market. I think it offers an excellent value
proposition to customers who don't need tremendous network services,
superscalable back-end applications or industrial-strength reliability,
but instead, just want a little of each. It is the best damned station
wagon on the market.
Continuing the analogy, you'll notice that some of the best-selling
cars on the market just happen to be minivans. Many people find the horizontal-value
proposition extremely attractive, and I expect the same thing to be found
here. It's also important to realize that most of these people also have
more than one car, and that the other car is hardly ever another minivan.
I also think that NT is not alone in this. IBM's OS/2 also fits the
station wagon value-proposition model fairly well. By trying to be all
things to all people, both of these operating systems are failing to
provide any compelling vertical values in any one specialty area.
Before you choose the platform you'll be living with for the next few
years, try to isolate what's going to be important for you and your organization.
Will you need great performance for a variety of sites in your organization?
Will you need superscalable application servers for large numbers of
users? Or will you need guaranteed uptime and access to legacy systems?
My bet is that you'll need all three, and if so, then welcome to networking
and the three-car garage. If you don't need any of these extremes, then
a one-car scenario will likely work well enough for you--at least in
the short term.
Written by Eric
A. Hall.
Copyright © 1996 CMP Media, Inc. Used with permission. |