64 bity dla Androida

64 bity dla Androida30.12.2013 08:36
Źródło zdjęć: © www.phonearena.com
Mateusz Olejnik

64 bity brzmi znacznie lepiej niż 32 i wszelkie znaki na niebie i ziemi świadczą o tym, że w 2014 roku wszyscy liczący się gracze na rynku mobilnym będą chcieli zagrać właśnie tą kartą. Jak szybko producenci procesorów będą w stanie wydać nowe, high-endowe układy? I czy rozwój Androida nadąży za rozwojem sprzętu, czy pozostanie w cieniu Apple, które jako pierwsze zaproponowało 64-bitowy system mobilny?

Z góry zaznaczam, że jeżeli w tekście pojawią się jakieś niezrozumiałe sformułowania lub żargonowe zwroty, które dla mnie mogą być jasne (jestem z zawodu programistą) to chętnie wytłumaczę je w komentarzach.

Na początku tego miesiąca Kamil Zawiślak informował o tym, że Android też może być 64-bitowy i jako jedyne rozwiązanie podał architekturę Bay Trail, zaproponowaną przez Intela. Nie jest jednak do końca prawdą, że firmy takie jak Qualcomm nie wykazały się jakąś chęcią pracy nad 64-bitowym procesorem dla Androida. Owszem, prace te trwają już od jakiegoś czasu, czego efektem było wydanie pierwszego, co prawda budżetowego, ale w dalszym ciągu 64-bitowego procesora - Snapdragona 410. Na tym jednak nie koniec, gdyż w ostatnim czasie Samsung także postanowił zabrać głos w temacie 64-bitowych jednostek, rozpowszechniając pogłoski o prezentacji swoich implementacji architektury ARMv8. Zapowiedziane (póki co nieoficjalnie) procesory to 8-rdzeniowe Exynos 6 (oparty na architekturze ARM Cortex-A50) oraz Exynos S (oparty na autorskiej, 64-bitowej technologii Samsunga). Nowe układy mają być odpowiednio 1,53 oraz 1,43 razy wydajniejsze od aktualnie dostępnych w topowych smartfonach chipów Snapdragon 800. Czy jednak Android jako system operacyjny jest już na tyle dojrzały, aby w pełni wykorzystać potencjał 64 bitowych procesorów?

Źródło zdjęć: © http://www.androidauthority.com
Źródło zdjęć: © http://www.androidauthority.com

W pierwszej kolejności warto zauważyć, że rozszerzenie operacji ze słów 32-bitowych na 64-bitowe nie było spowodowane problemem w obsłudze pamięci RAM powyżej 4GB. Praktycznie żaden z obecnych modeli telefonów nie zbliżył się do tej granicy. Dlaczego zatem jest to tak ważna i często poruszana kwestia? W bardzo przystępny sposób opisał to Michał Mynarski w drugiej części swojego cyklu artykułów o nowym układzie Apple A7. W zmianie architektury chodzi przede wszystkim o wydajność, nie o długość słowa maszynowego. Architektura ARMv8 wprowadza zupełnie nowy zestaw instrukcji procesora, który odpowiedzialny jest za widoczną w codziennym użytkowaniu, znaczna poprawę wydajności pracy. Do zwykłego śmiertelnika łatwiej jednak dotrzeć marketingowym hasłem o 64-bitach vs 32-bitach, zamiast próbować tłumaczyć skomplikowane zasady działania procesorów.

Jako że jądro Androida oparte jest o Linuxa, odziedziczyło z niego wsparcie dla architektury 64-bitowej. Jednak w dalszym ciągu wszystkie biblioteki, odpowiedzialne za obsługę grafiki, systemu plików i multimediów oraz sterowniki dla różnorodnych urządzeń, zbudowane są jako 32-bitowe. Nie byłoby jednak problemem ich przebudowanie do 64-bitowej wersji wykonywalnej. Jest tak dlatego, że większość z aplikacji napisanych w Javie kompilowanych jest do kodu pośredniego (ang. bytecode) i pakowane jako APK. Następnie taka paczka wykonywana może być na urządzeniu w wirtualnej maszynie Dalvik lub w nowym (zaproponowanym w Androidzie 4.4) środowisku ART (Android RunTime). Bytecode aplikacji zostanie rozbity przez środowisko uruchomieniowe AOT (ahead-of-time) i tylko te fragmenty kodu, jakie potrzebne w danej chwili zostaną wykonane. Co prawda, w tej chwili zarówno Dalvik jak i ART używają 32-bitowych rejestrów, jednak są to czysto wirtualne obszary pamięci, nie mające nic wspólnego z bitowością sprzętu. W najgorszym przypadku aplikacja będzie musiała przejść przez dodatkowy interpreter, jednak koniec końców, użycie wirtualnej maszyny Dalvik czy ART powinno ułatwić zmianę platformy sprzętowej, zamiast utrudniać. Problem może pojawić się w przypadku aplikacji natywnych pisanych w C/C++, które nie są interpretowane lecz kompilowane bezpośrednio do kodu maszynowego oraz aplikacje, które mają być wstecznie kompatybilne z architekturą 32-bitową. Takie moduły będą musiały być w dużej mierze poprawione, co może zająć trochę czasu.

