I am just a new person who wants to debug ROS, so my questions may be stupid.
I have checked http://www.reactos.org/wiki/Debugging . It seems the main debugging way is "Debugging through text messages" (I think it is more like "checking logs"). If I want to use GDB, I have to use QEMU. Would you please tell me is Kdbg the only way to debug code in VMWare or VirtualBox?
And if I want to debug ReactOS, do I have to install QEMU or VMWare or VirtualBox? Using "make install" in RosBE can generate many binary files. Is there any build-in way to start ROS from these bin files without any virtual machine?
Thank you in advance.
Hiya
Regarding gdb, i will skip that question in favor of more experienced team members.
Regarding make install - it depends on where do you want to install ReactOS. We use virtual machines for the sake of simplicity as well as good repeatability of results and errors. You can of course try to install bootcd on real hardware, but we dont recommend this way of testing at least until you know what are you trying to do. Apart from that, ReactOS is too unstable to be pushed and used on a production hardware, hence some dedicated testing machine should be used.
Please excuse me if my answer was not precise, but the question was too general.
Regards
2011/1/30 Xu Liu freshany@gmail.com
I am just a new person who wants to debug ROS, so my questions may be stupid.
I have checked http://www.reactos.org/wiki/Debugging . It seems the main debugging way is "Debugging through text messages" (I think it is more like "checking logs"). If I want to use GDB, I have to use QEMU. Would you please tell me is Kdbg the only way to debug code in VMWare or VirtualBox?
And if I want to debug ReactOS, do I have to install QEMU or VMWare or VirtualBox? Using "make install" in RosBE can generate many binary files. Is there any build-in way to start ROS from these bin files without any virtual machine?
Thank you in advance.
Hi,
In theory you can also use winDbg for debugging. You need to compile reactos with KDBG = 0 and _WINKD_ = 1 Then you need a connection between WinDbg and kdcom. You can use com0com and map the VM serial port to one end of the pair and connect winDbg to the other. This works quite well with qemu and VBox. after WinDbg is connected you should be able to do the basic stuff, like stepping, viewing and changing registers, dumping memory. What not works is attaching to processes, as WinDbg needs symbols for that. so you would need to compile with MSVC, which is work in progress. This currently limits its usability quite a lot.
I used it only on x64, so I can't say how good it works on x86. But afaik it works quite well, except that connecting can be a little tricky in the beginning.
Timo
Last time i tried WinDBG, it was not possible to determine process which was using the memory location given in backtrace. Missing MM functionality. Can provide bug number to anyone interested.
Regards
2011/1/30 Timo Kreuzer timo.kreuzer@web.de
Hi,
In theory you can also use winDbg for debugging. You need to compile reactos with KDBG = 0 and _WINKD_ = 1 Then you need a connection between WinDbg and kdcom. You can use com0com and map the VM serial port to one end of the pair and connect winDbg to the other. This works quite well with qemu and VBox. after WinDbg is connected you should be able to do the basic stuff, like stepping, viewing and changing registers, dumping memory. What not works is attaching to processes, as WinDbg needs symbols for that. so you would need to compile with MSVC, which is work in progress. This currently limits its usability quite a lot.
I used it only on x64, so I can't say how good it works on x86. But afaik it works quite well, except that connecting can be a little tricky in the beginning.
Timo
Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev
Thank you guys. I will try VirtualBox firstly.
On 1/31/11, Olaf Siejka caemyr@gmail.com wrote:
Last time i tried WinDBG, it was not possible to determine process which was using the memory location given in backtrace. Missing MM functionality. Can provide bug number to anyone interested.
Regards
2011/1/30 Timo Kreuzer timo.kreuzer@web.de
Hi,
In theory you can also use winDbg for debugging. You need to compile reactos with KDBG = 0 and _WINKD_ = 1 Then you need a connection between WinDbg and kdcom. You can use com0com and map the VM serial port to one end of the pair and connect winDbg to the other. This works quite well with qemu and VBox. after WinDbg is connected you should be able to do the basic stuff, like stepping, viewing and changing registers, dumping memory. What not works is attaching to processes, as WinDbg needs symbols for that. so you would need to compile with MSVC, which is work in progress. This currently limits its usability quite a lot.
I used it only on x64, so I can't say how good it works on x86. But afaik it works quite well, except that connecting can be a little tricky in the beginning.
Timo
Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev