Rivet has a modular internal structure that makes it easy to add new tools. Brian Purville Jon Whitney Rivet is under development. A tester that can try all interesting interleavings of threads and events within a designated part of a program. The approach is similar to the model checking without a model work of Patrice Godefroid . A version of the Eraser tool developed by Stefan Savage et al.
Eraser checks whether a program follows a valid mutual exclusion locking discipline.
Modular internal structure Modular tool platforms provide significant leverage since they reduce the effort of implementing new tools. These features are already available inside every virtual machine. Rivet exposes the internal execution environment to new tools in a consistent, well-documented way. The portability of Java means that developers can easily switch between Rivet and another virtual machine. This allows the design of Rivet to focus on modularity, extensibility, and sophisticated tool support rather than on maximizing performance.