From: byer@adobe.com (Scott Byer)
Subject: Re: A CPU on Every Desk?
Reply-To: byer@adobe.com (Scott Byer)
Organization: Adobe Systems Incorporated
Date: Fri, 22 Jan 1993 18:47:04 GMT

Mark Turner writes

> I've come to the conclusion that a "CPU on every desk" is not the
> right solution for many businesses. As soon as a $20,000 workstation
> lands on a corporate desk, it needs more memory and more hard disk
> ... and the CPU itself it out-of-date and too slow in just a few
> months.

> The X terminals can be replaced, or upgraded, without much fuss
> and little expense.  And it's simply more efficient to do system
> administration, and manage most of the hardware problems, centrally.

Your question is making the implicit assumption that the above is
true.  Having watched X terminals in action, and seeing what they
do to a network, I don't believe that it's a valid assumption.

X terminals aren't any cheaper than a well-equipped 486, which can
then run Unix and X native, with lots of disk, and not swap over
the network.  A full Unix machine can also be easier to administer
in a complex, shifting environment.  (Not easy, mind you, just
easier than a X terminal.) Especially if using NetInfo.

Also, CPUs are a cheap resource compared to networks.  This will
remain true for at least 5-10 years.  And X terminals simply _swamp_
the network.  It just isn't effective to be running more than a
few on a single subnet.  And for responsiveness, you need an adequate
amount of peak computing power.  That ends up being just about one
CPU per terminal in the end.  That's in addition to the high-power
processor in the X terminal.

X terminals might still be more effective if it were easier to
upgrade central CPUs than distributed CPUs.  I don't believe this
is true.  Upgrading a distributed CPU is a fairly simple task, and
doesn't take a whole subnet down during the upgrade.  Most people
will never even need an upgrade if provided with adequate power in
the first place.

X terminals strike me mostly as "penny wise, pound foolish".  Like
mainframes, only much more so.

> I often hear NeXT advocates complaining about the X protocol, and
> promoting Display PostScript ... possibly with good reason. Is it
> possible to hang X terminals off a NeXT server and use the native
> NeXT desktop from the terminals? Is there any such thing as a
> PostScript Terminal? If not, why not? Is anyone out there adopting
> this sort of strategy?

Even given the above, it's still an interesting question.  It is
true that a well-written Display PostScript protocol could end up
being more efficient than the X protocol, but applications would
need to be modified to use it properly.  You would want to be able
to download event handlers into the server, and only send back
events to the application client only when necessary.  Note that
this is a different strategy than you would want to use when the
server and client are on the same machine - event handling requires
math, and is more efficiently done in C, so when there is no
transmission cost for events, all of them should be sent to the
client and handled there.

If the application's drawing code was written well, the amount of
network traffic to draw using Display PostScript ends up being much
smaller than if done using the X protocol.  An application talking
Display PostScript to an X terminal with the Display PostScript
extension, for example, would not swamp the network as much.  NCD
has announced such an X terminal, so in a way "PostScript terminals"
will exist.

However, a terminal market for a specific protocol would only make
sense where there was a significant heavy-server market in that
protocol.  NeXT doesn't sell high-end server CPU configurations,
and so there really isn't anything to hook up a NeXT Terminal to.

--
Scott Byer                             NeXTMail: byer@mv.us.adobe.com
Adobe Systems Incorporated               These are *my* opinions, and  
1585 Charleston Road, P.O. Box 7900        do not necessarily reflect
Mountain View, CA 94039-7900             the opinions of my employer.
---------------------------------------------------------------------
Newsgroups: comp.sys.next.advocacy