[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Virtual Memory



>>>>> "Daniel" == Daniel Eriksson <root@icon.pp.se> writes:

Daniel> In <9502132140.AA05922@amazon.cs.duke.edu>, Scott Bigham writes:

Daniel> Making MiNT capable of determining wheter to use VM or not is probably
Daniel> very easy, just as you say. However, the difficult part will be how to
Daniel> use it from programs without making the programs incapable of running
Daniel> on systems without VM. In the end you will end up with either 2
Daniel> different binary distributions of the program or one distribution that
Daniel> doesn`t make use of the new functions (f.ex. a non-blocking fork()).

It might not be quite as bad as that.

If I understand things correctly, then the OS interface would stay
essentially the same. fork() remains fork() but the VM fork() really
works while the non-VM fork() blocks. To some programs this will make
a difference, such as some shells with job-control, but many other
programs won't really care. And for those where it matters, one could
probably tolerate special distributions and the need for special
actions to the source code.

Other than that, VM will primarily have an impact on how many and how
big programs you can run at one time.


Perhaps it should also be noted that even if the 68000 machines never
will have real VM, some means of process swapping would be very
welcome. The idea is to swap blocked processes out to disk so that
other processes may run in their address-space. Even though swapping
large processes on each context-switch could be intolerable slow, it
could make the difference between something that runs and something
that dont. And since fork() blocks on such machines, swapping is
further reduced.


------------------------------------------------------------------------------
Christian Lynbech               | Hit the philistines three times over the 
office: R0.33 (phone: 3217)	| head with the Elisp reference manual.
email: lynbech@daimi.aau.dk	|        - petonic@hal.com (Michael A. Petonic)
------------------------------------------------------------------------------