Modern Android Quickly bring your app to life with less code, using a modern declarative approach to UI, and the simplicity of Kotlin.
米Googleは6月25日(米国時間)、現地で開催された開発者会議「Google I/O 2014」において、次期モバイルOSとなる「Android "L"」の開発者プレビューを公開した。Androidでは珍しい正式発表前のプレビュー版公開だが、今回は64bit対応や仮想マシンのDalvikから「ART」への入れ替えと、主に根幹に関わる部分の変更点が多く、テスト期間を長めにしたという意図もみえる。同時に「Chromebook上でAndroidアプリが動作可能になる」という話題も出ており、Googleのクライアント向けプラットフォームで大きな動きが出てきた。今回、このあたりのGoogleのクライアント戦略を一度整理し、今後どのような変化が出てくるのかを考察していく。 なぜAndroid "L"を早めに公開したのか 冒頭でも触れたが、Googleが正式発表前のAndroid OSを公開するのは
DalvikVMのJIT vs ARTのAOT AndroidのDalvikVMではDEXコードをインタプリタで実行しつつ、プロファイリングを行っていて実行頻度の高い部分をJITコンパイルします。コンパイルはメソッドよりも小さな単位で行われ、コンパイルにかかる時間もメモリも小さいのが特徴です。ただし、全体を見渡すような最適化を行うことはできません。コンパイルした結果は保存しません。本当に必要な部分しかコンパイルしないので、コードサイズの増大は最小限です。 それに対して、新しく登場したARTではDEXコードを実行する前にあらかじめコンパイルします。(=AOT: Ahead Of Time compile) コンパイルはインストール時などに行われます。コンパイルには多少時間がかかりメモリも消費しますが、JITに比べて最適化されたコードを生成することができます。コンパイルした結果は保存されるので
チラシの裏に書いておく。 gitのタグはandroid-4.4_r1 android-4.4_r1.2でもartに関しては差分なし。 バックエンドの選択 compiler-backendはビルド時に選択する。QuickとPortableの2種類。デフォルトではQuick。 Portableを選択する方法はbuild/Android.common.mk参照 http://tools.oesf.biz/android-4.4.0_r1.0/xref/art/build/Android.common.mk#71 ART_USE_PORTABLE_COMPILER art/compiler/driver/compiler_driver.ccで if (compiler_backend_ == kPortable) { // Initialize compiler_context_ init_com
前回(Android 4.4 のARTのブートログを見てみた - 組み込みの人。)の続きです。取り出したoatファイルをoatdumpコマンドで見てみます。 $ oatdump --oat-file=system@priv-app@Launcher2.apk@classes.dex > Launcher2.dump Launcher2.dumpの先頭の5000行をここに貼りました。 この結果の先頭部分はこんな感じです。 MAGIC: oat 007 CHECKSUM: 0x43c6bd69 INSTRUCTION SET: Thumb2 DEX FILE COUNT: 1 EXECUTABLE OFFSET: 0x0008e000 IMAGE FILE LOCATION OAT CHECKSUM: 0x1261e085 IMAGE FILE LOCATION OAT BEGIN: 0x60
Android runtime and Dalvik Stay organized with collections Save and categorize content based on your preferences. Android runtime (ART) is the managed runtime used by apps and some system services on Android. ART and its predecessor Dalvik were originally created specifically for the Android project. ART as the runtime executes the Dalvik executable (DEX) format and DEX bytecode specification. ART
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く