[comp.sys.amiga] Amiga OS vs other micro OSs

page@swan.ulowell.edu (Bob Page) (06/10/88)

A few people have misunderstood my remark about making the Amiga OS
better protected from errant tasks.  I was not comparing it to any
other micro OSs, as these all have the same problem.  I was comparing
it to mini- and larger computer OSs where an errant task will crash
and burn itself, but not take the rest of the the machine with it.

People put up with it in OSs like the Mac and MS-DOS because in
effect, when one process crashes, you only lose that one process.  On
the Amiga, the problem is magnified by the multitasking capability -
if I have something running, doing real work, and I lose it because
some other task brought the machine down, it looks bad not only for
that program but also for the Amiga.

There are three solutions: 
	1. don't run more than one task (not possible if you
	   think about the device drivers, etc already running).
	2. run only well-behaved programs that don't crash (also
	   not possible, since even the file system can crash on
	   inconsistent data).
	3. protect the tasks from each other, so an errant task
	   will crash (core dump, whatever) and leave the others
	   alone.  This is not possible today, and would only be
	   possible in the future if the OS provided the protection.

This behavior has dramatically affected the way I work on the Amiga.
If I'm doing anything critical, I won't even touch the machine until
my critical task finishes.  Call me paranoid, but I used to get burned
multiple times during a session at the machine; since I've changed the
way I work with the Amiga, my crashes have been much less frequent.
This is just doing normal things, editing files, using a terminal
program, etc.

This also means I use programs where I have the source code, any time
I can.  Except for the CBM-supplied executables (which I replace with
code I have source for when I can), the only things I use that I don't
have source for are WShell (because I know Bill Hawes and trust his
code) and the Manx C package (I trust it more than I used to, but
won't trust it completely until I either have source :-) or a PD C
system (with source debugger) with source code).  If I *have* to use
something I don't have source for (like Soundscape) I make sure
nothing else is running first, so I won't lose the other tasks in case
this one blows up.

I'm not advocating Mac OS or UNIX or anything else.  I think the Amiga
OS is great and would like to continue to use it.  I just want it to
protect the tasks from killing each other or the entire machine.

..Bob
-- 
Bob Page, U of Lowell CS Dept.  page@swan.ulowell.edu  ulowell!page