https://ramsunthar.medium.com/jvm-java-virtual-machine-architecture-explained-for-beginners-776eea4215ab