> I'll work on the pre-scanning technique for virtualizing
> arbitrary instructions. Will need to implement parts of
> the other items here, but probably will do so minimally
> at first to get started.
I see several problems using this approach:
- You can only virtualize a your own proccessor. That is, you can�t
execute x86 code in a 68K or PowerPC processor.
- The technique works only if the breakpoints (virtualization entry
points) are single byte.
- Some common instructions must be executed virtualized, so speed
penalty would be fairly high. A clear example is "RET" (return
from subrutine).
- You need THREE pages for each original page:
- Original page, to support software instruction decoding/emulation
when a breakpoint is found. This page is needed also to support
code page read.
- The translated page. This page is almost identical to previous
page. The only diferences are the breakpoints used to mark
virtualized instructions. This page is the one really executed.
- The attribute page. The page which Kevin explains.
So, both memory consumption and speed execution (mostly by the need to
virtualize "RET") would be an issue.
--
Jesus Cea Avion _/_/ _/_/_/ _/_/_/
[EMAIL PROTECTED] http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/
_/_/ _/_/ _/_/_/_/_/
PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/
"Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
"My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz