This article is reproduced from Leiphone.com. If you need to reprint it, please go to Leiphone.com official website to apply for authorization. Arm has announced that all of its new smartphone CPU cores will be 64-bit only, with no 32-bit compatibility mode, starting in 2023. We started having 64-bit capable smartphone processors in 2013, when Apple used the 64-bit A7 processor in the iPhone 5s. Soon after, 64-bit CPUs also appeared in Android phones, though all of these CPUs were capable of running both 32-bit and 64-bit code. So we went from 32-bit only, to 32-bit and 64-bit, to now we are leaving 32-bit behind and going to 64-bit only. What does this mean for Android and Apple? The transition from 32-bit to 64-bitIn a smartphone, every pixel, every piece of data sent over the internet, every file stored in flash memory, every sound played, and every touch on the screen is represented and processed digitally. Most of the processing is done by the CPU, with help from other components such as the GPU. The processor stores these numbers in binary form, and the space allocated for them is measured in bits. Bits are represented by the binary representation of 0 and 1, and 8 bits can represent any number between zero and 255, 16 bits can range from 0 to 65,535, and 32 bits can store numbers up to 4,294,967,295 (that's 4GB). Arm introduced 64-bit support in version 8 of its instruction set architecture, called Armv8, and continues to support 64-bit in Armv9. Both are also optionally backwards compatible with previous 32-bit Arm architectures. This means that in principle a Cortex-A processor can run 32-bit code and 64-bit code and switch between them on the fly. Users will not notice any difference between 32-bit and 64-bit code. In fact, Samsung's first Armv8 SoC was the Exynos 5433 used in the Galaxy Note 4, which had four Cortex-A57 cores and four Cortex-A53 cores, but only for 32-bit mode. Over the years, things have become more subtle. Arm has a few Armv8-based Cortex-A cores, some of which are only 32 bits (such as the Cortex-A32) and others are only 64 bits (such as the Cortex-A34 and Cortex-A65). You may not have heard of these CPU designs because they are not used in any smartphone processors. Most Cortex-A processors from Cortex-53 to Cortex-A75 support both 32-bit and 64-bit modes. The Cortex-A76 changes things a bit, it supports 32-bit mode, but only for apps. This means you need to run a 64-bit version of Android, 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 Snapdragon 480, Snapdragon 675, Snapdragon 720, Snapdragon 730, Snapdragon 765, Snapdragon 780G, etc.), then the processor has dropped support for 32-bit operating systems without you noticing. With the drop in support for 32-bit applications on the Cortex-X2 and Cortex-A510, you are forced to run a 64-bit operating system and 64-bit applications. The Cortex-A710 maintains support for 32-bit applications, which means that any application that cannot be taken out of 32-bit mode will be forced to run on the A710 core. By 2023, all Cortex-A CPUs will be 64-bit onlyArm made two announcements about the move to 64-bit. First, Arm talked about all of its big cores being 64-bit by 2022, and then a few months later Arm talked about all of its cores being 64-bit by 2023. Sounds good, but the Cortex-A510 (a small core) is already 64-bit only, so why two different deadlines? I think we'll see new small cores with 32-bit support in 2022, and everything will be 64-bit after that. It’s worth noting that we’re talking about Cortex-A processors, the CPUs in smartphones, tablets, Chromebooks, etc., and not the Cortex-M CPUs in Arm’s line of microcontrollers. In fact, the Armv8-M (the M stands for microcontroller) is only 32-bit. Abandoning 32-bit will have little impact on AndroidThe good news is that 64-bit Android is a mature technology, and dropping 32-bit support entirely won't make a huge difference. The first fully 64-bit compatible version of Android was Android 5.0 (Lollipop). It was released in 2014 and added support for 64-bit Intel processors as well as 64-bit Arm chips. Since August 2019, all Google Play apps are required to support 64-bit. To help developers support 64-bit, popular game engines have added support: Unreal (2015), Cocos2d (2015), and Unity (2018). Starting August 1, 2021, Google Play will stop serving apps that do not have 64-bit versions on 64-bit-capable devices, which means that the apps will no longer be available in the Play Store on these devices. Google provides different tools and a lot of documentation to prepare application developers for the switch to 64-bit. For many applications, there is actually little to do, as those written in Java or Kotlin do not need to change. But applications developed using game engines or third-party SDKs need to make sure they use the latest 64-bit versions. Since devices with 64-bit Android have been available for years now, coupled with Google's efforts to ensure 64-bit apps are available in the Play Store, ultimately just switching to 64-bit won't have much of an impact. Apple abandoned 32-bit earlierApple has been supporting 64-bit in both hardware and software since the iPhone 5S. Back in February 2015, Apple announced that all iOS apps must support 64-bit. Then in 2017, Cupertino announced that 32-bit apps would not run on iOS 11. At that point, Apple completely abandoned 32-bit, and starting with the Apple A11 (found in the iPhone 8, iPhone X), all processors are 64-bit only.
It's a similar story with macOS. Apple's desktop operating system has been 64-bit since 10.7 Lion (2011). Since 2018, all new apps submitted to the Mac App Store have been required to support 64-bit, and just like iOS, macOS dropped support for 32-bit apps (with the release of macOS 10.15 Catalina in 2019). Today, macOS 11 is 64-bit on Intel and 64-bit on Arm, with the M1 processor being 64-bit only. The future is 64-bitStarting in 2023, all Cortex-A processors will be 64-bit only. Since Android supports 64-bit and is moving to 64-bit-only apps and the transition will be smooth, you probably won't notice any difference. If you're an Apple user, the switch to 64-bit on iOS and macOS has been in the works for a while. I haven't heard of any major issues with the transition. For other CPU architectures and other operating systems, such as Windows and Linux, 32-bit support will continue for much longer. Now that Linux is open source, 32-bit support will likely continue for decades. For Windows on x86-64 processors, there may not even be a clear path forward. |
<<: Is it really better than Google Translate? Experience with DeepL, the translation tool
>>: Some Android manufacturers kill background processes too aggressively, Google is investigating
“When you are most uncomfortable is when you grow...
For reprinting, business cooperation, please scan...
How to apply for Baidu Xijing? Can a general acco...
It is basically a foregone conclusion that the iP...
What are the general requirements for event opera...
This article mainly introduces what to do if your...
Mixed Knowledge Specially designed to cure confus...
Auditing expert: He Yuanda, Deputy General Manage...
The year-over-year growth in iOS device sales has...
It has become a reality that the vertical Z gener...
In the hot summer, the sun is blazing in the sky,...
Waymo's Chinese subsidiary is named Huimo Bus...
Do you often feel that you don’t understand your ...
Nowadays, those who work in marketing suffer from...
The "Classic of Mountains and Seas: Great Wi...