Roy, I think that most instructions in plex86 aren't actually emulated, but run natively on the CPU. Only instructions that can't be virtualised are actually trapped and emulated.
Actually, I think your idea was used for a fast Sinclair ZX spectrum emulator (by G. Lunter maybe?) some time ago - each time a section of code was executed for the first time it was decoded and emulated. Next time the same code was executed, the previously decoded stuff from last time was re-used, giving a good speedup. Obviously the stored decoded stuff would need to be invalidated whenever the memory was overwritten. Jeff Roy Souther wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > I am curious about the way instruction emulation happens in the virtual > system and way that it could be faster. > > Is each instruction translated and emulated one at a time? This would be the > easiest for the developers. My idea is that if the software was to keep a > list of the most commonly emulated sequences and when one of these common > sequences of instructions is called rather then emulate them one at a time > the system would recall the emulation that was previously translated. This > would use more memory but I think it could drasticly increase the speed of > the emulation because of the constant amount of calls that M$ OS's repeatedly > make to the same instructions. > > Having no knowledge of how the software currently works, I could be totally > wrong here. I would like to know a little more about it and if my idea has > merit. > > - -- > Roy Souther <[EMAIL PROTECTED]> > www.SiliconTao.com > > Linux, overcomming barriers, removing walls of confinement > and smashing windows. > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.0.6 (GNU/Linux) > Comment: For info see http://www.gnupg.org > > iEYEARECAAYFAjx/pCYACgkQCbnxcmEBt43O8ACgu09L7GSKXZVHql4BE04bO9in > D3AAn3eQVhgP8eA1k68zEi6oi1ceivRk > =4AQM > -----END PGP SIGNATURE-----
