🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #7813

Re: Help --> How to prevent the visit from the dreaded guru

#7813
From: Randell Jesup
Date: Sat, 05 Jan 1991 04:06
85 lines
5143 bytes
In article <1991Jan4.224833.24914@ncsuvx.ncsu.edu> kdarling@hobbes.ncsu.edu (Kevin Darling) writes:
>  Larry Phillips says about preventing GURU visits:
>>> A new OS will not protect you from errors in your code, or ill-behaved
>>> programs, or hardware failures. Investigate; do some digging.
>
> Dave Schaumann replies:
>> Those are some rather flip answers to what, IMHO, is the Amiga's greatest
>> shortcoming: any program can crash the whole system quite easily.
>
>Umm. But they were correct answers for the _real world_ case: the current
>Amiga OS/hardware configuration.  Blue-skying begs the question.

	Correct.  First of all, 80-90% of all Amigas do not have an MMU, and
aren't likely too (though maybe eventually - nowhere near soon - low-end
machines may have MMUs).  Also, using protected-process-techniques for 
inter-process communication would slow down the OS a lot (unacceptably so
on a 68000 machine).  They add a lot of overhead, and add it even when there's
no MMU in the system.  Witness the Bill Gates comments that multitasking will
require 4Meg, a 386, and your first-born son.

>There are three main scenarios for multitasking machines:
>  1. Used by developer only
>  2. Used by end user only
>  3. Used by both developer and enduser
>
>In (1), crashing is a pain, but not "unacceptable".  In (3), crashing
>would be unacceptable...on a multiuser system... but since almost all Amigas
>are **single-user** systems, the offending programmer is also the enduser
>and should surely recognize when he's about to try something dangerous ;-).

	Amigas also boot about 10-100 times faster than most Unix boxes.
If you care and are a developer, test programs on a second machine - they're
cheap, and it helps to have a base configuration around to test on.  (Since
most developers are running '030's with lots of mem and HD nowadays).

	Personally, I usually test stuff on my development machine.  We have
enough debugging utilities (such as enforcer) that I rarely have to reboot
(though installing a dead Dos will force it... ;-)

>That leaves (2), and the culling out of unstable programs renders a totally
>stable enduser system... it's as simple as that.

	And Commodore has been working HARD to provide developers with 
utilities to make code bug-free when shipped.  Enforcer, Mungwall (aka
MemMung and MemWall), io_torture, suck, snoop, drip, scratchr, memoration
(those last two from Bill Hawes), angel (traps free mem references with the
MMU), etc, etc.

	If something passes all of these, it's damn safe.  How many Unix
programmers do you know who ever tested their memory allocation failure
paths (or other uncommon failure paths)?  With memoration, it's easy (and
we're using it to check all the failure paths in the ROMs for 2.0x).  The
combination of Mungwall and Angel (or enforcer) should cover almost all
problems related to the fact that it's shared-memory OS.

>So in return, here's _my_ own beefs <g>:  First, the unspeakable horror
>of today's CS majors who rely on hardware to catch their mistakes.  Second,
>the unrealistic expectation that inexpensive personal computers should have
>all the bells and whistles of the expensive "machines I use at school".

	In an A500, true.  An A3000 does have them, which is why it also makes
a good Unix platform, or a _really_ fast AmigaDos platform.

>a $99 Tandy CoCo-3... it's got an MMU :).  And I'd be terribly surprised if
>Amiga Unix doesn't use it.  Further, I think you're right that _eventually_
>all personals will have and use an MMU.  But I also think it's gonna take
>some radical changes to most current personal OS's to add that capability.
>Or rather, it would break most current programs.

	MMU's (at least for modern processors) aren't cheap, and '030's aren't
cheap enough to put in A500's.  They will be, one day, but not soon.  Oh, and
of course Amiga Unix uses the MMU (Unix effectively requires it, along with
massive amounts of memory and HD and CPU power - at least compared to AmigaDos).

	AmigaDos isn't likely to support protection any time soon - it's not
designed for it, and attempting to add it would break almost any program that
uses anything more complex than Dos functions (tty-style).  This may be a
(very slight) exaggeration, but it's mostly true.  VM is far easier.

-- 
Randell Jesup, Keeper of AmigaDos, Commodore Engineering.
{uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.commodore.com  BIX: rjesup  
The compiler runs
Like a swift-flowing river
I wait in silence.  (From "The Zen of Programming")  ;-)
Technical Details
Message-ID: <17130@cbmvax.commodore.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!cbmvax!jesup
References: <611@caslon.cs.arizona.edu> <1991Jan4.224833.24914@ncsuvx.ncsu.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!cbmvax!jesup
From: jesup@cbmvax.commodore.com (Randell Jesup)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Help --> How to prevent the visit from the dreaded guru
Keywords: Flip answers are no help
Message-ID: <17130@cbmvax.commodore.com>
Date: 5 Jan 91 04:06:45 GMT
References: <611@caslon.cs.arizona.edu> <1991Jan4.224833.24914@ncsuvx.ncsu.edu>
Reply-To: jesup@cbmvax.commodore.com (Randell Jesup)
Organization: Commodore, West Chester, PA
Lines: 85