Android Runtime ART, Hangi Yenilikleri Getiriyor? (Android 4.4 Beraber geliyor)

Başlatan Fuul oyun, 12 Nisan 2016, 02:53:14

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.


                        
   
   Android Runtime ART, Hangi Yenilikleri Getiriyor?
   
   
   
   Android işletim sistemi bildiğiniz gibi Android uygulamalarını çalıştırmak için Dalvik sanal makinesini kullanıyor. Google yavaş yavaş artık Dalvik?ten vazgeçip uzun süredir üzerinde çalıştığı yeni sanal makinesi Android Runtime'a (ART) geçiş yapmak istiyor ve bunun için son Android sürümü olan Kitkat'a ART'ı da entegre etmiş. Bu yazımda ART'ın detayına, Dalvik'ten farkına ve ne yenilikler getirdiğine değineceğim.
   
   Android platformunda, Java diliyle yazdığımız Android uygulama kodları önce Java bytecode'larını içeren .class uzantılı dosyalara sonra da Dalvik sanal makinesinin kullanabileceği ve çalıştırabileceği Dalvik bytecode'unu içeren .dex uzantılı tek bir dosyaya dönüştürülür. Dalvik kısıtlı bellek ve işlemci gücü sağlayan mobil cihazlarda çalışmak için tasarlanmış bir yapı olduğu için günümüzdeki çoğu modern bilgisayar programlama dili (Java, C#) gibi yığınlarla (stack) değil yazmaçlarla (register) çalışır. Bir başka deyişle, Android stack-based değil, register-based yapıdadır ve bu şekilde daha hızlı çalışır.
   
   Dalvik sanal makinesiyle ilgili daha fazla detaya Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap adresinden ulaşabilirsiniz.
   
   
   
   Peki, ART nedir?
   
   Yukarıda bahsettiğimiz gibi Dalvik her ne kadar mobil odaklı ve kısıtlı kaynaklarla çalışabilecek bir yapı olsa da, bazı alanlarda iyileştirilmesi gereken ve zamanın şartlarına göre tasarlanmış, artık yavaş yavaş eskiyen bir runtime (çalışma zamanı).
   
   Google bunun farkında olduğu için yaklaşık 2 yıldır yeni bir runtime üzerinde çalışıyor, ismi ART yani Android Runtime. ART'ın çalışma şekli Dalvik'ten çok farklı. Dalvik, Android 2.2 sürümünden beri "Tam Zamanında" derleme (Just-In-Time ? JIT compilation) kullanarak kodu derliyor. Uygulamamızı yazıp cihaza yüklediğimizde kod belli bir oranda derleniyor ve esas derleme ve optimizasyon uygulama çalışmaya başladığında yapılıyor. Bu işlem uygulama her çalıştığında yapılıyor. Tabii bu da uygulama her çalıştığında fazladan yük getiriyor ve daha az verimli çalışılmasına sebep oluyor.
   
   ART bu durumu tamamen ortadan kaldırmak için "Zamanın Ötesinde derleme" (Ahead-of-Time ? AOT compilation) denilen bir işlemle bytecode derlemesini uygulama cihaza kurulurken yapıyor ve bytecode'u makine diline çeviriyor. Böylece her uygulama açılışında yeni bir sanal makine başlatma ve uygulama kodunu derleyerek çalıştırma yükü aradan çıkmış oluyor.
   
   
   
   ART neler kazandırıyor?
   
   ART henüz tam anlamıyla standart olarak kullanıma hazır değil, birçok optimizasyonu ve testi henüz yapılmamış. Bu yüzden ART ile Dalvik arasında ne kadar fark olduğunu ve gerçekte neler kazandıracağını şu aşamada doğru olarak ölçmek güç. Fakat çeşitli test siteleri ve kullanıcılar tarafından yapılan testlerde işlem sürelerinin şimdiden yarıya yakın azaldığı söyleniyor (kendi yaptığım testlerde bu kadar büyük bir fark göremedim fakat ART?a geçiş yaptıktan sonra işletim sisteminin animasyonlarında ve bazı uygulamalarda fark edilir hızlanma gördüm). Bu da uygulamaların daha hızlı çalışması, arayüzdeki geçişlerin ve animasyonların daha yumuşak ve takılmadan görüntülenmesi anlamına geliyor. Daha hızlı işleme, daha az işlemci gücü gereksinimi demek olduğu için cihazların pil ömürlerinde de ciddi artış bekleniyor.
   
   Bu getirilerin elbet bir de bedeli var. Uygulamalar cihaza kurulurken makine diline çevrileceği için ilk kurulum süreleri artıyor. Küçük uygulamalarda bu hissedilmeyecek bir fark iken, daha yüklü ve büyük uygulamalarda kurulum süresi fark edilir şekilde artabilir. Her bytecode'un makine dilindeki birkaç komuta denk geldiği düşünülürse, makine diline çevrilmiş olarak saklanan uygulamalar cihazın belleğinde daha çok yer kaplayacaktır ama bu büyüklük artışı sadece çalıştırılabilir kodda olacağı için (resim, video, ses dosyası gibi uygulama kaynaklarında bir değişiklik söz konusu değil) çok fazla olmayacaktır. Google %10-20 arasında bir artış olacağını söylüyor.
   
   Sonuçta uygulamaların ve işletim sisteminin daha hızlı çalışması ve cihazın pil ömrünün artması gibi çok kritik getirilerin yanında cihazdaki depolama alanında kaplanan miktarın artması veya ilk kurulumun daha uzun sürmesinin çok bir öneminin olmayacağı açık.
   
   
   
   ART'ı nasıl kullanabilirim?
   
   Google, Android 4.4 sürümü ile birlikte artık cihazınızda çalışma zamanı olarak Dalvik veya ART'ı seçmenize olanak veriyor. Bunun uygulama ve donanım geliştiriciler için deneme amaçlı bir özellik olduğunu söylemekte fayda var. Yukarıda da bahsettiğim gibi, ART henüz tam anlamıyla hazır değil. Tüm bu söylediklerime rağmen yine de yeni çalışma zamanını ve getirdiği farklılıkları test etmek istiyorsanız ve cihazınızda Android 4.4.x işletim sistemi bulunuyorsa, "Ayarlar" (Settings) > "Geliştirici Seçenekleri" (Developer Options) > "Çalışma zamanını seçin" (Select runtime) kısmından Dalvik seçeneğini değiştirerek ART'ı seçebilirsiniz
   .
   
   
   Bu ayarı her değiştirdiğinizde cihazınız Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap kütüphanesinden Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap kütüphanesine geçmek için yeniden başlatılacak ve kurulu bütün uygulamalarınız ART için tek tek derlenecek ve optimize edilecek. Bu işlem cihazınızda kurulu uygulama sayısına bağlı olarak 5 ile 15 dakika arasında sürüyor, bunu dikkate alarak bu işi boş bir zamanınızda yapmanızı tavsiye ederim.
   
   Son olarak bazı uygulamaların ART ile uyumlu olmadığını, hatalı çalıştığını ve hatta hiç çalışmadığını belirtmeden yazımı bitirmeyeyim. Mesela sık kullanılan mesajlaşma uygulaması WhatsApp, ART üzerinde çalışmıyor; sürekli hata veriyor ve dahası kaldırıp tekrar kurmak isterseniz kuramıyorsunuz, bilginize.
   
   
   Önemli : Dalvik varsayılan zamanı kalmalıdır ya da Android uygulamaları ve üçüncü parti uygulamalar kırılma riski
   Alintidir:
   Kaynak Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap
                     
                  
                  

Linkback: Android Runtime ART, Hangi Yenilikleri Getiriyor? (Android 4.4 Beraber geliyor)
  • Gösterim 1,166 
  • Android Genel Bölümü
  • 0 Yanıtlar




Paylaş whatsappPaylaş facebookPaylaş linkedinPaylaş twitterPaylaş myspacePaylaş redditPaylaş diggPaylaş stumblePaylaş technoratiPaylaş delicious

Benzer Konular (5)


İçerik sağlayıcı paylaşım sitesi olarak hizmet veren Replikacep.com sitemizde 5651 sayılı kanunun 8. maddesine ve T.C.Knın 125. maddesine göre tüm üyelerimiz yaptıkları paylaşımlardan kendileri sorumludur.Replikacep.com hakkında yapılacak tüm hukuksal şikayetleri İletişim sayfamızdan bize bildirdikten en geç 3 (üç) iş günü içerisinde ilgili kanunlar ve yönetmelikler çerçevesinde tarafımızca incelenerek gereken işlemler yapılacak ve site yöneticilerimiz tarafından bilgi verilecektir.
Footer menü
Hakkımızda
Bize Ulaşın
Biz Kimiz
Hizmetlerimiz