java-custom-architecture-machine University project implementing custom architecture real and virtual machines