[dtrace-discuss] DTrace under Linux
Francois Dion
fdion at atriumwindows.com
Wed Feb 14 07:33:03 PST 2007
On Wed, 2007-02-14 at 20:08 +0800, é¶æ· (Euler Tao) wrote:
> Is DTrace talked about in the book, "Solaris Internals. Edition 2"?
> I haven't got this book. But someone told me that this book maybe the
> most detail book about Solaris kernel code.
You are talking about:
http://www.sun.com/books/catalog/solaris_internals.xml
This is definitely the book to learn about the Solaris kernel and how
processes work in Solaris. Part two in particular:
PART TWO: The Process Model
Chapter 2: The Solaris Process Model
Chapter 3: Scheduling Classes and the Dispatcher
Chapter 4: Interprocess Communication
Chapter 5: Process Rights Management
For something that is pretty much all about DTrace, take a look also at:
http://www.sun.com/books/catalog/solaris_perf_tools.xml
Solaris Performance and Tools: Dtrace and MDB techniques for Solaris 10
and OpenSolaris.
This book is *great*. It is the companion to Solaris Internals edition
2. I've learned a good bit with this book, highly recommended.
As a side note, Jim Mauro, one of the author has just done 3 days up in
Canada:
http://www.exitcertified.com/newsandevents/eventdetails/2007/solaris_roadshow/
covering process tools and dtrace and mdb. Apparently this was quite an
impressive session, some linux users in academia and the business world
were impressed enough to want to take a look at Solaris, just because of
dtrace.
I believe this was the full length version of the presentation that
George Wilson did at Sun Tech Days Atlanta, a real nice presentation
too. I dont have a link for it, but I believe this presentation is
available in open/star office presentation format. Or maybe just in pdf.
Do take a look at that.
Francois
> 2007/2/14, Sean McGrath - Sun Microsystems Ireland
> <sean.mcgrath at sun.com>:
> ???? (Euler Tao) stated:
> < Thanks, I understand now.
> <
> < er... I've planed to read the source code of DTrace. I think
> it may be
> < consisted of two parts, the kernel of Dtrace and the 30K+
> providers.
> < And is the main code of DTrace in a separate directory in
> the whole kernel
> < code tarball, e.g. on-src-b56.tar.bz2.
> < I've searched the key word, "dtrace", in the web page,
> < http://cvs.opensolaris.org/source/.
> < And I was confused by the results. They looked a little
> disordered.
>
> Dtrace may look 'disordered'. You're probably finding all the
> dtrace probes points etc that are scattered all over the place
> in various
> modules, libraries etc. The bits that really make up the
> dtrace framework
> are better explained from Bryan's blog, below.
>
> <
> < I have no experience on reading any Solaris's Codes yet.
> < Can someone do me a favor? Give me some hints.
>
> Dtrace was the original bit of code that was opened up
> before the full
> opensolaris, way back. Bryan's blog gives us a tour of the
> dtrace code
> from this initial code:
>
> http://blogs.sun.com/bmc/date/20050125
>
> Its still good to go through this once in a while.
>
> That along with the dtrace usenix paper gives a good
> overview of how
> dtrace works along with where it lives in opensolaris.
>
> http://www.sun.com/bigadmin/content/dtrace/dtrace_usenix.pdf
>
> That should help you get started :)
>
> Sean.
> .
> <
> < Thanks!
> <
> < Regards
> <
> < T.J.
> <
> <
> < 2007/2/14, Casper.Dik at sun.com <Casper.Dik at sun.com>:
> < >
> < >
> < >>Why do you say that SystemTap only is done on i386?
> < >>Does it means that, compared with DTrace, SystemTap is
> focused more on
> < >>hardware infomation?
> < >
> < >Dynamic kernel probing tools like DTrace need to understand
> and modify
> < >the instruction streams in the kernel.
> < >
> < >>Does DTrace has two different kernel parts?
> < >>I means for the x86 and SPARC architecture, there're
> something different
> < >>inside the 2 DTraces?
> < >
> < >Yes; DTrace is atypical in that it requires quite intimate
> knowledge
> < >of how instruction streams work. But from a user's
> perspective this
> < >is all hidden and you can use the same scripts on both
> architecture.
> < >
> < >The DTrace architecture limits the knowledge of the
> processor architecture
> < >to the DTrace to the providers which need that knowledge
> (such as the
> < >fbt and fasttrap provider)
> < >
> < >Sun has a requirement for "completeness", i.e., support for
> all
> < >architectures,
> < >when putting a project in Solaris. That's why we have
> support for DTrace
> < >on all supported platforms.
> < >
> < >In Linux, it is possible that systemtap becomes mainstream
> without support
> < >for other architectures. (Systemtap is also much more
> limited and does
> < >not
> < >make the safety guarantees DTrace makes)
> < >
> < >Casper
> < >
>
> < _______________________________________________
> < dtrace-discuss mailing list
> < dtrace-discuss at opensolaris.org
>
>
> --
> Sean.
> .
>
> _______________________________________________
> dtrace-discuss mailing list
> dtrace-discuss at opensolaris.org
More information about the dtrace-discuss
mailing list