Slashdot Log In
DTrace Becomes Usable on FreeBSD
Posted by
Hemos
on Mon May 29, 2006 08:30 AM
from the trying-it-all-out dept.
from the trying-it-all-out dept.
daria42 writes "A project to port Sun Microsystems' Dynamic Tracing (DTrace) tool to FreeBSD appears to have achieved some initial success. DTrace was open sourced last year and is one of the coolest features in Solaris 10."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Cool. (Score:3, Funny)
Now we can have Netcraft confirmation of the death with a long DTrace log to back it up.
Re:Cool. (Score:2)
DTrace scripts (Score:5, Informative)
Here you got some dtrace scripts [tpg.com.au], direct from my firefox bookmarks.
--
Superb hosting [tinyurl.com] 20GB Storage, 1_TB_ bandwidth, ssh, $7.95
STUB! (Score:5, Funny)
I think the GPL weenies are jealous (Score:2, Insightful)
Re:I think the GPL weenies are jealous (Score:2)
There are lots of "really great features" you could put into an OS. The devil is in the details. What's the cost of maintaining it? What is the actual utility? Etc.
I think DTrace doesn't come out well in that regard. Pretty much all the things people regularly want to measure already have hooks in BSD and Linux. Furthermore, if one is going to put something of D
Re:I think the GPL weenies are jealous (Score:4, Informative)
that you couldn't obtain before. See some examples here:
http://blogs.sun.com/roller/page/bmc/20040805 [sun.com]
here:
http://users.tpg.com.au/adsln4yb/dtrace.html#OneL
and here:
http://www.sun.com/software/solaris/howtoguides/d
Declaration of interest: I work for Sun, use DTrace, demonstrate it and
see the expressions of stunned delight on the faces of people
when they suddenly recognise its power.
Parent
Not ready for -CURRENT? (Score:4, Informative)
From Bryan Cantrill's blog: "If you run FreeBSD in production, you're going to want John's port as it stands today -- and if you develop for the FreeBSD kernel (drivers or otherwise), you're going to need it."
Now compare this to Birrell's announcement: "There is still a lot of work to do and while that goes on, the code has to remain in the FreeBSD perforce server. It isn't ready to get merged into CVS-current yet."
Great news and nicely done... but, um, come back when it's ready for -CURRENT primetime before telling Zdnet it's ready
Highly desirable toolkit, but not universal. (Score:3, Interesting)
I wanted to use it for my application to diagnose performance and race condition problems. However, then I realized I'd have to wrap all the instrumentation so that it would still work portably. Then I thought it seemed like an awful lot of bother just to get some profiling in there, especially if I was going to support an alternate method of collecting the same events so as to make the whole application (which includes profiling support) portable.
"Sorry, we have to run it on Solaris or FreeBSD to debug/optimize" was ultimately what made me stay away from it. I looked into getting OpenSolaris working, and by the time I'd finally finally discovered from Sun's extremely confusing website and the equally confusing OpenSolaris webpages that what I wanted was Solaris Express:Community Release (SX:CR) so that I could get some interesting DTrace fixes and features, and had even burnt the 4 CDs and was all ready to commit to the Solaris way of life, I just got the heebie jeebies.
Hopefully, just hopefully, the FreeBSD port works out well, and there will be a version for Linux sometime soon... there's hope that the advent of the GPLv3 will ease a lot of political slash licensing problems.
DTrace is really incredible for application developers. You can insert lightweight, shippable, debugging and profiling points wherever you want them. I just feel you can't outright commit your project to it yet which is sad. It's the kind of stuff that should be made a POSIX standard, quite frankly.
Re:Highly desirable toolkit, but not universal. (Score:2)
systemtap works for me (Score:2, Informative)
http://sourceware.org/frysk/ [sourceware.org]
real men don't use licenses ... (Score:2, Funny)
of licensing, whereby you can take such code and graft any damnfool
license onto it if you have the inexplicable urge to think smaller.
oh, and real men don't use 'dtrace', they use 'printf()' --
if it's good enough for ritchie & thompson, it's good enough for me!
GPL != Open Source (Score:5, Informative)
The CDDL under which the code in question was released is a slightly modified version of the Mozilla Public License. So if you used Mozilla or firefox or whatever to post that screed, then you've clearly sinned against the church of RMS.
Oh, and the CDDL IS [sun.com] an OSI approved license, so that means DTrace IS (by the definition most programmers who don't wear Birkenstocks agree on) Open Source.
As a developer, if you value your work, the GPL is the better license under which to release code, as it means no-one can take your work, close the source, and sell it as their own.
CDDL Section 3.1:
So try again.Parent
Re:GPL != Open Source (Score:3, Informative)
Re:GPL != Open Source (Score:2)
You should get a patent on that idea.
Re:GPL != Open Source (Score:3, Informative)
------
This is a free software license which is not a strong copyleft; it has some complex restrictions that make it incompatible with the GNU GPL. It requires that all attribution notices be maintained, while the GPL only requires certain types of notices. Also, it terminates in retaliation for certain aggressive uses of patents. So, a module covered by the GPL and a module covered by the CDDL cannot legally be linked togethe
Re:GPL != Open Source (Score:2)
They wanted to make sure the no extra features of Solaris made it into Linux.
Looks like it's not going to work though. My guess is that there is already a port of dtrace happening in Linux and if they get stuck there is a
Re:GPL != Open Source (Score:3, Informative)
Stop spreading FUD. Anyone involved in the pilot process for OpenSolaris can tell you that those are NOT the reasons why the CDDL was created or used for SUN's code. The GPL was also one of the licenses considered.
Personally, I think the GPL is very selfish. GPL projects can take all
Re:GPL != Open Source (Score:2)
Whoa, whoa, whoa! That is the whole point of the BSD license, and is why many slashdotters dislike it. If you want your changes back, you would NEVER license co
Re:NOT Open Source (was: GPL) (Score:5, Insightful)
I develop under both GPL and BSD licenses, based on the particular piece of code. If I think the code has strategic value (typically a library or framework), I'll develop under BSD so I can use it in any of my closed-source software too. Software which only has utilitarian value is typically released under GPL.
GPL is of good use to a lot of projects, but IMHO it's a terrible license for frameworks and libraries. The LGPL does improve the situation for libraries somewhat, but it's won't work for all situations. That's why many "standard" libraries use more open licenses than (L)GPL; if you're not allowed to use the canonical library in all situations, it's not a useable standard.
Parent
You can do that under the GPL (Score:2)
Re:NOT Open Source (was: GPL) (Score:2)
That makes no sense at all. Of course you can license your code to others under the GPL and still use it in your own proprietary products. You're not limited by the terms under which you license y
Re:NOT Open Source (was: GPL) (Score:2, Insightful)
The point is that if others contributed to your GPL'ed code, you have to get their permission to use the code in a closed-source environment. With a BSD license you don't ha
Re:NOT Open Source (was: GPL) (Score:3, Insightful)
Isn't it up to each individual developer to decide what license to use for their original code? Isn't that what choice is all about? If I choose not to use one license or another for my code, why should you care? It is, after all, my code.
Re:NOT Open Source (was: GPL) (Score:2)
On the other hand, if a developer wants to create a new license, who are we to say he cannot? I appreciate the concern regarding the proliferation of OSS licenses of late, and I (as a user of and contributor to OSS) agree with you that fewer licenses are better than more licenses. However, we cannot dictate to anyone
Re:NOT Open Source (was: GPL) (Score:5, Interesting)
Well, or GPL people could take the fine contribution of the BSD people, and port it to GPL. Therefore both communities can benefit. If Sun had released it under GPL, the BSD people would have been prevented from doing this. At least that is my understanding. So in this case the BSD licence seemed like a good choice, the one that maximises freedom for developers.
Furthermore, I believe Sun has stated that they would be happy if DTrace was ported to Linux, and though they can't pay developers to do it, they can provide other help (perhaps like the testsuites).
Again I'm baffled by the level of hostility towards Sun on Slashdot. Here they open source an amazing tool, and help us port it, and they get a lot of nasty comments for it.
Parent
Re:NOT Open Source (was: GPL) (Score:2)
Sun's Dtrace is CDDL licensed, not BSD. Also, we wouldn't have been prevented from anything if Sun had released it under the GPL. We just would have imported GPL software over CDDL software.
Re:NOT Open Source (was: GPL) (Score:5, Insightful)
Now, last time I checked, Sun regards Redhat as one of its main competitors for 'enterprise unix' systems. So, since you are saying is that due to dtrace, FreeBSD became more competitive with Solaris, doesn't that mean it became that much more competitive with at least Redhat Linux?
With the GPL you at least get some improvemnts back if your contribution is of value and nobody can close its acess.
What the fuck does this have to do with anything? Ah, I see, you were just looking for a reason to do some 'GPL advocacy'.. Let me make some small suggestion: Advocacy like this is just annoying the hell out of people, and makes you look like a fanatic idiot.
Not to mention that the fud you are spreading is just that, fud. Nobody can close access to existing BSD licenced code EVER, got that? (and yes, people can derive from a BSD licenced work, and keep their source changes private while distributing the binaries. If people want to do that with GPLed code, they cannot distribute, or have to obtain an alternative licence from the authors, see the Trolltech business model)
As a developer, if you value your work, the GPL is the better license under which to release code, as it means no-one can take your work, close the source, and sell it as their own.
Now, the modern BSD licence only contains 2 clauses, is really easy to read, and yet you fail to understand it. You think anyone should take your advice?
You can NOT take a BSD licenced work and claim it as your own, that is basicly the one and only thing that licence prevents you from doing. All you can do which you cannot do with the GPL is keep changes to the source private while distributing the binary result. You may believe that is bad, and you are entitled to your own beliefs there. I happen to believe otherwise, and with me, there seem thousands of people who believe otherwise, but again, that is a matter of opinion, and not a matter of fact.
It means every change is visible to you,
No, it does not. It only guarantees that if you get back a binary of some derived program, that you also have a right on getting the source with the changes. You have no right to see anyones changes if they decide to not distribute the result but use it for their own internal work for example.
and that you are free to incorporate the changes other people have made to your product back into it, or into other projects you are working on.
Not if you are for example called Trolltech (qt), Sun (OpenOffice) or anyone else who deals with dual licencing, but generally that is the idea of the GPL indeed. It is a good argument for it, despite it not always working out.
This encourages collaboration, and thus helps the advancement of software engineering.
The fact that all TCP/IP (ip4) implementations are mostly compatible, that most of the basic protocols used on it are compatible between vendors and such are pretty much because there is good and for any purpose usable BSD code around to implement those things, which was either used directly or used as a reference implementation to test against.
This single tiny detail makes that there is actually some choice instead of having ended up with a proprietary network owned by either aol, microsoft, ibm or some other big entity.
I leave it to your imagination what this means for software development.
I will give you one more suggestion, learn to appreciate someone elses work, esp. when that work is pretty good and they actually insist on publishing that work such that everyone can use it. If you just feel that instead of appreciating such things, you must use the occation to spread lies and fud then I call you a moron.
Parent
Re:NOT Open Source (was: GPL) (Score:2)
What the fuck does this have to do with anything? Ah, I see, you were just looking for a reason to do some 'GPL advocacy'.. Let me make some small suggestion: Advocacy like this is just annoying the hell out of people, and makes you look like a fanatic idiot.
Three guesses who is being annoying and acting like a fanatical idiot, and it's not him.
Re:NOT Open Source (was: GPL) (Score:3, Informative)
That's not always true. If you modify a GPL-ed web application (or server software) and don't distribute it (only run it for / show output to your visitors) -- the you don't have to publish (open source) the modifications.
Re:NOT Open Source (was: GPL) (Score:5, Insightful)
That's one hell of an emotional world.
I'm glad I don't live in that world, and can be a FreeBSD developer instead ;)
Eivind, who recognize that when people develop things based on his code, he's got a chance of getting things back, and when they choose another codebase because his is GPL-licensed, he has ZERO chance of getting anything back.
Parent
Re:NOT Open Source (was: GPL) (Score:2, Insightful)
Re:NOT Open Source (was: GPL) (Score:2)
However, if you read the signature to my previous reply, you'll find a crucial clue for why the BSD license usually is MORE efficient for getting changes back (with the occasional generic closed derivate a
Re:NOT Open Source (was: GPL) (Score:3, Insightful)
As far as I am aware, the BSD license was not designed with this goal in mind. The GPL was designed with the goal of keeping the source code available to the developer community.
Whether this goal is achieved is debatable, but I think the GPL (or licenses similar to it) deliver the best chance of keeping systems open as we move into a heavily DRM'd world.
Re:NOT Open Source (was: GPL) (Score:5, Insightful)
Fortunately, Apple was kind enough to open source Darwin, but it didn't need to, and it choose not to open source the Aqua UI and the Finder shell. I could be mistaken, but I don't think they would have been able to do this had Darwin been based on GPL'ed software.
A better example of the GPL's strength would be the Linksys WRT54G router. I've got one myself and it does all kinds of awesome things it wasn't able to do out of the box (hell, you can even run an OpenVPN server on it), all because Linksys was forced to release their source code under the GPL.
That said, the BSDs are great projects (as are public domain projects like SQLite) and I wouldn't want to see them disappear. I believe that the core focus of the OSS community should be on GPL'ed software (because "embrace and extend" does in fact happen), but there's definitely an argument and a place for BSD-style licenses.
Parent
Re:NOT Open Source (was: GPL) (Score:2, Flamebait)
Apple has closed part of the Kernel now called XNU. [infoworld.com]
Is Apple kind, or are they just putting up a facade, closing the source where they see fit?
Re:NOT Open Source (was: GPL) (Score:4, Insightful)
Not only that, they also contribute code back to FreeBSD, which they also don't have to. It is directly to their advantage to do this however (if it gets accepted it means it gets maintained without Apple having to pay developers to do so). Now, Apple isn't exactly alone in this either, considering things like FreeBSD's netgraph and jails just to name some other things contributed by conpanies who could also have decided to keep those things to themselves.
and it choose not to open source the Aqua UI and the Finder shell. I could be mistaken, but I don't think they would have been able to do this had Darwin been based on GPL'ed software.
You are wrong.
Those are applications runniong on top of the core system, and they can be kept closed source just as much as you can have a closed source application for the GPLed Linux, and it is legal to create a CD that distributes both.
For that matter, there exist closed source X implementations and desktops that run on Linux as well, giving you a near equivalent (as in, a gui 'engine' and a desktop environment, not judging that they are of eqivalent quality)
Parent
Re:NOT Open Source (was: GPL) (Score:2)
A good point. You have BSD software to thank for all standards.
NFS still hasn't seen any replacement, even though it has serious limitations, because most all the alternatives are GPLd, or otherwise encumbered like AFS.
Telnet had vastly outlived it's useful life, but was still forced into service, with a few hacks like skey auth, kerberos auth, and encryption. It remained in service until O
Re:NOT Open Source (was: GPL) (Score:2)
Free OS (the BSDs) gets DTrace. If a commercial OS wants to implement it, they get DTrace (easily, as the code is open). Net result = better software in BOTH the free and payware segments.
How is this bad?
One thing the GPL weenies just don't seem to get, is that BSD people *DON'T CARE* if people use their code to make money/sell commercial software, because the aim is to improve the quality of software in general - not to impose some sort of political agenda.
No one
Re:NOT Open Source (was: GPL) (Score:2)
I've never seen anyone complain that a commercial entity used some BSD code as the basis for a project (except for Theo and his SSH rant =).
Imagine the devastation if the first TCP/IP stack out of Redmond had been all their own work!
I wonder how many of the "gpl stops you getting ripped off" people have ever PAID for Linux ?
I've bought it twice and I don't even like it !
Re:NOT Open Source (was: GPL) (Score:3, Interesting)
Re:NOT Open Source (was: GPL) (Score:3, Funny)
Re:NOT Open Source (was: GPL) (Score:2)
Eivind.
Re:NOT Open Source (was: GPL) (Score:2)
for some reason i think it doesn't look good in your advertisement
but it's still quite funny to see that it actually exists.
Re:Dtrace - is often referred to as "error vomit" (Score:5, Informative)
True - its a L3 and developer tool for the most part, but there are plenty of scripts out there to show what it can do for an admin. Take a look at http://users.tpg.com.au/adsln4yb/dtrace.html [tpg.com.au] for starters. Stuff like iosnoop, iotop, opensnoop and kill.d can be used quite regularly by admins without the need for putting debugging into active applications.
Parent
Maybe you should wipe your mouth after vomiting (Score:4, Insightful)
You, sir, obviously don't have the slightest clue what you're talking about.
Here's my script, btw
#!/usr/sbin/dtrace -Cs
#define ACCESS4_READ 1
#define ACCESS4_LOOKUP 2
#define ACCESS4_MODIFY 4
#define ACCESS4_EXTEND 8
#define ACCESS4_DELETE 16
#define ACCESS4_EXECUTE 32
fbt:nfssrv:rfs4_op_access:entry {
requested_access = ((struct ACCESS4args *) arg0)->access;
cs = (struct compound_state *) arg3;
cr = (struct cred *) cs->cr;
printf ("uid = %d gid = %d\n", cr->cr_uid, cr->cr_gid);
printf ("ACCESS4_READ = %s\n", requested_access & ACCESS4_READ ? "yes" : "no");
printf ("ACCESS4_LOOKUP = %s\n", requested_access & ACCESS4_LOOKUP ? "yes" : "no");
printf ("ACCESS4_MODIFY = %s\n", requested_access & ACCESS4_MODIFY ? "yes" : "no");
printf ("ACCESS4_EXTEND = %s\n", requested_access & ACCESS4_EXTEND ? "yes" : "no");
printf ("ACCESS4_DELETE = %s\n", requested_access & ACCESS4_DELETE ? "yes" : "no");
printf ("ACCESS4_EXECUTE = %s\n", requested_access & ACCESS4_EXECUTE ? "yes" : "no");
}
Parent
Re:Maybe you should wipe your mouth after vomiting (Score:2, Troll)
I don't care about choosing an OS and toolkit for people that suck, I care about choosing a toolkit for me. Seriously. I'm responsible for maintaining the template that our servers (which run a *lot* of interdependent services -- Oracle, Tomcat, etc) are built off of. Finding and fixing performance problems in the template means that the low-level support folks have less angry customers on the phone -- and having the
Here. Use one of my napkins then. (Score:3, Informative)
I hope however that either of our posts get modded up so that people actually take notice of this thread.
That out of the way I don't really care whether droves of Linux/FreeBSD/OpenBSD etc.etc. users rush and adopt
(Open)Solaris. I would definitely switch to Solaris also at home instead of Linux if it supported all of my hardware
but I guess the home-user is besides the point I suppose you trying
Re:Video... (Score:2)
Re:Holyshit! (Score:2)