Virtutech Simics is a systemlevel, instruction set simulator, capable of simulating high-end target systems with sufficient fidelity and speed to boot and run operating systems and commercial workloads. Simics provides a controlled, deterministic, and fully virtualized environment. Simics can simulate a variety of target systems, including systems based on the PC (x86 and x8664), SPARC V9, PowerPC, and Alpha architectures.Virtutech customers and partners use Simics for a variety of tasks, including to support the development of future commercial microprocessors, multiprocessor server memory architectures, and high-performance fault-tolerant operating systems. Academic groups use Simics to support education and advanced research in computer architecture and operating systems.
Simics can simulate both uniprocessor and multiprocessor systems, as well as clusters and networks of systems. It can boot and run unmodified and realistically scaled commercial workloads including Solaris 7 and 8, Red Hat Linux 6.2 (both x86, SPARC V9, and Alpha versions), Tru64 (Digital Unix 4.0F), VxWorks, and Windows NT 4.0.
Simics has been almost a decade in development.
Here is an abstract from the IEEE Computer review of Simics in PDF format:
“Full system simulation seeks to strike a balance between accuracy and performance. Many of its possibilities have been obvious to practitioners in both academia and industry for quite some time, perhaps decades, but Simics supports more of these possibilities within a single framework than other tools do. Simics is a platform for full system simulation that can run actual firmware and completely unmodified kernel and driver code. It is sufficiently abstract to achieve tolerable performance levels, and it provides both functional accuracy for running commercial workloads and sufficient timing accuracy to interface to detailed hardware models.
Simics can also run a heterogeneous network of systems from different vendors within the same framework. Exceptionally fast, Simics can easily add new components and leverage older ones within a practical abstraction level. It offers a platform with a rich API and a powerful scripting environment for use in a broad range of applications.”