Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site redwood.UUCP Path: utzoo!dciem!nrcaero!pesnta!amdcad!fortune!rhino!redwood!rpw3 From: rpw3@redwood.UUCP (Rob Warnock) Newsgroups: net.unix-wizards Subject: Re: VM on 680x0? Almost... Message-ID: <142@redwood.UUCP> Date: Sat, 26-Jan-85 07:24:13 EST Article-I.D.: redwood.142 Posted: Sat Jan 26 07:24:13 1985 Date-Received: Mon, 28-Jan-85 02:11:21 EST References: <210@wdl1.UUCP> <1966@sun.uucp> Organization: [Consultant], Foster City, CA Lines: 29 +--------------- | > 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