previous index next

what if we wanted to characterize Powerpoint? Well, I'm running my talk here under our system. This is an unmodified copy of Powerpoint, running on Windows and commodity hardware. We have a software layer between Powerpoint and the underlying platform. In this layer I've embedded a tool that counts instructions, and its output is displayed in the window over here, along with some statistics from our core system. You can see that Powerpoint has executed 500 million instructions so far. This is not a trivial thing -- Powerpoint is a huge application, it has multiple threads, many dynamically loaded libraries, even dynamically generated code.

There are many information gathering tools we could build, from program characterization to gathering traces for simulation to profiling. And as long as we're sitting in the application's runtime instruction stream, what's to stop us from modifying it?

  Copyright © 2004 Derek Bruening