> > You can't make a useable Unix process hierarchy on a Sam.  It hasn't got
> > basic memory allocation facilities.  Sure, if all your programs are below
> > 32K then you can page them in and out without too much trouble.  But how
> > are you going to run programs which are over 32K?  There's no way you can
> > prevent one process from reading or scribbling over another process's memory
> > and/or screwing up the entire system.
> 
> Is't this the way DRiVER is working?? I was thinking about a way of
> 'multiprogramming' in SAM by using 16/32K program-blocks. If you needed
> bigger programs, you had to call a 'system-routine' that paged in and
> out the needed 16/32K chunks of memory and making the data-space a part
> of the 16/32K chunks.
> 

Driver (God I HATE the way Revelation spell it) allocates internal ram
pages to applications for program code. Any other available memory is
allocated as data when the application requests it, and the application
sees this allocation as its logical machine.

It seems the obvious way to do it on a SAM - otherwise writing 
relocatable program code becomes more difficult.

As for programs over 32k long... things become difficult. I partially 
solved the problem by instructing applications either to restrict their 
size or to page the extra code into himem (section CD) and make calls 
from there. Things like every application's stack etc. still have to be 
in the 32k.

Steve.

Reply via email to