İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Haberler
  4. SDN Haberleri
SDN Haberleri

Android Ne Kadar Linux?

tolgacem12.04.201312 cevap2.122 görüntüleme
2011'den beri3.644 mesaj
#1
Android Ne Kadar Linux?



Android işletim sisteminin yapısı ve yüksek sistem ihtiyacının sebeplerini konuşuyoruz. Linux çekirdeği kullanan Android, ne kadar Linux? Linux Foundation'dan Oytun Şengül'e sorduk.
Cevaplar
2010'den beri73 mesaj
#2
Android C diliyle doğrudan çalışabilir hale gelmedikçe ne hızlanır, ne stabil olur. Tamamen sanal makinede java ile çalışan bir sistem. Java bilgisayarda bile sürekli çöken, dakka başı güncelleme çıkan, güncelleme diye virüsü bile yapılmış flash gibi baş belası verimsiz bir dil. Bütün sistem java olunca i7 haswell işlemci ve GTX 780 vs. gibi ekran kartı bile olsa kasım kasım kasılacaktır.

Peki ios ne kadar linux? Ya da blackberry 10. Bunlar çok daha stabil çalışıyorlar.
2012'den beri400 mesaj
#3
"Eğer başka bir firma tarafından hazırlanan bir arayüz daha kullanılıyorsa, bir sanal makina daha oluşturmuş oluyorsunuz ve sistem daha da zorlanmaya başlıyor."

Editör sanki kodlamayı kendi yapmış gibi bir yorum yapmış burada... Herkes her şeyi çok biliyor bizim ülkemizde. Samsung'u ele alalım: TouchWiz bir uygulama ve diğer uygulamalar gibi dalvik üzerinden çalıştırılıyor. Yani ikinci bir sanal makina açma durumu yok burada. Dalvik JVM nin elden geçirilip google tarafından tekrar yazılmış bir sanal makinasıdır. Bildiğimiz gibi android tabanlı uygulamalar java yada native denilen yani makina koduyla derlenmiş(c-c++ ikilisi) dillerle yazılıyor. Java kullanılarak geliştirilen uygulamalar direktman bytecode u alıp bir sanal makina üzerinden çalıştırılıp kernel ile iletişime geçip işlemciye ulaştırılıyor yada gerekli donanıma.

Tek bir sanal makina vardır. Dalvik cache, Dalvik VM bunlar bir tane. Eğer bahsedilmek istenilen her uygulama bir dalvik vm tarafından çalıştırılıyor denmekse bu mantıklıdır... Çünkü java ve dvm nin özü her uygulama için bir sanal vm çalıştırmaktır.



Yukarıdaki mimari Android'in nasıl işlediğidir ve kernel ne halta yarar, android runtime ve dalvik virtual machine nedir, framework kimdir bunlar anlatılıyor...

Lütfen şurada bir işi ya da durumu anlatırken bilgilerinizi tazeleyip araştırıp öyle anlatın.

Javanın doğası gereği eğer iyi optimize edilmemişse uygulama(application) kasılacaktır!!!! Burada suç sadece google yada samsung yada donanımda değil uygulamayı geliştiren yazılımcıda da vardır.

IOS da uygulamalar yavaş değil ki diyen salaklar çıkabilir. Önlem olarak: IOS Objective-C ile geliştiriliyor ve makina koduna derleniyor. IOS belirli donanımlar dışında çalışmadığı için o donanımlara özel geliştiriliyor, test ediliyor ve piyasaya sürülüyor...

Makina koduna çevrilen yani native uygulamalar sanal makina ile çalışan uygulamalara oranla ortalama %20 - 40 arası hızlı çalışır. Bunu kabullenin. Androidi hızlandırmak istiyorsanız yaklaşık 30 kadar servisten yada gereksiz yere çalışan servislerden kurtulun(servis = arkaplanda çalışıp makinayı kasan uygulamalar)

