KTAP: A New Dynamic Tracing Tool For Linux

Posted by Michael Larabel on December 31, 2012

KTAP is an experimental project that's a new dynamic tracing tool for Linux. KTAP has several different design principles from SystemTap, one of the current most common dynamic instrumentation and tracing tools for Linux. This new project might satisfy some of those developers that have been wanting Sun/Oracle's DTrace to come to Linux.

Realizing SystemTap wasn't fulfilling all of his dynamic tracing needs on Linux, Jovi Zhang, an embedded Linux developer, wrote KTAP. KTAP uses a scripting language and lets users trace the Linux kernel dynamically. While different, KTAP does have some common points with the current Linux SystemTap and DTrace on Solaris.

Differentiating KTAP from SystemTap is that it dnes't depend upon GCC, doesn't require compiling a kernel module, has greater portability, uses its own "simple" dynamic-typed script language, KTAP cannot crash the Linux kernel, and KTAP is completely open-source under the GPL. Right now the project is just seeking "request for comments" while in an experimental state, but the developer may look at mainlining the code into the Linux kernel in the future. Another benefit of KTAP is that it won't require root privileges in a future update.

KTAP isn't trying to be a clone or port of DTrace from Solaris to Linux but is built from scratch. The custom KTAP script language shares a syntax similar to Lua and is all GPL licensed. KTAPC is the KTAP user-space compiler for compiling the KTAP script into a bytecode chunk file that the KTAP binary then loads and runs.

For more details on KTAP for the Linux kernel, see the KTAP announcement that was made on Sunday to the Linux kernel mailing list. The project is still experimental but is showing early promise.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. KDE's KWin Made Lots Of Progress In 4.11
  2. Ubuntu Announces Carrier Advisory Group
  3. Qt 5.1 Release Candidate 1 Has Arrived
  4. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  5. Subversion 1.8 Presents New Features
  6. LLVM 3.3 Officially Released
  7. LLVM/Clang Now Uses Loop Vectorizer At New Levels
  8. Intel GPU Driver Tries To Rip Out FBDEV Support
  9. Coreboot Doing AMD USB 3.0, Q35 QEMU Emulation
  10. VP9 Codec Now Enabled By Default In Chrome
  11. openSUSE 13.1 M2 Plays On PulseAudio 4.0
Latest Forum Talk
  1. The Wayland Situation: Facts About X vs. Wayland
  2. Planetary Annihilation Plans To Come To Linux
  3. Benchmarks Of NVIDIA's New Linux GPU Driver
  4. Intel GPU Driver Tries To Rip Out FBDEV Support
  5. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  6. Commodity Tips
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite