Article View: comp.sys.amiga.tech
Article #9531Re: resource reclamation
From: Chuck McManis
Date: Wed, 17 Aug 1988 18:33
Date: Wed, 17 Aug 1988 18:33
42 lines
2619 bytes
2619 bytes
[Mr. Hoogerbeats, add this one to your list ...]
In article <YX2ERcy00Uh0IEQFxo@andrew.cmu.edu> (Miles Bader) writes:
> How come simple resource reclamation isn't done? It seems like it
> would be pretty simple to hang a list of allocated resources off a
> task...
> -Miles
Because it isn't. The original DOS specified for the Amiga included
resource reclamation, however when time got tight and Commodore had
to go with MetaCompCo's modified version of TriPOS, there wasn't time
to put it in. If you look at some of the structures you will notice
that there entries for Tasks such as tc_MemEntry which were for this
kind of stuff.
That is not to say that it isn't possible. The ARP project (AmigaDOS
Replacement Project) has created a library which allows you to track
resources and free them on exit. The ARP stuff in on a Fish disk #???
and available thru the amiga archives.
The question Miles didn't ask but always follows is :
How come I can't kill a hung process with ^C or something? And when
the program breaks why do I have to reboot the machine?
The reason is that the Amiga does not have memory protection between
tasks. And when a program goes astray, you do not know what sort of
damage it may have caused to internal memory structures. It can damage
the memory free list, trackdisk buffers, the stack of other programs,
and a host of other "sensitive" areas. Consequently, if you continue
to run the machine after a program has died, you run the much greater
risk of destroying completely unrelated data. For most people this
is unacceptable and that is why you have to reboot. For those people
who like to gamble, there is a commercial program called GOMF which
attempts to recover from these situations. It does keep the machine
running, however if another program you are running crashes, you should
be aware that it is much more likely that the originally crashed program
probably is responsible, not a bug in the code that just ran.
--Chuck McManis
uucp: {anywhere}!sun!cmcmanis BIX: cmcmanis ARPAnet: cmcmanis@sun.com
These opinions are my own and no one elses, but you knew that didn't you.
Technical Details
Message-ID:
<64608@sun.uucp>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att!rutgers!gatech!ncar!ames!oliveb!sun!pepper!cmcmanisReferences:
<YX2ERcy00Uh0IEQFxo@andrew.cmu.edu>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att!rutgers!gatech!ncar!ames!oliveb!sun!pepper!cmcmanis From: cmcmanis%pepper@Sun.COM (Chuck McManis) Newsgroups: comp.sys.amiga.tech Subject: Re: resource reclamation Message-ID: <64608@sun.uucp> Date: 17 Aug 88 18:33:41 GMT References: <YX2ERcy00Uh0IEQFxo@andrew.cmu.edu> Sender: news@sun.uucp Reply-To: cmcmanis@sun.UUCP (Chuck McManis) Organization: Sun Microsystems, Mountain View Lines: 42