Newsgroups: comp.sys.amiga.advocacy
Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!batcomputer!cornell!johnhlee
From: johnhlee@CS.Cornell.EDU (John H. Lee)
Subject: Re:  IAC (was Re: Clipboard (was Re: The Amiga's Future))
Message-ID: <1991Jun15.225638.11517@cs.cornell.edu>
Sender: news@cs.cornell.edu (USENET news user)
Nntp-Posting-Host: fulla.cs.cornell.edu
Reply-To: johnhlee@cs.cornell.edu (John H. Lee)
Organization: Cornell Univ. CS Dept, Ithaca NY 14853
References: <1991Jun9.005806.18799@news.iastate.edu> <8611@jhunix.HCF.JHU.EDU> <mykes.3558@amiga0.SF-Bay.ORG>
Date: Sat, 15 Jun 1991 22:56:38 GMT
Lines: 69

In article <mykes.3558@amiga0.SF-Bay.ORG> mykes@amiga0.SF-Bay.ORG (Mike Schwartz) writes:
>In article <8611@jhunix.HCF.JHU.EDU> barrett@jhunix.HCF.JHU.EDU (Dan Barrett) writes:
>>In article <1991Jun9.005806.18799@news.iastate.edu> taab5@isuvax.iastate.edu writes:
>>>The Amiga has all of the technical stuff to support networks, yes,
>>>but no actual applications geared toward networking.
>>
>>	If networking is done right, applications don't NEED to be "geared
>>toward" it in any explicit way.  That's the beauty of TRANSPARENT networking.
>>
>>	In UNIX, for example, files are often shared between machines
>>using software called NFS.  No applications need to be aware of NFS --
>>they JUST USE THE FILES, not knowing (nor caring) whether they actually
>>exist on the local disk or not!
>
>Amiga Networks should do this with any protocol, because it is natural
>and easy to do with the standard Amiga features.
>
>>	NFS exists on the Amiga *now*.  Install it, and ALL of your
>>applications will be able to use files on remote disks transparently.
>>	More examples on request.
>
>I don't claim to know much about Unix, but doesn't X-Windows require a
>"server" running the actual application and a "client" which just does
>the user-interface?  Do such servers talk to multiple clients without using
>the file system (meaning peer-to-peer via sockets)?  If so, this is an
>example of an application geared toward networking beyond just file/print
>sharing.

Not quite.  X Window System-based applications are designed around a protocol
that's network-independent, not around networking.  The X Window system
uses a client-server model like this:

The server is a program running on the display device and takes care of
things like drawing, clipping, screen-object management, and input devices.
It does not know nor care what the applications are or have to do.  Basically,
it acts like a super-intelligent graphics terminal with a specific interface,
the X protocol.  There is usually only one server running on a workstation
or whatever machine the screen-keyboard-mouse is setup.  Multiple clients
can be connected to the same server and each client can act as if it is the
only one.

A client is an application program.  Since the server is naive about things
such as menus and pushbuttons, it uses the server's abilities to do GUI I/O,
but handles the actual GUI operation itself.  This means each application
can define a different GUI.

Now almost all clients don't use the X protocol itself.  Instead they use
a functional interface to the protocol, the X library, and the C subroutine
library, Xlib, which provides lots of niceties in dealing with the protocol.
These libraries hides all details of networking from the application.
If the server and client are on the same machine, the X library will use
a low-cost local connection, possibly through the file system (on UNIX
systems, this is a "UNIX-domain" connection.)  If not, the X library will
use the appropriate network transport mechanism.  In any case, it is
transparent to the application.  Application programmers ignore networking
totally and write programs "geared towards" the X protocol only.

This means that X Window System-based programs can be ported to the Amiga
with almost no changes, at least with regards to the GUI (OS-specific things
are something else--the ANSI C Standard I/O library helps here.)  We just
need to implement the X library for the Amiga using whatever network
mechanism/interface is available (not necessarily BSD-style sockets.)  For
local connections, just use the Exec message-passing mechanisms.  The Amiga-
style IPC and networking is hidden totally.

-------------------------------------------------------------------------------
The DiskDoctor threatens the crew!  Next time on AmigaDos: The Next Generation.
	John Lee		Internet: johnhlee@cs.cornell.edu
The above opinions are those of the user, and not of this machine.
