Armの将来のモバイルチップは2023年から32ビットアプリをサポートしなくなるため、すべてのAndroidスマートフォンは64ビットに移行することになる。
Arm は、2023 年以降、すべてのモバイル CPU 設計が 32 ビット動作をサポートしないと発表しました。これにより、Android での 32 ビット サポートが完全に廃止されます。 チップ設計者はすでに 32 ビットのサポートを廃止するように移行 2013年にスマートフォン市場に初めて64ビットのサポートが導入された後、2020年にビッグコアチップの設計について言及した。 これは大きな動きのように見えますが、Android エコシステムへの影響は (たとえあったとしても) ほとんどないでしょう。
「ビット」とは、マシン内でアクセスできるメモリ アドレスの数を指します。 32 ビット マシンは通常、約 4GB に相当する 2^32 のメモリ アドレスにアクセスできます。 64 ビット マシンは、およそ 18 京の領域にある 2^64 のメモリ アドレスにアクセスできます。 アプリを 64 ビット命令セットでコンパイルすることの具体的な利点はそれほど多くありませんが、32 ビット命令セットでコンパイルする必要がある理由もありません。 64 ビットでは、4GB を超える仮想メモリを参照できるため、オペレーティング システムにとってさらにメリットがあります。 32 ビット デザインでは、ARM CPU は最大 4 GB の仮想メモリ スペースをアドレス指定できます。この仮想メモリ スペースは、ユーザー スペース プロセス、カーネル、およびハードウェア デバイス間で共有する必要があります。 Arm の将来のモバイル チップセットは、2023 年以降、完全に 64 ビットを中心に展開する予定です (経由) Android 権限) つまり、デバイス上で実行されるすべてのソフトウェアは 64 ビット命令セットでコンパイルする必要があります。
Android は 64 ビットであり、64 ビット アプリはすでに標準です
Android 5.0 Lollipop は 64 ビット OS サポートの基礎を築きましたが、32 ビット アプリケーションのサポートは引き続き実行できるように維持されました。 アンドロイド12 ただし、システム アプリとサービスの完全な 64 ビット バージョンを全面的に備えた最初のリリースのようです。
アプリに関しては、2019 年 8 月に遡ります。 Googleが開発者を強制 ネイティブ アプリケーションの 64 ビット バージョンを Google Play ストアに送信します。 Java または Kotlin でコンパイルされたアプリは、アプリとして 64 ビット モードで実行するために必要な作業は (もしあれば) ほとんど必要ありません。 標準ライブラリを使用して Android Studio でコンパイルされた場合は、開発者なしで 64 ビットでコンパイルするだけで済みます 介入。 アプリやゲームの開発者自身も 32 ビットのサポートを終了し始めており、2020 年には Niantic がサポートを開始します。 Pokémon Go から 32 ビットのサポートを終了すると約束 同じように。
実際のところ、アプリがどのようなアーキテクチャ向けにコンパイルされているかを気にする必要があるのは、サードパーティのライブラリまたはゲーム エンジンを使用する開発者だけです。 Android 上の主要なゲーム エンジンはすでに 64 ビットをサポートしており、Unity は 2018 年に 64 ビットのサポートを追加しました。これは、Google が Play ストアでの 64 ビットのサポートを要求する 1 年前でした。 Armv8 は 64 ビット操作をサポートする最初の Arm 命令セットで、2011 年に発表されました。 Armv9 はそのサポートを継続します. Google は、64 ビットへの切り替えに関する情報を長い間提供してきました。 32ビットアプリの提供を完全に停止することを約束 2021年8月1日より。 32 ビット アプリについては長い間議論があり、Arm の 64 ビットへの取り組みは誰にとっても衝撃ではないでしょう。
ArmのCortex-Aチップは64ビットのみとなる
Arm によって設計された以前のチップは、32 ビット コードと 64 ビット コードの両方を実行でき、それらをオンザフライで切り替えることができました。 最も初期に実装された Armv8 SoC の一部は、リファレンス デザインが 64 ビットをサポートしているにもかかわらず、32 ビットのみのモードで使用されていました。 現在、Arm チップには 32 ビットのみのものもあれば、64 ビットのみのものもありますが、64 ビットのみのチップは現在どのスマートフォンでも使用されていません。 すべての Cortex-A シリーズ チップは 2023 年までにのみ 64 ビットになり、すでにご存知のとおり、2022 年にはすべての大きなコアが 64 ビットになります。
Cortex-A チップはほぼ独占的にスマートフォン、タブレット、 一方、Cortex-M チップは低コストでエネルギー効率が高く、IoT などで使用されます。 デバイス。 Cortex-A チップは 64 ビットのみの扱いを受けていますが、Cortex-M チップはもっぱら 32 ビットであり、現時点では 64 ビットのみにする予定はありません。
Android における Arm の未来
エンドユーザーにとって実際には何も変わらないはずであり、問題が発生する可能性はほとんどありません。 Google は何年も前からこの準備を進めてきましたが、開発者は 2 年間、32 ビットのネイティブ アプリケーションを Google Play ストアに提出することさえできませんでした。 近年リリースされたスマートフォンはすべて 64 ビットであるため、最近のスマートフォンで 32 ビットのみとしてリリースされたものは考えられません。 これは(うまくいけば)誰にとってもスムーズな移行であるはずであり、その時が来ても大多数のスマートフォン ユーザーに影響を与える可能性は低いです。
この記事は東部標準時午後 2 時 18 分に更新され、32 ビットと 64 ビットに関する詳細を修正しました。