Restructuring the debugger

Restructuring the debugger

2013/03/13 Debugger GKD 0

At the moment, i am facing 2 big problems of bochs, the first one is unsolvable, bochs running too slow. It is ok if you are doing a hobby OS development, but if you are trying to use bochs to run a full feature Linux kernel or a windows 7, it is just so slow. The second problem is the debugging output format of bochs, I nearly get a email from peter-bochs user a month, they just complain that the latest bochs can’t integrate with peter-bochs. I already raised an idea to use XML instead of plain text output, but no one would love to change.

So my plan is:
1) I am adopting peter-bochs to qemu, it seems ok, but i am stuck into the single step mode of qemu
2) After i create the stub in qemu, i need to propose it to qemu team, don’t know the chance. But even fail, i maintain it by myself

Architecture changes:
1) I am thinking to use OSGI in peter-bochs. I want to split out some modules into dynamic loading, so I can pay money to some people to write module for me, this speed up the whole process
2) I want to split these modules:
a) disassembler
b) dwarf library
c) VM controller
d) profiling module
3) after I split out the controller module, it is possible to pay some money to some people to adopt the debugger to ARM.
4) The dwarf library I created has some weakpoint, because the dwarf spec is so large, I still now sure how many % peter-dwarf library is supported. After I split out that module, expertise can extend/harden it for me.