La suppression du fichier /system/bin /dex2oat est-elle sûre?

L’exécution est un environnement dans lequel s’exécutent des programmes écrits dans un langage spécifique. Android Runtime (ART) est un runtime de type Java qui exécute le bytecode Dalvik Executable (DEX) (à partir de fichiers apk) dans une machine virtuelle. Comme d’autres environnements d’exécution, ART peut exécuter le code dans trois modes différents:

  • Interprétation
  • Compilation juste à temps (JIT)
  • Compilation à l’avance (AOT)

Afin d’améliorer les performances, les compilateurs JIT et AOT traduisent le bytecode DEX (respectivement pendant ou avant l’exécution) en langage machine natif. Le compilateur JIT faisait partie de DVM, réaddée à l’ART dans Android 7. Depuis lors, le compilateur AOT prend également en charge la compilation d’arrière-plan guidée par le profil. Les profils d’application sont créés lors des exécutions compilées JIT.

Alors que l’interpréteur fait partie des bibliothèques d’ART, l’outil dex2oat est utilisé comme compilateur JIT et AOT. États de la documentation:

Au moment de l’installation, ART compile les applications à l’aide de l’outil dex2oat intégré à l’appareil. Cet utilitaire accepte les fichiers DEX en entrée et génère un exécutable d’application compilé pour l’appareil cible.

Et ici:

JIT et AOT utilisent le même compilateur avec un ensemble similaire d’optimisations

Sur votre ROM Marshmallow La compilation AOT ne fonctionnera pas en l’absence de dex2oat, ce qui peut nuire aux performances des applications. De plus, le service natif installd et le service Java PackageManager s’appuient sur dex2oat lors de l’installation de l’application ou de la mise à jour du profil des applications précédemment installées. Ils peuvent donc se casser en raison d’un fichier manquant.

Pour résumer, les plantages installd ou dex2oat sont des bogues graves dans votre ROM qui doivent être corrigés. La suppression du binaire dex2oat n’est pas une solution mais une solution de contournement qui risque fort d’échouer.

LIÉS:

  • Que faut-il pour exécuter des binaires ELF compilés à partir d’APK Android?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.