Oracle Plans To Bring DTrace To Linux
Phoronix: Oracle Plans To Bring DTrace To Linux
One of the interesting announcements coming out of the Oracle OpenWorld conference this week in San Francisco is word that the company plans to bring DTrace to Linux. In particular, they want the Sun DTrace technology in their Unbreakable Linux Kernel...
I'm curious if they'll be able to avoid putting some of that stuff under the GPL. They may have to get at some symbols that are only exported to GPL licensed modules. They might be able to do it for DTrace, but I'm not so sure about the Zones.
I doubt that DTrace could be made into a loadable module. Wouldn't it be too invasive in too many areas of the kernel for it not to be?
They'd have to sprinkle all manner of hooks in their GPL'd kernel which when enabled target something in a single proprietary module. Sure, that's possible, but you'd think that the maintenance upkeep on keeping all of that working and tested version after version to lose them more money than they'd likely gain.
That and it's hard to see how DTrace alone would make someone move from RHEL to OUL, or that there would be so many of them that it be profitable for Oracle to do this (in the obscured manner Michael alluded to).
It leaves me to wonder if they're not going to make a shim on top of the current tracing infrastructure that speaks DTrace, to make it easier to push their Solaris clients to Linux, hoping they'll choose OUL instead of RHEL. This would allow Oracle, if btrfs matures and/or a ZFS port follows, to move development resources from Solaris to Linux over time.
Time will tell.
At this point of time, the only thing required for Linux to achieve theoretical feature-parity with DTrace is to merge uprobes into the main kernel.
This is really really good news! Now Systemtap and all the other crappy copies can rest in piece and Linux can get the original and unique DTrace that every developer wants!
Well, I worked with both STap and DTrace. I can't say that STap is worse than DTrace.
It's just not used that much. Mostly because dynamic tracing is not required that often - in reality it's mostly a debugging tool.
And Solaris zones too -
At one time Solaris zones, like dtrace, was a killer feature. But I've used openvz/PVC for some time and they seem to be as good or better than solaris zones. If oracle expends the effort to port the solaris flavor of containers to their increasingly divergent linux variant, then we'll have at least 5 separate overlapping OS level virtualization solutions on linux. Oracle zones (Ozones?), LXC, Vserver, OpenVZ and PVC. How cool would it be if instead of further fragmenting the picture, Oracle would help out with one of the existing container implementations...
There is already a DTrace for Linux as a loadable module.
Originally Posted by Kelimion
Stop calling software "technology". Dtrace is a program. You act as if it's something super amazingly special and that it'd be impossible for anyone else to duplicate it (like strace?).
Most people agree that BTRFS is a ZFS copy, but less mature. Maybe 3-5 years from now, BTRFS will be released as v1.0. But ZFS development has carried on even further, so BTRFS will still lag behind ZFS. Do you also suggest that Oracle should kill ZFS, and help out with ZFS instead? To decrease fragmentation? ZFS is superior to BTRFS, much more mature and used in Enterprise production today. BTRFS is a copy. Why kill the original, and help out with the copy instead?
Originally Posted by david_lynch
The same with Solaris containers. IBM has also copied Solaris containers, and are calling it WPAR(?). If Linux has lot of immature filesystems or lot of immature container implementations - why kill the original and help out with a copy? Wouldn't it be better if Linux killed all immature alpha phase containers and instead helped out with the original superior ZFS and Solaris Containers?