[Mono-dev] ptrace events in mono debugger
jonas echterhoff
jonas at unity3d.com
Mon Apr 13 13:49:33 EDT 2009
(Cross-posting this to mono-devel as suggested by Joachim.)
Begin forwarded message:
> From: jonas echterhoff <jonas at unity3d.com>
> Date: April 10, 2009 1:38:29 PM GMT+02:00
> To: martin at ximian.com
> Cc: Joachim Ante <joe at unity3d.com>
> Subject: Porting Mono Debugger to OSX
>
> Hey Martin,
>
> I'm currently working on porting the mono debugger to Mac OS X. The
> biggest issue here is that ptrace is only partially implemented, and
> a lot of it's functionality needs to be replaced by mach-o code. At
> this point, a lot of that actually works, reading/writing memory,
> reading registers, reading the executable format, etc.
>
> Still, I don't get mdb to properly run an executable yet. I believe
> the problem may be that in OS X, i don't get any events from ptrace,
> which seem to be used to initialize the debugger (like
> PTRACE_EVENT_CLONE, etc..). When ptrace stops, it always just gives
> a normal SIGTRAP signal.
>
> Now, I don't have a Linux machine to see how this code should
> actually work, so I'm wondering, when I start an executable in mdb,
> which events needs to be sent to the debugger to properly initialize
> it? Will ptrace stop multiple times on Linux before starting
> execution (once when execd, once when the first thread is created,
> etc)? On OS X, ptrace won't stop on thread creation.
>
> Regards,
> jonas
>
More information about the Mono-devel-list
mailing list