Path: utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!auspex!guy From: guy@auspex.auspex.com (Guy Harris) Newsgroups: comp.arch Subject: Re: IBM RISC System/6000 AS/400 (actually a diversion on the topic) Message-ID: <2984@auspex.auspex.com> Date: 3 Mar 90 19:22:49 GMT References: <1990Feb28.042949.21952@edm.uucp> <1990Feb28.174838.7725@esegue.segue.boston.ma.us> <10901@june.cs.washington.edu> Organization: Auspex Systems, Santa Clara Lines: 25 > Yes, somewhat. Some programs are translated to IMPI, the internal machine > language, which is interpreted by HMC, or what most people would call > microcode. Others are left at the MI, or machine interface, which is the > same as the S/38 MI (and assembly language), I believe. > >>Different models of the AS/400 can and do have >>different native microcodes. > > I think they all run the same micro-code. At least they all run the same > VMC (vertical microcode). OK, so is VMC code that, in executable form, is in IMPI? In that case, are you saying that the IMPI is the same on all the models? In that case, is there any reason (other than "it doesn't match what IBM calls them") not to call the HMC "the microcode", the VMC "machine language code", and the MI "some tokens in some interpretive language that sometimes gets compiled into machine code"? Or, to put it another way, how is this different from, e.g., the trick of, say, compiling Smalltalk bytecodes into machine code and caching the compiled bytecodes, with perhaps some bytecodes being interpreted rather than compiled?