Jump to ID:
dtrace

Project Home

Documents

Source Code

Discussions

Wiki

Project Info
dtrace

A QNX port of the
Solaris dtrace tool.
Project Created: 01/11/2008
Project Categorization
Technologies > Development Tools
Project Members
Total Project Members:22
Project Administrators:
Colin Burgess

Project Home

Project Home Page

Project Overview#

Dtrace is a powerful dynamic tracing facility, initially developed by Sun for use in Solaris 10. It was then made available as part of the OpenSolaris project. Since then it has been ported to FreeBSD, and Mac OS X - Leopard.

Project Status#

An initial prototype is (sort of) working, although only on uniprocessor x86 machines for the time being. Check it out at the InitialPrototype page.

Initial work on the new port of the userland libs has begun. For more info, see the PortingStatus page.

The Future#

Planning work has started for a more thorough port. We are still in the very early stages, but we will try to give planning updates soon.

Further Reading#

In the meantime, if you want to learn more about dtrace, here are some useful links...

Dtrace.org is the new home of most of the ex-Sun people who left after Oracle absorbed Sun.
OpenSolaris Dtrace Community - There are many useful links here.
BigAdmin Page - This is the main Dtrace page at Sun.
ACM Queue Article - Hidden in Plain Sight - A well written article that gets more into the motivation for dtrace than most of the reference material found in the documentation.
Bryan Cantrill's Google Presentation - Bryan Cantrill presents at the Googleplex - if you can get through the first few minutes in which he tirades against the book "Dreaming in Code", there is a lot of great material in his demo.
Bryan Cantrill's Fishworks Presentation on Dtrace Analytics - dtrace is an intergral part of Sun news Unified Storage product - announced by Bryan here. Be especially sure to checkout the video presentation here
A handy guide to the Anatomy of a Dtrace USDT provider.
Details of the x86 implementation of Dtrace.
Rough Cuts - DTrace: Dynamic Tracing in Solaris, Mas OS X and FreeBSD

libunwind is a free dwarf-unwind lib which may be useful to provide the stack() and ustack() actions.

The following blogs are by the original author's of dtrace, known as the Dtrace Three, which are all well worth perusing. Bryan Cantrill's Blog, Adam Leventhal's Blog and Mike Shapiro's Blog.

Licensing#

As part of the OpenSolaris project, dtrace is licensed under the Common Development and Distribution License (CDDL). You can read all about it here - http://www.opensolaris.org/os/about/faq/licensing_faq/

Project News
RIP John Birrell
I`m sad to announce that John Birrell - the developer who ported dtrace to FreeBSD, suffered a stroke and passed away last Friday, November 20, 2009.

John was a talented and tenacious developer. I`ll post a better tribute as soon as I can - for now, see

http://opensolaris.org/jive/thread.jspa?messageID=437987&tstart=0
and
http://marc.info/?l=freebsd-announce&m=125910211727308&w=2
cburgess@qnx.com - 11/25/2009 6:24 PM EST