[comp.sys.atari.st] multiple applications in RAM

braner@batcomputer.UUCP (06/07/87)

[]

Looking forward to the 2-meg machines of next year:  1 meg is just right
for me now, but I could use 2 megs as follows:  Say 640K for the usual
workspace, another 640K for a "shadow" machine, and the rest (768K) for
a reset-proof RAMdisk in High RAM.  The idea is: you press a "hot key",
and the complete TOS environment (the first 640K) gets copied into the next
640K.  Next time(s) you press that hot key, the two 640K pieces get
_swapped_.  That way you can run two separate applications in RAM, instantly
switching back and forth.  The two can communicate via the RAMdisk (which
should also work as a disk-cache...).

Question: would that be hard to "roll your own"?  How does it compare with
the way "K-switch" works (I don't have it)?  When will the 1-meg chips get
down to a decent price?  Will application programs be written in an even more
sloppy manner, to use up the full 2 megs?

More ideas: since the ST is so affordable, the obvious way to achieve a form
of multi-tasking is to buy two machines.  (What most people want/need when
they say "multi-tasking" is one forground task and one background task.)
Does somebody out there know how to connect two ST's (via the MIDI port?)
so as to allow quick and easy communications?  Ideally, one ST would run
a command-line shell and be controlled through the other ST's keyboard
and screen.  Even better, the "slave" ST could be set up with no disk
drive or monitor, just a cheap CPU unit, and boot off a ROM cartridge that
will set up a RAMdisk and activate a "slave shell" that talks to the
MIDI port.  Anybody out there looking for a project?

- Moshe Braner

jack@mcvax.UUCP (06/10/87)

In article <1288@batcomputer.tn.cornell.edu> braner@tcgould.tn.cornell.edu.UUCP (braner) writes:
>[]
>
>Looking forward to the 2-meg machines of next year:  1 meg is just right
>for me now, but I could use 2 megs as follows:  Say 640K for the usual
>workspace, another 640K for a "shadow" machine, and the rest (768K) for
>a reset-proof RAMdisk in High RAM.  The idea is: you press a "hot key",
>and the complete TOS environment (the first 640K) gets copied into the next
>640K.  Next time(s) you press that hot key, the two 640K pieces get
>_swapped_.  That way you can run two separate applications in RAM, instantly
>switching back and forth.  The two can communicate via the RAMdisk (which
>should also work as a disk-cache...).

This touches on a problem that I encountered (and haven't solved yet):

How can you make sure that the current program is 'idle', i.e. not doing any
disk I/O, or something similar? It seems that this is necessary for a
swapping scheme to work.

My problem is more-or-less similar: I have an interrupt driven MIDI driver,
and packets come in, requesting disk blocks. So, I want to read the block, and
send it to the machine on the other side. However, how can I make sure that
the current 'real' program isn't doing any disk I/O?
-- 
	Jack Jansen, jack@cwi.nl (or jack@mcvax.uucp)
	The shell is my oyster.