blob: 466fb73fd0c1b997743ea3b57d190dff2efc266f [file] [log] [blame]
Here's a preliminary port of strace to FreeBSD.
Here are some notes about it :
- This couldn't have been done without the sources of the truss
utility by Sean Eric Fagan, which were of great help.
- The tracing mecanism used by FreeBD is a lot like the SVR4 one, so
this port shares a lot of code with the SVR4 port, including the
akward event loop when tracing multiple processes.
- This works for i386 binaries, although support for alpha processor
should be quite straight forward, but I do not have an alpha to
test it on.
- Tracing linux binaries is not supported yet, but should be possible
with some work.
- There are some issues with following forks, and only a few FreeBSD
specific syscalls are decoded right now.
- This was tested on FreeBSD 4.0. I believe the tracing interface is
present since at least FreeBSD 3.0, so it "should" work on all
latest releases. I have no idea for other BSDs, though.
Gaël Roualland <gael.roualland@iname.com>