JMP, a Java Memory Profiler, is written in C:
JMP is a profiler for java that can be used to trace objects usage and method timings. JMP uses the JVMPI interface to gather statistics and interact with the JVM. JMP uses a GTK+ interface to show the status.
Does that hurt your head too, or just mine?