In particular, it lets you look at (say) a bunch of x86 code, translate it into your host machine, then rearrange and optimize those instructions for best performance. If you did this naively, then you might move a store much earlier, and if an instruction further down traps, you have now corrupted memory. (Yes, this does matter, even if some previous instruction trapped. It could be a page fault, for instance) This technique was mentioned in the first patent (and is more or less what a high end Alpha does internally, under hardware control. Here, it's implemented as a software/hardware combination.
There are a pile of optimizations you can use if you don't have to worry about loads and stores being aliased; the fact that the C language has pointers (which make detection of this by the compiler extremely difficult) is probably the single biggest reason that Fortran is still preferred in the high performance computing arena (because it doesn't permit aliasing There's also a special page table bit mentioned that marks a page as having translated insts. Any attempt to write to that page (which is considered self-modifying code) will trap and flush the translated/optimized instructions.
No, Steve Jobs was the marketeer/visonary/dreamer (even before then, actually).
Woz wrote the monitor, (with some small help from me) and the pieces I worked on were given a thorough compressing by Woz before it went in. He could squeeze bytes out of places you wouldn't believe.
Another reason they weren't interested is that there was already a competing project, the HP-85. It used a fairly strange custom CPU (HP at the time was adverse to using commodity chips, as they felt that if they did, anyone could copy it) and that project was fully staffed.
In particular, it lets you look at (say) a bunch of x86 code,
translate it into your host machine, then rearrange and optimize those
instructions for best performance. If you did this naively, then you
might move a store much earlier, and if an instruction further down
traps, you have now corrupted memory. (Yes, this does matter, even if
some previous instruction trapped. It could be a page fault, for
instance) This technique was mentioned in the first patent (and is
more or less what a high end Alpha does internally, under hardware
control. Here, it's implemented as a software/hardware combination.
There are a pile of optimizations you can use if you don't have to
worry about loads and stores being aliased; the fact that the C
language has pointers (which make detection of this by the compiler
extremely difficult) is probably the single biggest reason that
Fortran is still preferred in the high performance computing arena
(because it doesn't permit aliasing There's also a special page table
bit mentioned that marks a page as having translated insts. Any
attempt to write to that page (which is considered self-modifying
code) will trap and flush the translated/optimized instructions.
No, Steve Jobs was the marketeer/visonary/dreamer
(even before then, actually).
Woz wrote the monitor, (with some small help from me) and the pieces I worked on were given a thorough compressing by Woz before it went in. He
could squeeze bytes out of places you wouldn't believe.
Another reason they weren't interested is that
there was already a competing project, the HP-85.
It used a fairly strange custom CPU (HP at the time was adverse to using commodity chips, as they
felt that if they did, anyone could copy it) and
that project was fully staffed.