1. ホーム
  2. android

[解決済み】Dalvikとdalvik-cacheとは何ですか?

2022-01-31 18:36:42

質問内容

Androidの基本的な質問かもしれませんが、よろしくお願いします。しかし、Dalvikとdalvik-cacheとは何ですか?

どのように解決するのですか?

Dalvikは、Androidで使用される仮想マシンです。一般的には、Javaの仮想マシンと思われていますが、正確ではありません。Javaと同じオブジェクトモデルを使用し、メモリモデルもほぼ同じです。しかし、スタックベースのJava VMとは対照的に、dalvik VMはレジスタベースのVMである。

従って、Javaとは全く異なるバイトコードを使用します。ただし、Android SDKには dxツール のように、Javaのバイトコードをdalvikのバイトコードに変換することで、JavaでAndroidアプリケーションを書くことができるのです。

と言われたら、"。 dalvik-キャッシュ ということでしょうか。 /data/dalvik-cache というディレクトリがありますが、これは一般的なAndroid端末にあるものです。Androidにアプリケーションをインストールすると、そのアプリケーションのdexファイル(アプリケーションのすべてのdalvikバイトコードを含むファイル)に対して、いくつかの修正と最適化が実行されます。そして、出来上がったodexファイルをキャッシュします ( 最適化デックス ) ファイルを /data/dalvik-cache ディレクトリに配置することで、アプリケーションをロードするたびに最適化処理を実行する必要がなくなります。