This project studied virtual machines including their background, scope, and achievements. It developed a process virtual machine for MIPS that uses instruction emulation techniques like interpretation and binary translation, and a table-driven approach for efficient execution. The project covered basic VM concepts and applications, and developed a simpler process VM rather than a full system virtual machine.