Logo tr.androidermagazine.com
Logo tr.androidermagazine.com

A dan z ye: dalvik nedir

Anonim

Dalvik nedir? Android ve iç işleri hakkında konuşurken bu kelimenin İnternette çok fazla atıldığını duyuyoruz. Sadece birkaç paragrafta verebileceğimiz kolay bir açıklama olmasa da, temelinizi ele alabilir ve inek tarafınızı beslemeniz gerekirse sizi doğru yöne işaret edebiliriz. En basit anlamıyla Dalvik, Java ile yazılmış uygulamaları ve kodları çalıştıran sanal bir makinedir. Standart bir Java derleyicisi kaynak kodu (metin dosyaları olarak yazılır) Bytecode'a dönüştürür, ardından Dalvik VM'nin okuyabileceği ve kullanabileceği bir.dex dosyasına derlenir. Temelde, sınıf dosyaları.dex dosyalarına dönüştürülür (standart Java VM kullanıyorsa, bir jar dosyası gibi) ve sonra Dalvik Sanal Makinesi tarafından okunur ve yürütülür. Sınıf dosyalarında kullanılan yinelenen veriler, alandan tasarruf sağlayan ve daha az ek yük kullanan,.dex çıktısına yalnızca bir kez eklenir. Mobil için işleri daha da iyileştirmek için bir uygulama yüklediğinizde yürütülebilir dosyalar yeniden değiştirilebilir. Bayt sırasını takas etme ve veri yapısını ve işlev kitaplıklarını satır içi bağlantıya ekleme gibi şeyler dosyaları daha küçük hale getirir ve cihazlarımızda daha iyi çalışır. Dalvik VM, Android düşünülerek ilk kareden yazıldı.

Şaşkın mı? Kötü hissetme, geeky programlama konuşması genellikle bu etkiye sahiptir. Bu şekilde düşünün - bilgisayarınız için bir Java uygulaması oluşturduğunuzda, bir Java Sanal Makinesi kaynak kodun derlenmiş çıktısını çalıştırır. Bu yüzden Java hemen hemen tüm işletim sistemlerinde çalışır. Dalvik, Apache Harmony projesinin koduyla oluşturulmuş, açık kaynaklı olan ve standart bir Java VM'nin sınırlı donanımımızdaki standart Java VM'den daha iyi çalışan, birden fazla çalışabilmeniz için tasarlanan, mobil olarak optimize edilmiş bir versiyonudur. Bir seferde VM örneği - yani çoklu görev. Dalvik açık kaynaklı olduğu için, BlackBerry PlayBook'taki gibi diğer işletim sistemlerine de taşınır. Oldukça karmaşık, oldukça havalı ve Oracle (Java’yı Sun’tan alan şirket) ondan nefret ediyor.

Android, Dalvik'i kullanıyor çünkü standart Java Sanal Makinesi lisansı GPL2 (ücretsiz ve açık kaynak) iken, mobil bir cihaza yerleştirildiğinde ve Java Micro Edition kullanırken, değil. Google ile Oracle arasındaki büyük anlaşmazlığın tümü Dalvik'i temel alıyor. Google, Oracle’ın herhangi bir kodunu kullanmadan "temiz oda" bir ortamda yazıldığını iddia ediyor ve Oracle aynı fikirde değil. Hiçbir fikrim olmadığını iddia ediyoruz, olduğu gibi çalıştığı için de mutluyuz.