pid provider exposed

In the kernel group, we occasionally give presentations on interesting work we've been doing. Last week, I gave a talk on the implementation the DTrace pid provider, and -- in the spirit of community that the OpenSolaris project has engendered -- I'm posting it on my blog:


click to go to the presentation

In this presentation I go into the many details of the general technique for arbitrary instruction instrumentation, the implementation on SPARC, x86 and amd64 as well as the many pitfalls, caveats, tricks, and solutions. While I wouldn't say I go into excruciating details, it's probably falls just short. If you're interested at all in instrumentation or want to know more about the pid provider or are just a super nerd who enjoys reading about cool, low-level hackery, it's probably worth a read.

I've tried to augment it with some helpful commentary, but if something's confusing, vague or seems wrong, please let me know.


Technorati tag:
Comments:

The more the merrier! It helps us read the source codes! Thank you!

Posted by kfu on March 01, 2005 at 07:27 AM PST #

Great slides - I had no idea there was a statically defined userland tracing API... now you've got my mind working :-)

Posted by Michael van der Westhuizen on March 02, 2005 at 06:15 AM PST #

We have USDT there now in the initial release of S10, and we're working on a bunch of cool additions to it which will make USDT much more powerful and userful.

Posted by Adam Leventhal on March 02, 2005 at 07:12 AM PST #

I am having a hard time finding an answer to my Dtrace question of whether Dtrace is capable of assisting me in debugging a servlet. I have read in the expert exchange that this was not possible due to the complexity of the JVM but I have read elsewhere that give hints that this is possible.

Posted by Nguyen Le on March 28, 2005 at 09:46 AM PST #

Post a Comment:
Comments are closed for this entry.
About

Adam Leventhal, Fishworks engineer

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today