VM on 680x0? Almost...

Rob Warnock rpw3 at redwood.UUCP
Sat Jan 26 22:24:13 AEST 1985


+---------------
| >      A cursory reading of the M68000 manual indicates that them M68010 and
| > M68020 are capable of supporting hypervisors.
| The 68010 and 68020 are ALMOST capable of supporting hypervisors.
| Unfortunately there is one thing you can't simulate: RTE (Return
| from Exception) into the middle of an instruction as a bus error
| recovery.  If the virtual machine trashes its stack, there is no
| way for the hypervisor to validate the stack other than to run a
| real, privileged RTE on that stack -- which could hang or kill the
| machine, since it contains numerous internal registers including
| the microprogram counter (uPC). 
+---------------

Actually, John, I think you CAN simulate the RTE, it's just messy. You have
to have a routine in the (true) kernel which knows how to actually simulate
each and every instruction in the machine. You then "wind-forward" the
interrupted instruction (in the VM machine) until it is finished (checking
for possible bus errors on each mem ref). There is (supposed to be) enough
information on the stack for you to do that. Ugh!

Somebody at Motorola want to comment?


Rob Warnock
Systems Architecture Consultant

UUCP:	{ihnp4,ucbvax!dual}!fortune!redwood!rpw3
DDD:	(415)572-2607
USPS:	510 Trinidad Lane, Foster City, CA  94404



More information about the Comp.unix.wizards mailing list