[comp.os.minix] Blitter with fork

ugbernie@cs.Buffalo.EDU (Bernard Bediako) (04/26/89)

	Since Minix-ST is stricken with a slow fork because of the lack
of segmentation registers (shadowing technique ala )  would it be possible
to use the Mega-ST's blitter for copying the processes back and forth 
when shadowing to REALLY speed up the fork.  I'm using Minix on a 1040ST
so there isn't anyway I could look into it.
	But is it possible.  Would it work?  When is anyone using the blitter
for anything?  Putting in blitter calls within ifdef's sounds like a good
idea for future versions of the distribution.

				thanks
				bernie
		ugbernie@marvin.cs.buffalo.edu

HELMER%SDNET.BITNET@vm1.nodak.edu (Guy Helmer) (04/27/89)

I don't have a 68000-based machine and I haven't programmed in 68000
assembler for a couple of years now, so forgive this question if the
answer is obvious.

Why all the bother of swapping forked processes around in memory on an
unprotected 68000 machine?  Why aren't memory references done relative
to an arbitrarily assigned base register that Minix could change when a
process forked?  A quick look at a table of 68000 instruction execution times
revealed no obvious severe increase in execution times for address register
relative addressing, and any performance penalties might quickly be recouped
from the time saved if a large forked process was swapped even once.
No flames please, just reasonable answers.
-- Guy Helmer
   BITNET: HELMER@SDNET         uucp: ghelmer@loft386

meulenbr@cstw01.prl.philips.nl (Frans Meulenbroeks) (04/28/89)

In article <14044@louie.udel.EDU> HELMER%SDNET.BITNET@vm1.nodak.edu (Guy Helmer) writes:
>I don't have a 68000-based machine and I haven't programmed in 68000
>assembler for a couple of years now, so forgive this question if the
>answer is obvious.
>
>Why all the bother of swapping forked processes around in memory on an
>unprotected 68000 machine?  Why aren't memory references done relative
>to an arbitrarily assigned base register that Minix could change when a
>process forked?  A quick look at a table of 68000 instruction execution times
>revealed no obvious severe increase in execution times for address register
>relative addressing, and any performance penalties might quickly be recouped
>from the time saved if a large forked process was swapped even once.
>No flames please, just reasonable answers.
>-- Guy Helmer
>   BITNET: HELMER@SDNET         uucp: ghelmer@loft386

large processes won't exist in such an environment.
address relative addressing is limited to 64k, so in this case you're
facing a maximum process size of say 128k (64k text, 64k data),
unless you do something analogous to the large memory model on PC's
(yikes!), which is not done for minix/pc either.

I for me would rather prefer no size limitations.
This brings me to a different topic: has someone considered to 
implement disk swapping to minix. Might be interesting with a fast 
hard disk.

Frans Meulenbroeks        (meulenbr@cst.prl.philips.nl)
	Centre for Software Technology
	( or try: ...!mcvax!phigate!prle!cst!meulenbr)

ackerman@kira.uvm.edu (Steve Ackerman) (04/30/89)

In article <458@prles2.UUCP> meulenbr@cstw01.prl.philips.nl (Frans Meulenbroeks) writes:
>
>I for me would rather prefer no size limitations.
>This brings me to a different topic: has someone considered to 
>implement disk swapping to minix. Might be interesting with a fast 
>hard disk.
>
>Frans Meulenbroeks        (meulenbr@cst.prl.philips.nl)

My friend and I have been working on a swapper for Minix 1.3 PC.
We've been successful in swapping processes out of memory and back in
again.  On an AT&T 386 Hard disk, it's almost unnoticeable.  However,
we've been swapping out to floppy for test purposes, and that
definitely is noticeable!

Steve
--
============================================================================
Steven Ackerman, Systems Programmer      |  EMBA-CF University of Vermont    
uunet!uvm-gen!ackerman                   |  Burlington, Vermont 05401 
Internet: ackerman@uvm.edu               |  Telephone: (802) 879-0371

jk0@sun.soe.clarkson.edu (Jason Coughlin) (04/30/89)

From article <1162@uvm-gen.UUCP>, by ackerman@kira.uvm.edu (Steve Ackerman):
> 
> In article <458@prles2.UUCP> meulenbr@cstw01.prl.philips.nl (Frans Meulenbroeks) writes:
>>
>>I for me would rather prefer no size limitations.
[ .. stuff deleted .. ]
>>
>>Frans Meulenbroeks        (meulenbr@cst.prl.philips.nl)
> 
> My friend and I have been working on a swapper for Minix 1.3 PC.


	My understanding of the situation is that swapping doesn't have
anything to do with process SIZE on the PC (probably different on the
ST).  It will only allow you to run MORE processes.  VM anyone?

	Personally, I wouldn't want to run more processes in Minix.  I
have a 286 machine which is supposed to be close in speed to a Sun 3/50,
but if I get more than two processes running, the system CRAWLS!

--
Jason Coughlin
( jk0@sun.soe.clarkson.edu , jk0@clutx.BITNET, or whatever floats your boat! )

ast@cs.vu.nl (Andy Tanenbaum) (05/01/89)

In article <458@prles2.UUCP> meulenbr@cstw01.prl.philips.nl (Frans Meulenbroeks) writes:
> has someone considered to implement disk swapping to minix. 

Many, many, many years ago, long before the first pre-release of MINIX,
full swapping was implemented.  It was big and hairy so I threw it out.
For better or worse, I do not kep copies of the hundreds of intermediate
versions I have generated during the years.  It is not clear to me why
swapping seems to be so much in the news these days.  I run MINIX on my
512K AT clone and rarely, if ever, run out of memory, so swapping doesn't
seem to be worth the added complexity.  If you add swapping to the system
it will grow so large that you will need swapping, thus becoming a 
self-fulfilling prophesy.

Andy Tanenbaum (ast@cs.vu.nl)