Źródło zdjęć: © androidmagazine.pl
Źródło zdjęć: © androidmagazine.pl

Jakkolwiek dobrze może wyglądać to z marketingowego punktu widzenia, przejście z architektury 32-bitowej na 64-bitową nie rozwiąże głównych problemów z jakimi boryka się w tej chwili Google. Chodzi przede wszystkim o to, że twórcy sprzętu nie chcą czekać na to, aż gigant z Mountain View zaproponuje zoptymalizowana wersję systemu, jeśli tylko mogą już pokazać światu nowe SoC. Programistów Androida czeka sporo pracy przy przebudowaniu natywnych aplikacji, o których wspomniałem w poprzednim akapicie, podczas gdy 64-bitowe układy już widnieją na horyzoncie. Producenci smartfonów, tacy jak Samsung czy LG, z pewnością nie będą czekać na nowy, zoptymalizowany system od Google, jeśli tylko będą mogli pochwalić się, że ich najnowsze flagowce posiadają 64-bitowe chipy na pokładzie. I znów trafimy do błędnego koła, w którym hardware będzie wyprzedzało software, a gdy Android zostanie już przebudowany tak, aby wykorzystywał w pełni nową architekturę, będziemy musieli jeszcze poczekać aż twórcy sprzętu wydadzą swoje aktualizacje. Jak widać przesiadka na nowe układy i szumna kampania reklamowa wcale nie muszą zwiastować końca pewnych problemów, z którymi borykają się użytkownicy od początku ery smartfonów.

Patrząc na cykl wydawniczy systemu Google'a, nowej wersji Androida możemy spodziewać się najwcześniej w połowie 2014 roku. Czy będzie ona całkowicie kompatybilna z 64-bitowymi procesorami? Jak na razie Google nie odniosło się w żaden sposób do tej kwestii. Najprawdopodobniej, jeśli tylko taki system się pojawi, to na urządzeniach z linii Nexus – na wprowadzenie 64-bitowego Androida do urządzeń różnych producentów użytkownicy będą musieli poczekać jeszcze dłużej. Mimo braku wsparcia systemowego, jestem prawie pewien, że na pudełkach z przyszłorocznymi flagowcami ujrzymy informację iż urządzenie znajdujące się w środku wyposażone jest w niesamowicie szybki i wydajny, 64-bitowy SoC.

Źródło zdjęć: © sammyhub.com
Źródło zdjęć: © sammyhub.com

Przejście na architekturę 64-bitową w mobilnych procesorach ARM jest bardzo ważnym krokiem, który musi zostać podjęty, aby technologie wykorzystywane w smartfonach nie utknęły w miejscu. W przeciwieństwie do naszych domowych pecetów, nie chodzi o wykorzystanie pamięci operacyjnej większej niż 4GB, lecz o zastosowanie nowego zbioru instrukcji (ISA – Instruction Set Architecture), wykorzystywanego w architekturze ARMv8. Dotychczasowy ISA osiągnął bowiem granicę swojej wydajności, a wytwórcy sprzętu nie mogą ograniczać się jedynie do mnożenia liczby rdzeni i podkręcania zegara, gdyż zaowocowałoby to nieakceptowalnym zużyciem energii i wysokim poziomem emisji ciepła. Dlatego też zmiana architektury wydaje się jedynym sensownym rozwiązaniem, mogącym w widoczny sposób wpłynąć korzystnie na wydajność urządzeń. Użytkownicy będą mogli odczuć tę zmianę jednak dopiero wtedy, gdy razem ze sprzętem otrzymają odpowiednio zoptymalizowany software. Jak widać rok 2014 zapowiada się w tej kwestii niezwykle interesująco, a producenci raczej nie pozwolą nam się nudzić.

Źródła:

Źródło artykułu:WP Komórkomania
Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.