Issue #8 June 2005

Red Hat speaks

Karen Bennet, VP of Linux Tools and Applications

How long have you been at Red Hat, and what is your role?
I have been at Red Hat for four years now. Red Hat and open collabortive development has revamped the entire thinking of how software development should be done. My role is VP for the Linux Tools and Applications. This group is actively involved in the development and maintenance of projects associated with many of the consortiums in the open source world such as Free Standard Group (FSF), fedora.org, ObjectWeb, Apache, Linux Standard Group (LSB), Xen, Eclipse, sourceware.org, and sourceforge.net.
What tools are maintained by your team of engineers?
The tools maintained by this group enable development and deployment in the Linux and Linux middleware areas. The tools and technologies comprise all the different runtime (C, C++, Fortran) environments, managed runtime environments (Java and C#), compilers, debuggers, execution analysis tools, performance analysis and monitoring, virtualization, apache server, web server, enterprise Java application server, database server, developer platform, etc. This team also collaborates with many universities in these topic areas as a way to broaden community involvement and innovative thinking.
Sun has been in the news recently with their dynamic tracing framework DTrace. DTrace seems similar to SystemTap for Linux. How do they compare?
The SystemTap project is an open collaboration project initially started by IBM, Intel, and Red Hat to address the need for a Linux performance monitoring toolset. Others like Hitachi have joined in the development, and the goal is to encourage other participants.
The first phase of this project is targeted to have similar functionality to Solaris's DTrace tool by enabling probes in the kernel and user space. These probes monitor performance by way of a tapset, which is the developer's method of enabling the monitoring. The infrastructure is being architected to enable future phases in the areas of recovery-oriented computing and to provide a collaborative environment to enable existing commercial tools to be integrated.
What other performance monitoring tools is Red Hat working on?
There are several other performance monitoring tools (Oprofile, valgrind, perfmon, strace, etc.) that are being worked on by Red Hat. Oprofile is one tool that required considerable work to function properly on all of the different architectures. This tool helps identify performance problems such as TLB misses, stalls, memory references, etc. One of the goals of the SystemTap project is to provide an integrated performance platform where all of these projects and future ones can be integrated.
The Red Hat tools team has done extensive work on GCC. How do you ensure that the upstream community team is involved and changes are incorporated upstream?
In the evolution and advancement of any software project, there is a point in the development of software where it needs to be go into a cocoon type development and to emerge as a "butterfly" to enable the next growth of innovation and development. This is the second evolution project of this type for this group. The first being the rearchitecting of the Linux threading model and library. We learned from that experience and decided two years ago to see if we could repeat the success of moving a technology forward in the area of the Linux compiler. The goals of the project were twofold, rearchitect GCC to enable a compiler platform that could be used for integrating more advanced compiler algorithms and to expand the circle of developers and contributors. We decided to use a similar development approach to the one we used when revising the Linux threading library. The development model can be referred to as open cocooning model. The difference from current approaches is that the restructuring and development is in full view of the community. There are some in the software industry who see this method of forking as a negative for Linux. I think this team has demonstrated and will continue to demonstrate that cocooning/forking by using the knowledge from a prior implementation is a healthy and necessary method for OSS software development. All enterprise software companies use this technique today, the difference here is that Red Hat enables you to watch us grow in full view.
For Red Hat Enterprise Linux, how long does Red Hat guarantee binary compatibility?
Red Hat has grown to understand the need for binary compatibility through the evolution of Red Hat Enterprise Linux. We currently guarantee the model for Red Hat Enterprise Linux N+2.
If you could live anywhere in the world, where would it be and why?
Anywhere that there is snow. I'm a skier and the mornings that there is fresh powder on the ground are the days that I wish that work could be conducted from the ski hill.