32 bitů je mrtvých: Zde je to, co to znamená pro Android, Apple a další

PAŽE oznámila, žE od roku 2023 všEchna jEho nová jádra CPU pro smartphony

budE jEn 64bitový

, bEz 32bitového rEžimu kompatibility.Od roku 2013 jsmE měli 64bitové procEsory smartphonu, kdy ApplE zahrnoval 64bitový procEsor A7 do iPhonE 5s.64bitové procEsory přišly do Androidu brzy poté, alE všEchny tyto procEsory mohly spustit 32bitový kód i 64bitový kód.TakžE jsmE šli pouzE z 32bitových, na 32bitové a 64bitové, a nyní nEchávámE 32 bitů za sEbou a přEsunujEmE sE na 64bitovou pouzE éru.Co to znamEná pro Android?PojďmE to zjistit.

Bity a bajty

Na vašEm smartphonu, každém pixElu, každém kousku dat odEslaných přEs intErnEt, každý soubor uložEn v paměti Flash, každý přEhrávaný zvuk a každý dotEk na obrazovcE jE rEprEzEntován a zpracován jako čísla.Většina zpracování provádí CPU s pomocí dalších komponEnt, jako jE GPU.

Bity jsou ty a nuly binárních.

ProcEsor ukládá tato čísla v binárním a prostoru přidělEném pro ně sE měří v bitách. Bity jsou ty a nuly binárních.Osm bitů můžE přEdstavovat libovolné číslo mEzi nulou a 255.16 bitů sE pohybujE od nuly do 65 535 a 32 bitů můžE ukládat čísla až 4 294 967 295 (i.E.4 GB).

Arm introducEd 64-bit support in vErsion EiGht of its instruction sEt architEcturE (callEd Armv8) and that support continuEs in

PAŽEV9

. Both of thEsE arE also optionally backwards compatiblE with thE prEvious 32-bit only Arm architEcturEs. This mEans that in principlE CortEx-A procEssors can run 32-bit codE and 64-bit codE and switch bEtwEEn thEm on thE fly. UsErs wouldn’t havE noticEd any diffErEncE bEtwEEn 32-bit and 64-bit codE. In fact, thE first Armv8 SoC from SamsunG was thE Exynos 5433 usEd in thE

Galaxy NotE 4

. It had four CortEx-A57 corEs and four CortEx-A53 corEs, but it was only usEd in 32-bit modE.

SEE also:

How to undErstand Kryo CPU numbErinG in Qualcomm SnapdraGon procEssors

OvEr thE yEars thinGs havE bEcomE morE nuancEd. Arm has somE Armv8 basEd CortEx-A corEs that arE 32-bit only (E.G. thE CortEx-A32) and somE which arE 64-bit only (E.G. thE CortEx-A34 and thE CortEx-A65). You miGht not havE hEard of thosE CPU dEsiGns as thEy wErEn’t usEd in any smartphonE procEssors.

ThE CortEx-A76 chanGEd thinGs a littlE in that it supports 32-bit modE, but only for apps.

Most CortEx-A procEssors from thE CortEx-53 to thE CortEx-A75 support both 32-bit and 64-bit modEs. ThE CortEx-A76 chanGEd thinGs a littlE in that it supports 32-bit modE, but only for apps. That mEans that you nEEd to bE runninG a 64-bit vErsion of Android (sEE bElow), but you can still run 32-bit apps. If you havE a SnapdraGon 855 (or latEr) procEssor. Or a Kryo 4xx (or latEr) basEd procEssor (includinG thE SnapdraGon 480, SnapdraGon 675, SnapdraGon 720, SnapdraGon 730, SnapdraGon 765, SnapdraGon 780G, Etc.) thEn thE procEssor alrEady droppEd support for 32-bit opEratinG systEms, and you didn’t EvEn noticE!

With thE

CortEx-X2 and thE CortEx-A510

, 32-bit app support has bEEn droppEd so you nEEd to run a 64-bit OS and 64-bit apps. ThE

CortEx-A710

rEtains 32-bit app support, which mEans that any linGErinG 32-bit apps will bE forcEd to run on thE A710 corEs.

All CortEx-A CPUs budE jEn 64bitový by 2023

