Announcing KernInst-2.0: a dynamic kernel instrumentation toolkit. This release include the following enhancements: * Support for IA-32/Linux 2.4 * Bug fixes and performance improvements for SPARC/Solaris * Major internal restructuring to separate architecture-dependent and -independent functionality to aid in ports to other systems (e.g., a port to PowerPC/Linux is well underway) * KerninstAPI: a C++ application programming interface for dynamic kernel instrumentation * Ability to export data collected in kperfmon visualizations to a file for offline analysis. Kerninst is a framework for dynamically splicing code into a running kernel, almost anywhere, anytime. Code can be removed and changed at will. Kerninst works on standard (unmodified) Solaris and Linux kernels, *no* kernel re-compilation is necessary. The first major client application of Kerninst is Kperfmon, a tool that allows the user to collect precise performance data about almost any kernel function or basic block. It supports a wide range of performance metrics, including the hardware counted number of cache misses and branch mis-predictions. These metrics can be applied to the kernel at run time. When you are done with your measurement session, all instrumentation code is removed and the kernel is left as before. This release supports the following configurations: * Sparc/Solaris - Any UltraSparc processor (I, II or III) - Uni or Multiprocessor machines - Solaris 7 and 8 - 32-bit or 64-bit kernel * IA-32/Linux - Intel Pentium III and 4, AMD Athlon - Uni or Multiprocessor machines - Linux 2.4.x (should be distribution independent) To install Kerninst, download a distribution from ftp://ftp.cs.wisc.edu/paradyn/kerninst/. The release contains a source distribution, kerninst-2.0-src.tar.gz, and two binary distributions: kerninst-2.0-sparcv9.tar.gz (for the 64-bit Solaris) and kerninst-2.0-ia32.tar.gz (for Linux 2.4). A binary distribution for 32-bit SPARC/Solaris will be made available upon request. After you uncompress/un-tar the distribution, follow the installation instructions in the user's guide located in the docs directory. Kerninst is the foundation for several other research efforts, including code testing and dynamic code optimization. Source code is available to selected partners. Technical papers about Kerninst can be found at: http://www.paradyn.org/html/publications-by-category.html#kerninst Please send questions to mjbrim@cs.wisc.edu.