Bir de önüne gelen izinleri isteyen programları yüklerken 2 kere düşünün...
2011'den beri340 mesaj
#4
Android Ne Kadar İOS?
cevabı daha uygun bence!
2009'den beri233 mesaj
#5
Bu kadar üstünkörü bilgilerle de birşey bu kadar yerilmez ki. Android doğası gereği birçok platformda çalışmak zorunda. Bu yüzden mecburen donanımı soyutlayan bir yapıyı kullanmak zorunda. Bu yüzden de dalvik sanal makinesini kullanıyor. Diğer taraftan firefox os de hız ve verimlilik konusunda android den farklı olmayacaktır. (Hatta çok daha kötü de olabilir). Çünkü yazılan uygulamalar html5 ile yazılacak ve nasıl dalvik java bytecode u çalıştırıyorsa firefox html motoru da html5 i çalıştıracak.
2012'den beri1.510 mesaj
#6
Oooof temcit temcit..
2008'den beri6.607 mesaj
#7
Telefon ve tablet üreticileri de donanım özelliklerini satış stratejisi olarak benimsediği için yakın zamanda Android'in yerini Tizen veya FirefoxOS'a bırakacağını düşünmüyorum.
2007'den beri2.589 mesaj
#8
Android Java tabanlı bir sistem değildir! Sizler kodu daha çok Java'da yazıldığı için onu Java tabanlı görebilirsiniz ancak olay öyle değil. Bir apk dosyasını açıp içindekilere baktığınızda Sizin yazdığınız Java kodunun compile ve build sonrasında dex'e ( dalvik exacutable'di sanırım açılımı) dönüştüğünü göreceksiniz.
2008'den beri13 bin mesaj
#9
annttiigs dedi: ↑
Android Java tabanlı bir sistem değildir! Sizler kodu daha çok Java'da yazıldığı için onu Java tabanlı görebilirsiniz ancak olay öyle değil. Bir apk dosyasını açıp içindekilere baktığınızda Sizin yazdığınız Java kodunun compile ve build sonrasında dex'e ( dalvik exacutable'di sanırım açılımı) dönüştüğünü göreceksiniz.
Genel olarak ülkemizde kültürün arttığını gördüm, yorumlar genel olarak doğru ama anntiigs senin yorumunu pek doğru bulduğumu söyleyemeyeceğim. Dalvik nedir? sorusunu biraz gözden geçirmen lazım gibi geldi.
2007'den beri2.589 mesaj
#10
keyloger dedi: ↑
Genel olarak ülkemizde kültürün arttığını gördüm, yorumlar genel olarak doğru ama anntiigs senin yorumunu pek doğru bulduğumu söyleyemeyeceğim. Dalvik nedir? sorusunu biraz gözden geçirmen lazım gibi geldi.
katılmadığınız yeri söylerseniz kendimi o noktaya yoğunlaştırıp yanlışımı düzeltebilirim. şimdilik katılmadığınız kısmın Dalvik VM hakkında olduğunu sanıyorum.

http://en.wikipedia.org/wiki/Dalvik_(software) (Türkçe sayfasına baktım yoktu. Dilimin döndüğünce tercüme edebilirim. Ve benim Dalvik hakkında söylediğimin tersini söylemeyen bir şeyler diyor sanırım.)

2009'den beri3.025 mesaj
#11
kesbi dedi: ↑
Android C diliyle doğrudan çalışabilir hale gelmedikçe ne hızlanır, ne stabil olur. Tamamen sanal makinede java ile çalışan bir sistem. Java bilgisayarda bile sürekli çöken, dakka başı güncelleme çıkan, güncelleme diye virüsü bile yapılmış flash gibi baş belası verimsiz bir dil. Bütün sistem java olunca i7 haswell işlemci ve GTX 780 vs. gibi ekran kartı bile olsa kasım kasım kasılacaktır.

Peki ios ne kadar linux? Ya da blackberry 10. Bunlar çok daha stabil çalışıyorlar.
Vay anasını! Adam Java'yı sildi attı :D
2008'den beri13 bin mesaj
#12
annttiigs dedi: ↑
katılmadığınız yeri söylerseniz kendimi o noktaya yoğunlaştırıp yanlışımı düzeltebilirim. şimdilik katılmadığınız kısmın Dalvik VM hakkında olduğunu sanıyorum.

http://en.wikipedia.org/wiki/Dalvik_(software) (Türkçe sayfasına baktım yoktu. Dilimin döndüğünce tercüme edebilirim. Ve benim Dalvik hakkında söylediğimin tersini söylemeyen bir şeyler diyor sanırım.)

Java yanılgısı bu konudaki. Dalvik VM'i genel olarak özelleşmiş bir java vm olarak görmek daha doğru olacaktır. Bu durumda Android uygulamalarının java tabanlı olduğunun düşünülmesinin yanlış olmayacağını düşünüyorum. Doğal olarak performans'ın jvm ile alakası olmamakla beraber yapının benzer olduğunu ve bir parelellik olduğunu söylemek çok yanlış olmayacaktır.

Buradan sonra sözüm sana değil. :)

Java'nın çalışma performans'ının sanal makina üzerinde olduğundan yavaş olacağı falan filan söylenmiş ama bunlar birer tool ve performansları kullananın yetkinliğiyle 1-e-1 ilişkili. Hele ki C dediğiniz dil bu açıdan yanlış kullanıldığında çok daha tehlikeli bir araç. Herşey kodun derlendikten sonra makine diline dönmesi demek değil kısaca. Bugün günümüzde Twitter'dan tutun Linkedin'e birçok büyük web uygulaması JVM üzerinde çalışıyor. Sizce performans konusunda sorunları olsa kullanırlar mıydı?
2007'den beri2.589 mesaj
#13
keyloger dedi: ↑
Java yanılgısı bu konudaki. Dalvik VM'i genel olarak özelleşmiş bir java vm olarak görmek daha doğru olacaktır. Bu durumda Android uygulamalarının java tabanlı olduğunun düşünülmesinin yanlış olmayacağını düşünüyorum. Doğal olarak performans'ın jvm ile alakası olmamakla beraber yapının benzer olduğunu ve bir parelellik olduğunu söylemek çok yanlış olmayacaktır.

Buradan sonra sözüm sana değil. :)

Java'nın çalışma performans'ının sanal makina üzerinde olduğundan yavaş olacağı falan filan söylenmiş ama bunlar birer tool ve performansları kullananın yetkinliğiyle 1-e-1 ilişkili. Hele ki C dediğiniz dil bu açıdan yanlış kullanıldığında çok daha tehlikeli bir araç. Herşey kodun derlendikten sonra makine diline dönmesi demek değil kısaca. Bugün günümüzde Twitter'dan tutun Linkedin'e birçok büyük web uygulaması JVM üzerinde çalışıyor. Sizce performans konusunda sorunları olsa kullanırlar mıydı?
Dalvik VM Dalvik Executable ya da dalvik bytecode tanır ve çalıştırır. "özelleşmiş"'ten kasıt nedir bence onun sınırını çizmek lazım.

Elma soyma araçlarının hepsini elma soyma aracı olarak ele alabiliriz burada bence araçların çalışma yöntemleri önemlidir :)

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.