This comparison of Application Virtual Machines lists some of the common software virtual machines that implement the concept of Application Virtualization, typically for the purpose allowing application binaries to be portably run on many different computer architectures and operating systems. The application is usually run on the computer using an interpreter or Just In Time compilation.