[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [UPDATE] static instrumentation
From: |
Lluís |
Subject: |
[Qemu-devel] [UPDATE] static instrumentation |
Date: |
Fri, 03 Sep 2010 20:07:51 +0200 |
User-agent: |
Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (Gojō) APEL/10.8 Emacs/24.0.50 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) |
In case anyone is interested, I've pushed an updated version for the static
instrumentation:
https://projects.gso.ac.upc.edu/projects/qemu-instrument/
git clone https://code.gso.ac.upc.edu/git/qemu-instrument/
Changes:
* Instruction-based backdoors produce an immediate exit to the 'cpu_exec' loop
(so that instrumentation state change can take effect immediately).
I couldn't find documentation on how 'cpu_exec' works WRT 'exit_tb', but
this document helped me understand it (section 2.2.3):
http://gsoc.cat-v.org/people/nwf/paper-strategy-plus.pdf
* Real per-cpu instrumentation state.
* Per-state TB cache; now switching states can reuse already-translated TBs,
improving performance: tb_phys_cache is no longer flushed; instead, only
tb_jmp_cache is flushed (for the state switching CPU).
This provides a first fully-working version of the lower-level infrastructure.
What's next:
* Start defining the necessary static instrumentation points.
* Invoke defined points on each target architecture.
This is the time-consuming part, so if anyone is interested on implementing the
invocation of points on any target, contributions are appreciated.
Lluis
--
"And it's much the same thing with knowledge, for whenever you learn
something new, the whole world becomes that much richer."
-- The Princess of Pure Reason, as told by Norton Juster in The Phantom
Tollbooth
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] [UPDATE] static instrumentation,
Lluís <=