Herkes bana neden JVMs açıklayabilir miyim (çok fazla kontrol etmedim, ama hiç bu şekilde yapmadı bir görmedim) sabit bir yığın boyutu üzerinde çalıştırmak gerekir? Basit bir bitişik yığın üzerinde uygulamak daha kolay olduğunu biliyorum, ancak Sun JVM şimdi on yıldan eski, bu yüzden onları geliştirmek için zaman olmasını beklerdim.
Başlangıçta programınızın maksimum bellek boyutunu tanımlamak için 1960'larda yapılacak bir şey gibi görünüyor ve daha sonra işletim sistemi sanal bellek yönetimi ile kötü etkileşimler var (GC, değiştirilen verileri alma, Java işleminin ne kadar bellek olduğunu belirleyememe) Gerçekten işletim sistemi tarafında kullanarak, büyük miktarda VM alanı boşa harcıyor (biliyorum, 48bit makinelerinizi önemsemiyorsunuz ...)). Ayrıca, JVM (EE uygulama sunucuları, OSGi) içinde küçük işletim sistemleri oluşturmak için yapılan çeşitli üzücü girişimlerin en azından kısmen bu durumdan sorumlu olduğunu tahmin ediyorum, çünkü bir sistemde birden fazla Java işlemi çalıştırmak her zaman boşa giden kaynaklara yol açıyor çünkü her birine zirvede kullanmak zorunda kalabileceği belleği verin.
Şaşırtıcı bir şekilde, Google beklediğimden öfke fırtınaları vermedi, ancak milyonlarca insanın sabit yığın boyutunu öğrenip sadece bir gerçeği kabul ettiği için gömülmüş olabilirler.