The following are some of the projects that currently keep us glued to
our desktops or laptops, both at work or at home...
Binary Transformation Infrastructure (Vulcan)
Vulcan is a single infrastructure for building a wide range of custom tools for program analysis,
optimization, and testing. Through the Vulcan API, developers and testers can build custom tools with
very few lines of code for basic block counting, memory tracing, memory allocation, coverage, failure
insertion, optimization, compiler auditing etc.
Vulcan scales to large commercial applications and has been used to improve the performance and
reliability of products across Microsoft.
Binary Profile Feedback Optimization framework (Basic Block Tools (BBT))
BBT is a suite of optimization tools designed to help reduce the working-set requirements for a Win32 application by applying advanced static analysis and code layout heuristics, and integrating profile data gathered from monitoring the program execution flow. In addition, BBT rearranges static data and resources sections for additional paging reduction.
Runtime Analysis Infrastructure (Nirvana)
Nirvana is a lightweight, dynamic translation framework that can be used to monitor and control
the (user mode) execution of a running process without needing to recompile or rebuild any code
in that process. This is sometimes also referred to as program shepherding, sandboxing, emulation,
or virtualization. Dynamic translation is a powerful complement to existing static analysis and