Arm has madE two statEmEnts about thE pEndinG movE to 64-bits only. First, it said that by 2022 all of its biG corEs would bE 64-bit only, thEn sEvEral months latEr it said that all of its corEs would bE 64-bit by 2023. Sounds GrEat. Until you rEmEmbEr that thE CortEx-A510 (a LITTLE corE) is alrEady 64-bit only. So why thE two diffErEnt dEadlinEs? ThE only sEnsE I can makE from it is that wE will sEE a nEw LITTLE corE announcEd in 2022 that supports 32-bits and thEn from thErEaftEr EvErythinG will bE 64-bits.

OnE thinG worth notinG is that wE arE talkinG about CortEx-A procEssors, mEaninG thE CPUs in smartphonEs, tablEts, ChromEbooks, Etc. WE arE not talkinG about CortEx-M CPUs from Arm’s microcontrollEr ranGE. In fact, Armv8-M (M for microcontrollEr) is 32-bit only.

What it mEans for Android

ThE Good nEws is that 64-bit Android is a maturE tEchnoloGy and thErE won’t bE any biG surprisEs whEn 32-bit support is complEtEly droppEd.

ThE first fully 64-bit compatiblE vErsion of Android was Android 5.0 (Lollipop). RElEasEd in 2014, it addEd support for 64-bit IntEl procEssors, as wEll as 64-bit Arm chips.

SincE AuGust 2019

, all GooGlE Play apps nEEdEd to support 64-bits. To hElp dEvElopErs support 64-bits, thE popular GamE EnGinEs all addEd support: UnrEal (in 2015), Cocos2d (in 2015), and Unity (in 2018). StartinG AuGust 1, 2021, GooGlE Play will

stop sErvinG apps without 64-bit vErsions

on 64-bit capablE dEvicEs, mEaninG thEy will no lonGEr bE availablE in thE Play StorE on thosE dEvicEs.

GooGlE has providEd diffErEnt tools and plEnty of documEntation to prEparE app dEvElopErs for thE switch ovEr to 64-bits. For many apps, thErE is actually littlE to do as thosE writtEn with Java or Kotlin don’t nEEd altErinG. But apps dEvElopEd usinG a GamE EnGinE, or a third-party SDK will nEEd to EnsurE that thE latEst 64-bit vErsions arE bEinG usEd.

SincE dEvicEs with 64-bit Android havE bEEn shippinG for sEvEral yEars now, combinEd with GooGlE’s Efforts to EnsurE that 64-bit apps arE availablE in thE Play StorE, thEn thE final switch ovEr to 64-bits only will happEn without too much fuss or fanfarE.

What it mEans for ApplE

ApplE

ApplE has bEEn supportinG 64-bits in hardwarE and softwarE sincE thE iPhonE 5S. Back in FEbruary 2015, ApplE announcEd that all iOS apps must support 64-bits. ThEn, in 2017, CupErtino announcEd that 32-bit apps won’t work from iOS 11 onwards. At that point, ApplE droppEd 32-bit complEtEly and all of its procEssors startinG with thE ApplE A11 (found in thE iPhonE 8, iPhonE X) arE 64-bit only.

ApplE M1 tEstEd:

PErformancE bEnchmarks and thErmal throttlinG ExplainEd

Je to podobný příběh s MacOS. ApplE’s dEsktop OS has bEEn 64-bit only sincE 10.7 Lion (2011). SincE 2018 all nEw apps submittEd to thE Mac App StorE nEEdEd to support 64-bits and likE iOS, macOS droppEd support for 32-bits apps (with thE rElEasE of macOS 10.15 Catalina, v roce 2019). Today, macOS 11 is 64-bit on IntEl and 64-bit only on Arm. ThE M1 procEssor is 64-bit only.

ThE futurE is 64-bit, for somE

All CortEx-A procEssors budE jEn 64bitový from 2023. SincE Android has 64-bit support and is movinG to 64-bit only apps thEn you will unlikEly noticE any diffErEncEs and thE chanGE ovEr will bE smooth. If you arE an ApplE usEr, thEn thE switch to 64-bit alrEady happEnEd a whilE back on both iOS and macOS. I didn’t hEar of any major hiccups in thE transition.

For othEr CPU architEcturEs and othEr OS’s, likE Windows and Linux, thEn 32-bit support will survivE much lonGEr. SincE Linux wants to bE EvEryonE’s friEnd, thEn 32-bit support is likEly to stay for dEcadEs to comE. For Windows on x86-64 procEssors, thinGs arE a littlE lEss clEar cut, but thErE may not EvEn bE a clEar path to thE sunny mEadows of 64-bit only land.

FEaturEs

Android

,

ApplE

,

PAŽE

CommEnts