There is plenty of machine/assembly languages such as LC-3, DLX, etc. designed for educational purposes. I am looking for an educational VM, by VM I mean stack virtual machine that has instructions higher-level than assembly language, something similar to JVM, but much simpler, in order to make the implementation of a compiler for this VM a doable task for a single person in restricted time, but yet practical to be a compilation target for high-level OOP language. I failed to google one, are there any?
If you're looking for something educational and do not care about usability, you can have a look at my Programming Langauges Zoo. Two languages have VMs and compilers:
Maybe the best would be to write a own little VM. Its not that complicated and if its for education you can use every programming language you want.
In this book the Author describes how to write a VM and a Compiler. (The Compiler targets the bytecode language of the VM. You could just skipp the Compiler Parts and only follow the VM tutorial.