title: Why can't we evolve JVM as a hardware virtualization technology like VMWare, KVM, Docker, etc.?
body: <p>Virtualization has been with us for quite a some time now. VMWare was introduced in 1999 and then came several other similar software such as KVM, VirtualBox, etc. Later hypervisors evolved in to unikernels and next container technologies such as docker, kubernetes, etc. were seen.</p>
  <p>My question is this. (I know this is a foolish question but this question has been bugging me for a long time)</p>
  <p>Java Virtual Machine (JVM) has been around since 1995.</p>
  <p>Why didn't Sun Microsystems (or later Oracle) bother to use JVM to enter the virtualization market? Is it due to a business strategy / marketing decision or is there a serious technological limitation that prevents JVM from being evolved into a virtualization mechanism? If someone attempts to enhance JVM to make it a virtualization method like VMWare ESXi / KVM / Docker then will it be a very foolish effort like trying to convert a helicopter into a spacecraft that would take us to the moon?</p>
  <p>JVM can also execute a code (it may be called a bytecode but anyway it can execute a programme) and can access hardware resources (microprocessor, memory, storage, networking) to produce the output.</p>