You can download my dissertation here (215-or-so pages, PDF format).
Here is a brief run-through of the dissertation.
Ariel Tamches and Barton P. Miller. Fine-Grained Dynamic Instrumentation of Commodity Operating System Kernels. Third Symposium on Operating Systems Design and Implementation (OSDI), February 1999. (Postscript, Compressed, Gzipped, PDF)
Ariel Tamches and Barton P. Miller. Using Dynamic Kernel Instrumentation for Kernel and Application Tuning. International Journal of High Performance Computing Applications, v. 13 no. 3, Fall 1999. (Postscript, Compressed, Gzipped, PDF)
June, 2000: Thanks to funding from Veritas,
Alex Mirgorodskii
is working on a 64-bit port of KernInst.
June, 2000: Second off-site KernInst demo at Sun Microsystems. An interesting
bit of karma occurred here; my slideshow talk via PowerPoint crashed, while a live
and rather in-depth demo of KernInst went off without a hitch.
March, 2000: Virtualization added to KernInst; these are performance metrics
that instrument the kernel's context switch code to stop and re-start
timers to exclude from the timer's total the time spent switched out.
March, 2000: First off-site demo of KernInst at Veritas Software.
December, 1999: KernInst has been ported to UltraSparc/Solaris 7 (32-bit kernel only, for now).
October, 1999: A prerelease version of KernInst is now being used by a few brave
off-site industry testers.
March 25, 1999: At "Paradyn Week '99", I gave the first public demo of KernInst
to some of our affiliates in research and industry. (More specifically, I demoed
kerninstd alongside kperfmon, a program for performance measurement of selected kernel
routines.)
Much to my pleasure and somewhat to my chagrin, the universal comment seemed to
be "I didn't really believe it worked after reading your papers, or after hearing
your KernInst talk, but now I do." Gee thanks, I guess :)
February 1999: I gave a KernInst talk at
OSDI
in New Orleans. Here are the slides
(postscript,
powerpoint), if you're interested.
July 1998:
KernInst paper
submitted for publication. It contains a good overview of the technology
behind KernInst, fine-grained dynamic instrumentation of unmodified commmodity
kernels (I gotta find an acronym for that).
March 1998: I gave a KernInst talk during a Paradyn affiliates meeting. To see
a copy of it, click here.
Late 1997: For the first time, I was able to instrument a Solaris kernel function
without causing an immediate reboot :)
February 1997: I gave a very preliminary,
very short talk to the Paradyn affiliates meeting
on a crazy idea I wanted to try called dynamic kernel
instrumentation.
Late 1996: My advisor Bart Miller
suggested that I investigate dynamic instrumentation on kernels. He said it
might be "fun".
The lowest-level, nastiest parts of operating system kernels.
The rest of operating system kernels.
Turning ugly, slow, bit-rotted pieces of code (whether I wrote it or not) into lean, mean, and maintainable code.
Alpine skiing. Since I moved to California from Wisconsin
after getting my Ph.D., my "home hill" has upgraded somewhat, from
Cascade Mountain, WI
to
Squaw Valley, CA.
By the way, there is good skiing available in the midwest,
if you know where to look. Try
Whitecap Mountain, WI and
Lutsen, MN, each unfortunately
located in the middle of nowhere.
The C++ Programming Language
Blues and classic rock
Country music
Computerized techno music (I prefer actual
human beings playing the rhythm section on actual instruments, a notion
which seems alien in today's popular music.)
Fortran
Slow compilers (why, in this day and age, should compiling take more than one second? Compilers should do their work
as you type, in the background.)