Android KitKat の登場により、開発者向けオプション設定でのみ表示され、Android ランタイムの「ART」と名付けられた特定のコンポーネントが登場しました。私たちはそれについて話していました先週は条件付きで, ここでもう少し詳しく説明します。

Android アプリケーションは、Dalvik と呼ばれる仮想マシンを使用して動作します。あ仮想マシンこれは、アプリケーションが実行するために必要なものすべてを見つけることができる一種のスペースです。

仮想マシンは、Android アプリケーションで使用されるプロセッサをエミュレートするソフトウェアであると考えてください。私たちは全員が同じハードウェアを持っているわけではありませんが、同じ仮想プロセッサを持っています。

アプリケーションに問題が発生した場合、停止するのはアプリケーションとその仮想マシンであり、すべてのアプリケーションやシステムが停止するわけではありません。ある程度の開発知識を持つ技術者にとって、Dalvik は JRE (Java ランタイム環境) のようなものです。

Dalvik のいくつかのバージョンでは、アプリケーションは中間言語 (バイトコード) から次の言語に翻訳されています。実行時の物理プロセッサに固有のマシン言語: これは一般的に JIT と呼ばれるものです。ジャストインタイム、または文字通り「ジャストインタイム」)。

しかし、なぜこれを実行時だけ行うのでしょうか?確かに、Dalvik 仮想マシンが Java と同様に、各ハードウェアに必要な命令を考慮せずに、それを実行するすべての環境で関数コードを作成できるのであれば、なぜわざわざ再コンパイルする必要があるのでしょうか。これはまさに ART が解決するものであり、設計から AOT 原則を実装しています。事前に。したがって、アプリケーションはハードウェアにインストールされるとすぐにコンパイルされ、実行ごとの変換が回避されます。

特に、「コンパイルされた」マシンのバージョンを保存するために必要なストレージ容量の点で、またはアプリケーションを実際に「インストール」する必要があるため、インストール中に速度が低下する可能性があるという点で、欠点が生じる可能性があります。

ただし、アプリケーションの本来のパフォーマンスが向上することは疑いの余地がありません。

現在、この新しいモジュールは開発者とテスター専用に予約されていますが、特にパフォーマンスの問題で知られる祖先である Dalvik が ART に代わって姿を消すのが間もなく見られるかもしれません。

フォーラムでは、Android 4.4 をインストールしている人が次のように投票します。ダルヴィクかARTか?


愛好家のコミュニティに参加してみませんか?私たちの不和ようこそ、ここはテクノロジーに対する相互扶助と情熱の場所です。