From: irsman@iastate.edu (That Ian Guy)
Subject: Re: gno & stuff...
Organization: Iowa State University, Ames, IA
Date: Thu, 15 Oct 1992 15:39:32 GMT

Well, I can tell you some general stuff about *NIX and how it's implemented.
Note that I am by no means a *NIX expert and Jawaid will gleefully correct any
errors :>

Unix is indeed layered...however, it works something like this:


    Windowing System: OpenLook, mwm, twm, tvtwm
    GUI Manager:      X-Windows
    Shell:            csh,tcsh
    Kernal:           vmunix (this file IS SunOS, Ultrix, etc on most machines)

The kernal handles all the low-level I/O and multitasking and stuff.  The
kernal on most systems is implemented in assembly for its specific target
machine.

The shell is what handles dealing with you, the user.  The shell is almost 
always in C, and is thus easily portable.

The GUI Manager handles low-level graphics I/O operations and the other
things needed to implement a GUI.  X11 is by far the standard for this.

The Windowing System interacts with the GUI Manager and actually creates the
desktop and the windows on it.  A variety of windowing systems are avalible;
Microsoft Windows junkies will like mwm (Motif) because it looks and feels
just like the popular PC environment.  I prefer tvtwm (dunno the acronym :)
becuase it looks the most GS/Macish of all the wm's, and it additionally has
a way-cool virtual desktop feature so if you're working with limited screen
resolution you can pan the desktop (Apple, are you listening? :)

To get more specific, GNO includes a kernal and a shell, both written in
65816 assembly code.  The kernal does most of the common kernalish stuff
expected on a *NIX implementation, but does not have any filesystem drivers
or anything; this is left up to GS/OS.  The shell is basically a tcsh clone
without scripting; it interacts with the kernal in much the same way the shell
does on a standard *NIX system.  

SMP (symmetric multi-processing) is a system wherein the various unix processes
are evenly distributed among the processors in a multi-processor machine
(this has no relavance on the GS :)

When SLIP and TCP/IP are supported in GNO it will indeed be possible to have
SLIP accounts and anything else a Mac or PC running SLIP can do.

Threaded multitasking is a system in which processes are broken down further
into 'threads' and then the threads are executed.  This is typically only
useful on multiprocessor systems.

IPC is IPC is IPC, basically.  The difference is that on the GS and Mac,
processes are typically programs or DAs which aren't running at the same time,
while under a *NIX-ish system like GNO the processes are typically all running
at once in their various timeslices.

SpecMark hasn't been ported to my knowledge, but dhrystone has...an accelerated
GS can pull over 1000 as far as I've heard.





-- 
        Ian Schmidt: irsman@iastate.edu or aol.com, BITNET: twbv4@isuvax       
=--=-=-=-=-=-=-=-=-=Real Change in '92: Vote Ross Perot!-=-=-=-=-=-=-=-=-=-=-=-
  "I will choose a path that's clear: I will choose free will" - Neil Peart  
   Ask me about the GS<>IRC demo...better yet ask daveh@ccwf.cc.utexas.edu!
Newsgroups: comp.sys.apple2.gno