Re: Do we really need virtual machines?

glen herrmannsfeldt <gah@ugcs.caltech.edu>
9 Oct 2004 22:50:33 -0400

          From comp.compilers

Related articles
[6 earlier articles]
Re: Do we really need virtual machines? samiam@moorecad.com (Scott Moore) (2004-10-04)
Re: Do we really need virtual machines? slimick@venango.upb.pitt.edu (John Slimick) (2004-10-04)
Re: Do we really need virtual machines? nmm1@cus.cam.ac.uk (2004-10-09)
Re: Do we really need virtual machines? dot@dotat.at (Tony Finch) (2004-10-09)
Re: Do we really need virtual machines? Nicola.Musatti@ObjectWay.it (2004-10-09)
Re: Do we really need virtual machines? danwang74@gmail.com (Daniel C. Wang) (2004-10-09)
Re: Do we really need virtual machines? gah@ugcs.caltech.edu (glen herrmannsfeldt) (2004-10-09)
Re: Do we really need virtual machines? david.boyle@ed.tadpole.com (2004-10-12)
Re: Do we really need virtual machines? anton@mips.complang.tuwien.ac.at (2004-10-17)
RISCs too close to hardware? (was: Do we really need virtual machines? anton@mips.complang.tuwien.ac.at (2004-10-17)
Re: Do we really need virtual machines? Colin_Paul_Gloster@ACM.org (Paul Colin Gloster) (2004-10-21)
Re: Do we really need virtual machines? postmaster@paul.washington.dc.us (Paul Robinson) (2004-12-17)
Re: Do we really need virtual machines? gah@ugcs.caltech.edu (glen herrmannsfeldt) (2004-12-19)
[2 later articles]
| List of all articles for this month |

From: glen herrmannsfeldt <gah@ugcs.caltech.edu>
Newsgroups: comp.compilers
Date: 9 Oct 2004 22:50:33 -0400
Organization: Comcast Online
References: 04-10-013 04-10-052
Keywords: VM
Posted-Date: 09 Oct 2004 22:50:33 EDT

John Slimick wrote:


> In a sense we are all running on virtual machines all the time, even
> when programming in C++ or Assembler. Until IBM introduced the System
> 360 in the 60's every computer was hardwired for its own instruction
> set. The 360's were different: there were a number of
> microprogrammable machines that all executed the 360 instruction
> set. The trend since then has been to have a standard architecture and
> instruction set that ranges over all sizes and speeds, but implemented
> by different microprocessors running different microcode.


> So the a better question might be: at what level do we want
> compatibility?


It is interesting that the S/360 instruction set has had as long a
life as it has, surviving two changes to its address space, huge
factors in processor speed and memory size. S/360 is fairly simple as
instruction sets go. Only a few addressing modes and a few
instruction lengths.


Consider how long the VAX lasted, for example, with a large number of
addressing modes and instruction lengths.


RISC architectures, being closer to the underlying hardware, I see as
shorter lived. Architectures like Itanium, requiring the compiler to
know fine details of the hardware, less virtual in the sense described
above, might be expected to have shorter lifetimes.


There has been discussion here before about systems that would accept
an intermediate code designed to be converted to the run optimally on
the specific hardware available at load time. The JIT model doesn't
seem so bad, either.


It will be interesting to see the direction processors are going in
the future.


-- glen
[Yes indeed. The s/360 was a remarkably good design, enough address bits
to survive much larger memories, simple enough so that it was possible to
pipeline. The Vax, on the other hand, was an exquisite design for the
wrong technology, hand-written code on byte addressible machines with
very limited memory and a lot of microcode. -John]



Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.