My original point was to build something a bit more powerful and generic than a PTRACE
system call for Linux platforms. The problem with PTRACE
is that it only run on your own system and architecture.
An idea would be to run a virtual machine (or, better, an emulator) with a different operating system and a (possibly) different architecture on it.
While looking for the ideal candidates, I found the QEmu monitor interface and several projects using QEmu as OS/architecture emulator to collect traces:
The features I want are similar to the PTRACE
interface (freeze execution, step by step runs, memory and registers read and write, ...) all with several OSes and several architectures.
My questions:
- Did I forgot some similar projects in my list ?
- Can the QEmu monitor interface provide a system/architecture agnostic
PTRACE
interface just as I want ? And, if not, what are the main issues I might run into while implementing it inside QEmu ?