tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

DTrace port



Courtesy of CoyotePoint Systems, I've been working on a port of DTrace (http://en.wikipedia.org/wiki/DTrace) to NetBSD for i386. The port is based on the FreeBSD-8 port and is close to the point where it would be useful to import it to current and make it available for any interested parties to experiment with it and, for example, add providers.

The port adds libdwarf, libctf, ctfconvert, and ctfmerge tools to the toolchain, and CTF generation to the make framework. I've made everything optional based on a MKDTRACE build knob which will be off by default.

DTrace is CDDL licensed (like ZFS) and will live in the external/cddl/ osnet directory.

At the moment the kernel module builds and loads, and its able to execute a basic hello world D script using the built-in BEGIN/END provider. It is still needs work to support kernel modules, user- space tracing (via libproc), providers (fbt, sdt, systrace, profiler, lockstat, etc), and a few other bit and pieces marked with "XXX TBD" comments in the code. It doesn't do much at the moment but once providers are completed DTrace will enable interesting views into the kernel for inspection and profiling, and debugging.

Regards,
Darran.



Home | Main Index | Thread Index | Old Index