[comp.sys.atari.st] REAL Ramdisk

BRIGHT@AC.DAL.CA (BOB BRIGHT) (05/08/89)

     Yes, I know, this subject was supposed to have been put to
rest once and for all.  But I'm not quite satisfied.
     I don't know very much about memory management on the ST,
but I do know that one of the reasons that various people have
offered for why a resizable reset-proof ramdisk isn't possible on
the ST is bogus.  A number of people seem to think that the only
way to install a reset-proof ramdisk is to allocate memory at the
top of ram, set memtop to a location below that allocated for the
ramdisk, and then exit through the warm start vector.  But of
course this isn't true; a number of reset-survivable ramdisks
install themselves without cycling through an extra boot, in-
cluding the public domain MAXIDISK (the one that compresses
files).  MAXIDISK works great on both the original roms and the
"mega" roms, so if it's playing with undocumented locations, it's
at least doing so reliably with both of the extent rom sets.  I
have no idea whether it currently works with TOS 1.4, but I can't
see why a bit of clever hacking couldn't bring it up to speed
there as well.
     The biggest problem with a dynamically resizable ramdisk on
the ST appears to be, as somebody mentioned, that TOS allocates
all available memory to programs when they are run; unless an
application returns memory to the heap, you can't resize from
within it.  Thus in order to make the ramdisk as useful as
possible, it would have to be manually resizable from the desktop
and from within applications which return memory when they run
(via an interrupt routine which polls the mouse, say, and comes
up only when the mouse cursor is in the extreme top right corner
of the screen; something like the way accessories are implemented
in the latest emacs release).
     So: a reset-proof ramdisk which compresses files copied into
it, dynamically resizes within friendly applications, and is
manually resizable for applications which don't return memory
when they run.  Not the best of all possible worlds, but much
better than what we've currently got.  I certainly couldn't write
such a critter; but is it really impossible?

BBB

----------
Bob Bright <BRIGHT@DALAC.BITNET>
Philosophy Dept.
Dalhousie University
Halifax, NS  B3H 3J5  (902) 424-3810