JVM (Java Sanal Makinesi) nedir? Javayı çalıştırmak için ihtiyacımız olan işletim sistemi üzerinde oluşturulan sanal bir ortam diye tanımlasak doğru olur mu? Bir işletim sisteminde bu JVM bir tane mi oluyor? ya da aynı işletim sisteminde çalışan 3 ayrı programımız varsa, o işletim sisteminde 3 ayrı JVM mi oluyor?
kavram kargaşası yaşıyor isem lütfen beni bu konuda aydınlatır mısın?
JVM – java virtual machine (java sanal makinesi)
C/C++/Pascal/vs. dillerde yazdığımız kodları derlediğimiz zaman bize fiziksel makine üzerinde çalışacak bir uygulama üretir. Yani windows/intel makinede çalışacak kod çıkarır. Bu kodların linux/intel makinede çalışması için tekrar bir derleme işleminden geçmesi gerekir. Yani derleyici işlemci/işletim sistemi bazlı bir derleme işlemi yapar.
Java her makinede ayrı ayrı derleme işlemi yapılmaması için bir ortam sunma düşüncesini benimsemiştir. Javada derleme işlemi yapılacağı zaman kodu normal makine koduna düşürmek yerine ara bir forma düşürülür. Bu hemen hemen makine kodu gibi olup aslında tam bir makine kodu değil. Bu kodu da bir makine okuması için düşünülmüştür. Bu kodu okuması için fiziksel bir makine geliştirmek yerine yazılım ile bir makine simülasyonu yazılmıştır. Artık uygulama çalıştırıldığı zaman önce bu sanal makine üzerinde çalışır, bu makine fiziksel makineye anında çevirip uygulamayı çalıştırır. Bu aradaki makine simülasyonu java sanal makinesi oluyor.
Abiler bende java sanal makine hatası werio sonoyuncuda nasıl çözerim javayı yukledim olmadı nolur çözum werin elini ayanı opum çözum werr