web-dev-qa-db-ja.com

OATの意味?

DalvikはAPK、DEX、およびODEXファイルを使用することがわかっています。そして、私たちはこの略語がAOSPソースまたは開発者サイトを介して意味することを知っています。

(このように- https://source.Android.com/devices/tech/dalvik/dex-format.html

  • DEXは、Dalvik EXcutableファイルを意味します。
  • ODEXは、最適化されたDalvik EXcutableファイルを意味します。
  • APKはAndroid PacKage。

ART(Android RunTime)はOATとARTを使用しますが、意味をどこにも説明していません。

これらの短縮された単語の意味を知っている人はいますか?

22
Snowcat8436

[〜#〜] o [〜#〜] f [〜#〜] a [〜#〜] head [〜#〜] t [ 〜#〜] ime [〜#〜] a [〜#〜] head [〜#〜] o [〜#〜]の愚かな並べ替えf [〜#〜] t [〜#〜] ime。 .dexファイルを.oatファイルに変換するプロセスはquakerizingと呼ばれ、本当に面白いです。

42
Jesse Wilson

OATは、事前コンパイル(AOT)を使用してDEXファイルをコンパイルすることによって生成されるファイル形式です。

AOTがAndroidに登場する前は、dexoptを使用して、DEXを最適化バイトコードを含むODEX(最適化DEX)に最適化していました。

AOTでは、dex2oatは、DEXを最適化し、ELF形式のマシンコードを含むOATファイルにコンパイルするために使用されます。

リファレンス: https://stackoverflow.com/a/26263071/2872712

16
apricot

いくつかの検索が見つかりました このページ 、それは言う:

OATファイル拡張子は、Googleのために開発されたアプリケーションに関連付けられていますAndroidさまざまなポータブルデバイスで使用されるオペレーティングシステム。*。oatファイルには、新しいAndroid RunTime(ART)はAndroid 4.4以降で利用可能)。

Android RunTimeは、古いバージョンのAndroidで使用されているDalvikプロセス仮想マシンの後継です。

3
Mike

それらのファイル形式もしばらくの間は利用できますが、意味についての説明を含むオフドキュメントはまだありません(少なくとも私は見つかりませんでした)。だから私は、次の意味を理解しました。

.art-AndroidRunTimeを表します(12ページの-- ここ は、この形式が独自仕様であり、ARTの「1つのファイルのみ」で使用されているため、このように考えています)。

.oat-最高のimhoが "[〜#〜] o [〜#〜]ptimized[〜#〜] a [〜#〜]ndroidファイル[〜#〜] t [〜#〜]ype "(そしてアイデアは here から来ました)。

私が持っていた他の可能な.oatのバリアントは、「最適化されたアプリケーションファイルタイプ」または簡単なAOT-> OAT(事前のコンパイルプロセスから生成された.oatとして)です。

dexoptはODEXを生成するため、[〜#〜] o [〜#〜] ptimized [〜#〜] d [〜#〜] alvik- [〜#〜] ex [〜#〜]実行可能、最適化されたバイトコードdex2oatはOATを生成しますが、それが[〜#〜] o [〜#〜] ptimized [〜#〜] a [〜#〜]の略であるべきだと思います[〜#〜] t [〜#〜] imeの頭。

2
B-GangsteR