Π‘ΡΠ΅Π΄Π° art ΠΈΠ»ΠΈ dalvik: ART vs Dalvik β ΡΠ°ΠΊ Π² ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ°Π·Π½ΠΈΡΠ°?
ART vs Dalvik β ΡΠ°ΠΊ Π² ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ°Π·Π½ΠΈΡΠ°?
7 ΠΡΠΎΡΠΌΠΎΡΡΠΎΠ² 100134 ΠΠ»Π°Π²Π½ΠΎΠ΅Π Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Android ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ ΠΎΠ΄Π½ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅, Ρ ΠΎΡΡ ΠΈ Π½Π΅ ΠΎΡΠ΅Π½Ρ Π·Π°ΠΌΠ΅ΡΠ½ΠΎΠ΅, Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π·Π³Π»ΡΠ΄, Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ β ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π½ΠΎΠ²Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ART. Π ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ART, Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½Π° Π½ΠΎΠ²Π°Ρ, ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² Π°Π½Π³Π»ΠΎΡΠ·ΡΡΠ½ΠΎΠΌ Π±Π»ΠΎΠ³Π΅ ΠΡΠΈΡ Π₯Π°Π½Π°Β (Aatif Khan), Π·Π°ΠΏΠΈΡΡ ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΡ ΠΈ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ Π΄Π»Ρ Π²Π°Ρ.Β ΠΡΠ΄Π΅Π»ΡΠ½ΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡΡ Π·Π° ΠΏΠΎΠΌΠΎΡΡ Π²ΡΡΠ°ΠΆΠ°Π΅ΠΌΒ ΠΠ½ΠΆΠ΅Π»Ρ ΠΠΎΠΆΠΈΠ½ΠΎΠ²Ρ.
Π ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΌ ΠΌΠΈΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡ ΡΠΆΠ΅ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΡΠ΄ΠΈΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΎΠ²ΡΠΌ Π½Π°Π·Π²Π°Π½ΠΈΡΠΌ ΠΈ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡΠΌ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΎΠ±ΡΡΠ½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠΎΠ·Π½Π°ΡΡ, ΡΠ΅ΠΌΡ ΠΆΠ΅ Π½Π°ΡΡΠΈΠ»ΡΡ ΠΈΡ Π³Π°Π΄ΠΆΠ΅Ρ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ΅Π΄ΠΊΠΎ ΡΠ°Π΄ΡΡΡ Π½Π°Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΌΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡΠΌΠΈ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΈ Π½ΠΎΠ²ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Π° Π½Π°ΠΉΡΠΈ ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΡΠ΅ ΡΠ΄Π°Π΅ΡΡΡ ΠΊΡΠ°ΠΉΠ½Π΅ ΡΠ΅Π΄ΠΊΠΎ β Π² Π»ΡΡΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡ Π»ΠΈΡΡ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΡ Π²ΡΠ΅Π³Π΄Π° ΡΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΏΠΎΠΌΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² Π½ΠΎΠ²ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡ , ΠΏΠΎΡΡΠΎΠΌΡ Π±ΡΠ»ΠΎ ΠΏΡΠΈΠ½ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ, Π½Π°ΡΠΈΠΌ ΡΠΈΡΠ°ΡΠ΅Π»ΡΠΌ, ΠΎ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ART Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ,Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π΅Π΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ ΠΏΡΠΈΠ²ΡΡΠ½ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ Dalvik.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°)?ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Dalvik ΠΈ ART Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ Π°Π·ΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ ΠΊΠ°ΠΊ ΡΠ°ΠΊΠΎΠ²ΠΎΠΉ. Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β ΡΡΠΎ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΠΊΠΎΠ΄, ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ. ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π·Π°Π΄Π΅ΠΉΡΡΠ²ΡΠ΅ΡΡΡ, Π΄Π°ΠΆΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡ ΡΠ°ΡΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π ΡΠ΅Π»ΠΎΠΌ, Π²ΡΠ΅ Β«ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅Β» ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΠ΅ ΡΠ·ΡΠΊΠΈ (Java Π² Android, Π‘# Π² Windows Phone, ECMAScript Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ ) ΡΡΠ΅Π±ΡΡΡ ΡΠ°ΠΊΡΡ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠ·ΡΠΊΠ°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ DEX-ΡΠ°ΠΉΠ»ΠΎΠ² (Π°Π½Π°Π»ΠΎΠ³ EXE Π² Windows), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π² APK-Π°ΡΡ ΠΈΠ²Π΅ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠ°Π·Ρ Π΄Π²Π° ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΎΡ ΡΠ΄ΡΠ° ΠΠ‘, ΡΠ°ΠΊ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΡΡΠ²ΡΡΠ²ΡΠ΅Ρ ΡΠ΅Π±Ρ Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ Π² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π΄ΠΎΡΠΎΠ³Ρ ΠΊΡΠΎΡΡ-ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΡΠΎ Π΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ARM-ΡΠΌΠ°ΡΡΡΠΎΠ½Π΅, MIPS-ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅ ΠΈΠ»ΠΈ x86-ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.ΠΠ°ΡΠ΅ΠΌ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ?ΠΠ°ΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π²ΡΠ΅ ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π² Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° Π²ΡΡΡΠ΅ΡΠ°Π»ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ, ΠΊΡΠΎ Ρ ΠΎΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²Π½ΠΈΠΊΠ°Π» Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΠ‘.
ΠΠ° ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ ΠΌΡ ΡΠΆΠ΅ ΠΎΡΠ²Π΅ΡΠΈΠ»ΠΈ Π²ΡΡΠ΅. ΠΠ΅ΡΡΠΏΠΎΡΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ Ρ Π½Π΅Π΅ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ»ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ»ΠΎΠ½ΡΡΡ Π²ΡΠ±ΠΎΡ Π² Π΅Π΅ ΠΏΠΎΠ»ΡΠ·Ρ.
- ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΊΠΎΠ΄ ΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Π²ΡΠ΅Π΄ΠΈΡΡ ΡΠ΄ΡΡ ΠΠ‘, Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ Π½Π° ΠΏΡΡΠΌΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, ΡΡΠΎ Π·Π°ΡΠΈΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ.
- Π§Π΅ΡΠ΅Π· Google Play Store ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅Ρ APK-ΡΠ°ΠΉΠ» ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π΅ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Β«ΡΠΎΠ±Π΅ΡΠ΅ΡΒ» ΡΠΆΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°. Π’Π°ΠΊΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ; Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ΄, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΡΡΡΡΠΎΠΉΡΡΠ² Π½Π° Π±Π°Π·Π΅ Snapdragon, Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Atom-Π°ΠΏΠΏΠ°ΡΠ°ΡΠ°Ρ . Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΡΠ΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π°Π΄ΡΠ΅ΡΠ°ΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
ΠΠΎΡ ΠΈ Π³Π»Π°Π²Π½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ. Dalvik ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Android Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΠ‘, Ρ 2007 Π³ΠΎΠ΄Π°, Π° ΡΠ΅ΡΡΠ΅Π·Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π° Π²ΡΠ΅ ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π±ΡΠ»ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ΄Π½ΠΎ β ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ Π² Froyo Β«ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π½Π° Ρ ΠΎΠ΄ΡΒ», Π±ΠΎΠ»Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΉ ΠΊΠ°ΠΊ JIT. ΠΠ»Π°Π²Π½Π°Ρ Π΅Π΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ β ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΎΡΠΊΡΡΡΠΈΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄ΠΎ 2.
2 Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ ΡΠ°Π³ Π·Π° ΡΠ°Π³ΠΎΠΌ, ΡΡΠΎ ΡΠΌΠ΅Π½ΡΡΠ°Π»ΠΎ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ; Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΌΠΈΠ½ΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ β ΠΏΡΠΈ ΡΡΠ°ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΈΠ΄Π΅Ρ ΡΠ΅ΡΡΠ΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°.ΠΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π²ΠΌΠ΅ΡΡΠ΅ Π²ΡΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π° Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΡ Π² ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ *.ODEX (Optimized Dalvik EXecutable). ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΠ°Π· Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Dalvik ΡΠΆΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠ΅ΠΉ, Π° Π·Π°Π³ΡΡΠ·ΠΈΡ ΡΠΆΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ΄ Π²Π°ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΠ°ΠΌΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠ΅ΠΉΡΡ ΡΠ°Π½Π΅Π΅, ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π½ΠΎΠ²ΠΎΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ. ΠΡΠ»ΠΈ Π² ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ ΡΡΠΎΡΠΎΠ½Π½ΡΡ ΡΠ°Π±ΠΎΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΌΡΠ·ΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ), ΡΠΎ ΠΈΠ·-Π·Π° ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π° Ρ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ½Π°Π±Π»ΡΠ΄Π°ΡΡ ΠΎΡΡΡΠΈΠΌΡΠ΅ ΡΡΠ²ΠΊΠΈ ΠΈ ΡΠΎΡΠΌΠΎΠ·Π°. ΠΠΎΡ ΡΡΡ ΠΈ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ART.
ART, ΠΈΠ»ΠΈ Android RunTime (Π²Π΅ΡΡΠΌΠ° ΠΊΡΠΈΠ²ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅) β ΡΡΠΎ Π½ΠΎΠ²Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° Google Π² Android 4. 4, ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Dalvik). ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ Ahead-Of-Time (AOT, Β«Π²ΠΏΠ΅ΡΠ΅Π΄ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈΒ»). ART ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΅ΡΠ΅ Π΄ΠΎ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°, Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ. ΠΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ ΠΏΠΎΠ²ΡΡΠ°Π΅ΡΡΡ ΠΊΠΎΠΌΡΠΎΡΡ ΠΏΡΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΡΡΠΈ. ΠΠΏΡΠΎΡΠ΅ΠΌ, ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ART Π·Π°Π³ΡΡΠ·ΠΈΡ Π² Π½Π΅Ρ Π΄Π°ΠΆΠ΅ ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° ΠΈ Π½Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ.
Dalvik vs. ARTΠΠ°Π²Π°ΠΉΡΠ΅ ΠΊΡΠ°ΡΠΊΠΎ ΡΡΠ°Π²Π½ΠΈΠΌ Π΄Π²Π΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ
ΠΠ΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ART Π»ΠΈΡΡ ΡΠ΅ΡΡΠΈΡΡΠ΅ΡΡΡ ΠΈ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΡΡΠΎΠΉΡΡΠ² Π½Π° Π²Π΅ΡΡΠΈΠΈ Android 4.4 ΠΈ ΡΠΈΠΏΡΠ΅ΡΠ°Ρ ΠΎΡ Qualcomm. ΠΠ΄Π½Π°ΠΊΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΆΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Ρ Dalvik Π½Π° ART ΡΠ΅ΡΠ΅Π· ΡΠΊΡΡΡΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²Β (ΠΌΠ΅Π½Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΏΠΎΠ² ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ ΡΠ±ΠΎΡΠΊΠΈ Π² ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΡΡΡΡΠΎΠΉΡΡΠ²Π΅). ΠΠ°ΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π½Π΅ Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ART Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ; ΠΊΡΡΠ°ΡΠΈ, ΠΏΠ΅ΡΠ²ΡΠΉ Π·Π°ΠΏΡΡΠΊ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ART ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π΄ΠΎ 30 ΠΌΠΈΠ½ΡΡ.
Google ΡΠ΄Π΅Π»Π°Π» ART Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ΅ΠΉΡΠ°Ρ, ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΠΎΡΠ½ΠΎΠ²Ρ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π½Π° ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. ΠΡΠΎ Π½Π΅ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ART ΡΡΠ°Π±ΠΈΠ»Π΅Π½ ΡΠΆΠ΅ ΡΠ΅ΠΉΡΠ°Ρ. ΠΡΠΎ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½Ρ ΠΈ Π½ΠΎΠ²Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ Π³ΠΎΡΠΎΠ²Π° Π΄Π»Ρ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
ΠΡΠ·ΡΠ²Ρ ΠΎ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡΠΌΠ΅ΡΠ°Π½Π½ΡΠ΅. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ»Π°Π³ΠΌΠ°Π½ΠΎΠ² Ρ ΡΠ΅ΡΡΡΠ΅Ρ ΡΡΠ΄Π΅ΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ ΠΈ 2 ΠΠ± ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΠΎΡΠ΅Π½ΠΈΡΡ ΠΏΡΠΈΡΠΎΡΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π½Π° ART. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΌΠ΅ΡΠ°ΡΡ 50% ΠΏΡΠΈΡΠΎΡΡ Π² ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ 30% β Π² Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΡΡΠΈ; Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡ, ΡΡΠΎ ΡΡΠΎ Π»ΠΈΡΡ ΡΡΡΠ΅ΠΊΡ ΠΏΠ»Π°ΡΠ΅Π±ΠΎ.
ΠΠΎ ΠΏΡΠ°Π²Π΄Π΅ ΡΠΊΠ°Π·Π°ΡΡ, Π½Π΅Π»ΡΠ·Ρ ΡΠΎΡΠ½ΠΎ ΠΎΡΠ΅Π½ΠΈΡΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ ART Π΄ΠΎ Π²ΡΡ ΠΎΠ΄Π° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ ΠΈΠ· ΡΡΠ°Π΄ΠΈΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΡ Π² ΠΌΠ°ΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΏΠΎΡΡ ΠΎ ΠΏΠΎΠ»ΡΠ·Π΅ ΠΈ Π²ΡΠ΅Π΄Π΅ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠΎΠΊΠ° Π»ΡΡΡΠ΅ ΠΎΡΠ»ΠΎΠΆΠΈΡΡ. Π‘Π΅ΠΉΡΠ°Ρ ΡΡΠ½ΠΎ Π»ΠΈΡΡ ΠΎΠ΄Π½ΠΎ: Π·Π° ART Π±ΡΠ΄ΡΡΠ΅Π΅. Google Ρ ΠΎΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ AOT Π΄Π»Ρ Π±ΠΎΡΡΠ±Ρ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΏΡΠΎΡΠΈΠ²Π½ΠΈΠΊΠΎΠΌ β iOS, ΠΈ ART ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎ ΡΠ»ΡΡΡΠΈΡΡ Android. ΠΠ΅Π²Π°ΠΆΠ½ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π³Π»ΡΠΏΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΠΈ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎ Ρ Π½Π΅ΠΉ ΡΠ΅Π³ΠΎΠ΄Π½Ρ. ΠΠ°ΠΆΠ½ΠΎ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Ρ ART Π·Π°Π²ΡΡΠ°.
ART ΠΈΠ»ΠΈ Dalvik Π½Π° Android β ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅, Π² ΡΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠΈΠ΅, ΡΡΠΎ Π»ΡΡΡΠ΅
  ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° Π½ΠΎΠ²ΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Android 4.4 KitKat. Π’Π΅ΠΏΠ΅ΡΡ, ΠΏΠΎΠΌΠΈΠΌΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik, Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ Snapdragon ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΠ΅Π΄Ρ ART. (ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΠ°Π»ΠΈ Π½Π° ΡΡΡ ΡΡΠ°ΡΡΡ Ρ ΡΠ΅Π»ΡΡ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ Π²ΠΊΠ»ΡΡΠΈΡΡ ART Π½Π° Android, ΠΏΡΠΎΠ»ΠΈΡΡΠ°ΠΉΡΠ΅ Π΅Π΅ ΠΊ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ, ΡΠ°ΠΌ Π΄Π°Π½Π° ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ).
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠΈΡΠ΅ΠΌ ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ? Π Android, Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΉΠ»ΠΎΠ² APK (ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ) ΠΈ Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π»ΠΎΠΆΠ°ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Π½Π΅Π΅.
Π Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Dalvik Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Just-In-Time (JIT), ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ Π΄ΠΎΠ»Π³ΠΎΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Β«ΡΠΎΡΠΌΠΎΠ·Π°ΠΌΒ», Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ RAM.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΡΡΠ΅Π΄Ρ ART
ART (Android RunTime) β Π½ΠΎΠ²Π°Ρ, ΠΏΠΎΠΊΠ° Π΅ΡΠ΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½Π°Ρ Π² Android 4.4 ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΅Π΅ ΠΏΠΎΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΡΡ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° (Π½ΠΈΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ).
ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ART ΠΎΡ Dalvik β ΠΏΠΎΠ΄Ρ ΠΎΠ΄ AOT (Ahead-Of-Time) ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠΎ Π² ΠΎΠ±ΡΠΈΡ ΡΠ΅ΡΡΠ°Ρ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Android ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π°ΠΏΡΡΠΊ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π±ΡΡΡΡΠ΅Π΅ (ΠΎΠ½ΠΎ ΡΠΆΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎ), Π° ΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠ²ΡΠ·ΠΈ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ, Π² ΡΠ΅ΠΎΡΠΈΠΈ, ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ ΠΌΠ΅Π½ΡΡΠ΅ΠΌΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΡΠ½Π΅ΡΠ³ΠΈΠΈ.
ΠΠ°ΠΊ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΈ ΡΡΠΎ Π»ΡΡΡΠ΅, ART ΠΈΠ»ΠΈ Dalvik?
Π ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ Π΅ΡΡΡ ΡΠΆΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ ΡΠ°Π±ΠΎΡΡ Android ΡΡΡΡΠΎΠΉΡΡΠ² Π² Π΄Π²ΡΡ ΡΡΠ΅Π΄Π°Ρ ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π·Π½ΡΡΡΡ. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΡ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΡΠ°ΠΊΠΈΡ ΡΠ΅ΡΡΠΎΠ² Π²ΡΠ»ΠΎΠΆΠ΅Π½ Π½Π° androidpolice.com (Π°Π½Π³Π».):
Π‘ΡΠΌΠΌΠΈΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (Π½ΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ ART ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ, ΡΡΠ° ΡΡΠ΅Π΄Π° ΠΏΠΎΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π΄ΠΈΠΈ) Ρ ART Π½Π΅Ρ: Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠΉ ΡΡΠ΅Π΄Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π»ΡΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Π½ΠΎ Π½Π΅ Π²ΠΎ Π²ΡΠ΅Ρ Π΅Π΅ Π°ΡΠΏΠ΅ΠΊΡΠ°Ρ ), Π° Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΎΡΠΎΠ±ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΈΠ»ΠΈ ΠΆΠ΅ Dalvik Π²ΠΏΠ΅ΡΠ΅Π΄ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, ΡΠΎ Π²ΠΎΠΏΡΠ΅ΠΊΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡΠΌ, Dalvik ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π²Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Ρ ART.
ΠΠ±ΡΠΈΠΉ Π²ΡΠ²ΠΎΠ΄ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ΅ΡΡΠΎΠ² β ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎΠΉ ΡΠ°Π·Π½ΠΈΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ ΡΡΠΎ Ρ ART, ΡΡΠΎ Ρ Dalvik Π½Π΅Ρ. ΠΠ΄Π½Π°ΠΊΠΎ, Π½ΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² Π½Π΅ΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅ΡΠ°ΡΡΠ΅ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π² Android 4. 5 ΠΈΠ»ΠΈ Android 5 ΡΠ°ΠΊΠ°Ρ ΡΠ°Π·Π½ΠΈΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π°. (ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Google, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ΄Π΅Π»Π°Π΅Ρ ART ΡΡΠ΅Π΄ΠΎΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ).
ΠΡΠ΅ ΠΏΠ°ΡΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ ART Π²ΠΌΠ΅ΡΡΠΎ Dalvik β Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ (ΠΈΠ»ΠΈ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΠΎΠΎΠ±ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ WhatsApp ΠΈ Titanium Backup), Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° Android ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ 10-20 ΠΌΠΈΠ½ΡΡ: ΡΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΠΊΠ»ΡΡΠΈΠ»ΠΈ ART ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡΠ΅ΡΠ° ΠΎΠ½ Π·Π°Π²ΠΈΡ, ΠΆΠ΄ΠΈΡΠ΅.
ΠΠ°ΠΊ Π²ΠΊΠ»ΡΡΠΈΡΡ ART Π½Π° Android
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ ART, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Android ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡΠ΅Ρ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΠ‘ 4.4.x ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ Snapdragon, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Nexus 5 ΠΈΠ»ΠΈ Nexus 7 2013.
Π‘Π½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π° Android. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, Π·Π°ΠΉΠ΄ΠΈΡΠ΅ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΡΠ½ΠΊΡ Β«Π ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅Β» (Π ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅) ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΡΠ°ΠΏΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ»Ρ Β«ΠΠΎΠΌΠ΅Ρ ΡΠ±ΠΎΡΠΊΠΈΒ», ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΡΠ°Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΏΡΠ½ΠΊΡ Β«ΠΠ»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²Β», Π° ΡΠ°ΠΌ β Β«ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΡΠ΅Π΄ΡΒ», Π³Π΄Π΅ ΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ART Π²ΠΌΠ΅ΡΡΠΎ Dalvik, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅.
remontka.pro Π² Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ | ΠΡΡΠ³ΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ
Π Π²Π΄ΡΡΠ³ ΠΈ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ:
ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Dalvik ΠΈ ART / Π₯Π°Π±Ρ
ΠΡΠΈΠ²Π΅Ρ, Π₯Π°Π±Ρ! ΠΠΊΠΎΠ»ΠΎ ΠΏΠΎΠ»ΡΠ³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ Ρ ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ Β«Π³Π°ΠΉΠ΄Β» ΠΏΠΎ
JVM. ΠΠΎΡΡ, Π² ΡΠ΅Π»ΠΎΠΌ, Π·Π°ΡΠ΅Π», Π° Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΡΠΏΡΠΎΡΠΈΠ»ΠΈ, Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π»ΠΈ βΡΠ΅Π³ΠΎ-ΡΠΎ ΠΏΠΎ Π°Π½Π΄ΡΠΎΠΈΠ΄Ρβ. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Ρ ΠΌΠ΅Π½Ρ Π΄ΠΎΡΠ»ΠΈ ΡΡΠΊΠΈ.
Π ΡΡΠΎΠΌ ΠΏΠΎΡΡΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΡΠ΅Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² Android. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Ρ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΊΡΠ°ΡΠΊΠΎ, Π½ΠΎ Π΅ΠΌΠΊΠΎ ΠΈΠ·Π»ΠΎΠΆΠΈΡΡ, ΡΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ART ΠΈ Dalvik, ΠΈ ΠΊΠ°ΠΊ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΡΠ»ΡΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² Android. Π’Π΅ΠΌΠ° ΡΠ²Π½ΠΎ Π½Π΅ Π½ΠΎΠ²Π°Ρ, Π½ΠΎ, Π½Π°Π΄Π΅ΡΡΡ, ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΊΡΡΠ°ΡΠΈ ΡΠ΅ΠΌ, ΠΊΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π²Π½ΠΈΠΊΠ°ΡΡ. ΠΠΎΠΌΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ β Π΄ΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ ΠΊΠ°Ρ.
ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°
Π‘Π½Π°ΡΠ°Π»Π°, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ ΡΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ JVM ΠΎΡ DVM.
Java Virtual Machine β Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΡΠΏΠΎΡΠΎΠ±Π½Π°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Java Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΠ½Π° ΠΎΠΏΠΈΡΠ°Π΅ΡΡΡ Π½Π° ΠΏΡΠΈΠ½ΡΠΈΠΏ βWrite once, run anywhereβ. ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ Java ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½ Π½Π° Π»ΡΠ±ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅, ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ JVM.
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Java ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ .java ΡΠ°ΠΉΠ»Ρ Π² class-ΡΠ°ΠΉΠ»Ρ (Π±Π°ΠΉΡ-ΠΊΠΎΠ΄). ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ JVM, ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° CPU.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ JVM:
- ΠΠΌΠ΅Π΅Ρ ΡΡΠ΅ΠΊΠΎΠ²ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ: Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΊΡΠ΄Π° ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ΅ΠΊ. ΠΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΡ Π΅ΠΌΠ΅ LIFO ΠΈΠ»ΠΈ βLast in β First Outβ ΠΈΠ»ΠΈ βΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Π²ΠΎΡΠ΅Π», ΠΏΠ΅ΡΠ²ΡΠΌ Π²ΡΡΠ΅Π»β.
- ΠΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ class-ΡΠ°ΠΉΠ»Ρ.
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ.
Dalvik Virtual Machine
(DVM) β Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ Java ΠΌΠ°ΡΠΈΠ½Π°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½Π°Ρ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ ΠΡΠ½ΠΎΠΌ ΠΠΎΡΠ½ΡΡΠ΅ΠΉΠ½ΠΎΠΌ (Π°Π½Π³Π». Dan Bornstein) ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Android.
ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Dalvik β ΡΡΠΎ ΡΡΠ΅Π΄Π° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Android ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΡΠ²ΠΎΡΠΌ, ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅. ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π»ΠΈΠ±ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ²ΠΎΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²), ΡΠ΄ΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik (Zygote Dalvik VM) ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ, Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π² ΠΎΠ±ΡΠ΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ VM, ΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΈΠ·Π½ΡΡΡΠΈ Android Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Dalvik, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ DVM:
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²: ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΠΊΡΠ΄Π° ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΠ° ΡΡΠ΅Ρ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ POP ΠΈ PUSH, ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΡΡΠ΅ΠΊΠΎΠ²ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ.
- ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠ°: Android dexer (ΠΎ Π½Π΅ΠΌ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½ΠΈΠΆΠ΅) ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ class-ΡΠ°ΠΉΠ»Ρ Π² ΡΠΎΡΠΌΠ°Ρ .dex, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π° Dalvik VM. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ class-ΡΠ°ΠΉΠ»Π°, dex-ΡΠ°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ².
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ± Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ DVM ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ.
Android Dexer
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Android Π·Π½Π°ΡΡ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Java Π±Π°ΠΉΡΠΊΠΎΠ΄Π° Π² .dex Π±Π°ΠΉΡΠΊΠΎΠ΄ Π΄Π»Ρ Android Runtime ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ°Π³ΠΎΠΌ Π² ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ APK. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ dex Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ βΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌβ Π² ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΠΎΠ½ Π½Π°ΠΏΡΡΠΌΡΡ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π²ΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π° ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° .dex ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠ°ΠΊ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ, ΡΠ°ΠΌ dex-ΡΠ°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ ΠΊΠ»Π°ΡΡΠΎΠ², Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΠΌΠ΅ΡΡΠ°. ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ Java ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ DVM. ΠΠ΅ΡΠΆΠ°ΡΡΠΉ dex-ΡΠ°ΠΉΠ» ΠΎΠ±ΡΡΠ½ΠΎ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ² ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ, ΡΠ΅ΠΌ ΡΠΆΠ°ΡΡΠΉ Π°ΡΡ ΠΈΠ² Java (JAR), ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΈΠ· ΡΠ΅Ρ ΠΆΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² .class.
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ, class-ΡΠ°ΠΉΠ»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°Π»ΠΈΡΡ Π² dex-ΡΠ°ΠΉΠ»Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ DX-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠΎ Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android Studio 3.1 ΠΈ Π΄Π°Π»Π΅Π΅, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΠ°Π» D8. ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ DX-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ, D8 ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π±ΡΡΡΡΠ΅Π΅ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ dex-ΡΠ°ΠΉΠ»Ρ ΠΌΠ΅Π½ΡΡΠΈΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ dex ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π°Π΅ΡΡΡ ΠΌΠΈΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ open-source ΡΡΠΈΠ»ΠΈΡΡ ProGuard. Π ΠΈΡΠΎΠ³Π΅, ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΎΡ ΠΆΠ΅ dex-ΡΠ°ΠΉΠ», Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅Π½ΡΡΠ΅. ΠΠ°Π»Π΅Π΅ ΡΡΠΎΡ dex-ΡΠ°ΠΉΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ apk ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π΄Π»Ρ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Android.
ΠΠΎ ΡΠ»Π΅Π΄ΠΎΠΌ Π·Π° D8 Π² 2018 Π³ΠΎΠ΄Ρ ΠΏΡΠΈΡΠ΅Π» R8, ΠΊΠΎΡΠΎΡΡΠΉ, ΠΏΠΎ ΡΡΡΠΈ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΠΌ ΠΆΠ΅ D8, ΡΠΎΠ»ΡΠΊΠΎ Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌΠΈ.
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Android Studio 3.4 ΠΈ Android Gradle 3.4.0 plugin ΠΈΠ»ΠΈ Π²ΡΡΠ΅, Proguard Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Ρ R8, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Code shrinking, Optimisation ΠΈ Obfuscation. Π₯ΠΎΡΡ R8 ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Proguard, ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Java Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° Π² dex-Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Π΅Π΄ΠΈΠ½ΠΎΡΠ°Π·ΠΎΠ²ΠΎ, ΡΡΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ.
R8 ΠΈ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Jetpack, Gson, Google Play Services. ΠΠΎΠ³Π΄Π° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΠ°ΡΡΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ°Π»Π°Ρ ΡΠ°ΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ΅Π· Code shrinking, Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
ΠΡΠ²Π°Π΅Ρ ΡΠ°ΠΊ, ΡΡΠΎ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΠΊΠΎΠ΄. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π·Π½Π°ΡΠΈΠΌΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΡΠ°Π±Π»ΠΎΠ½ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠΌ Π±ΡΠ»ΠΎ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΠΊΠΎΠ΄Π΅. ΠΠΎ ΡΠ°Π±Π»ΠΎΠ½Ρ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ Π±ΠΠ»ΡΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΊΠΎΠ΄Π°, ΡΠ΅ΠΌ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ.
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ R8 ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ. ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°ΠΆΠ΅ ΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Π½ΠΈΠΆΠ΅ ΠΏΡΠ΅Π²Π΅Π΄Π΅Π½Ρ ΡΠΈΡΡΡ ΠΈΠ· Π΄ΠΎΠΊΠ»Π°Π΄Π° Shrinking Your App with R8, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ Π½Π° Android Dev Summit ’19:
Π Π²ΠΎΡ ΡΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄Π΅Π»ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ R8 Π½Π° ΡΡΠ°ΠΏΠ΅ Π²ΡΠΏΡΡΠΊΠ° Π±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΠΈ (Π²Π·ΡΡΠΎ ΠΈΠ· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° Android Developers Blog):
ΠΠ΅ΡΠ°Π»ΡΠ½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Π² ΠΎΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄Π΅.
ART vs DVM Π² Android
DVM Π±ΡΠ»Π° ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ ΠΊΠ°ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ
ΠΌΠ°ΡΠΈΠ½Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π°Π½Π΄ΡΠΎΠΈΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ Android 4. 4 Kitkat.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ART Π±ΡΠ» ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π° Π² Android 5.0 (Lollipop) ART ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΠ» Dalvik.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΠ²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ART ΠΎΡ DVM ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, Π° DVM β JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ. ΠΠ΅ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ ART Π½Π°ΡΠ°Π» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³ΠΈΠ±ΡΠΈΠ΄ AOT ΠΈ JIT. ΠΠ°Π»Π΅Π΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΡΡΠΎ ΡΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅.
DVM
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ: Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π· ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ,
- ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΡΠ° ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- Π£ΡΠΊΠΎΡΡΠ΅Ρ Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π½Π° DVM, ΡΡΠ΅Π±ΡΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ΅ΠΌ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ART.
- Π£ΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΡΠ΅Π·Π΅ΡΠ² Π±Π°ΡΠ°ΡΠ΅ΠΈ, ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° CPU.
- Dalvik ΡΠ²Π»ΡΠ΅ΡΡΡ βΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌβ ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° Π°Π½Π΄ΡΠΎΠΈΠ΄ Π²Π΅ΡΡΠΈΡΡ Π²ΡΡΠ΅ 4. 4.
ART
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, ΡΠΎ Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ ΡΡΠΊΠΎΡΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- ΠΠ°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ΅Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ.
- ΠΠ²ΠΈΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΈ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π½Π° DVM.
- Π£Π²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π·Π΅ΡΠ² Π±Π°ΡΠ°ΡΠ΅ΠΈ, ΡΠΎΠΊΡΠ°ΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈΠ·-Π·Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
- Π£Π»ΡΡΡΠ΅Π½Π½Π°Ρ Garbage Collection ΠΈΠ»ΠΈ ΡΠ±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ°. ΠΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Dalvik, ΡΠ±ΠΎΡΡΠΈΠΊΠΈ ΠΌΡΡΠΎΡΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ 2 ΠΏΡΠΎΡ ΠΎΠ΄Π° ΠΏΠΎ ΠΊΡΡΠ΅ (heap), ΡΡΠΎ ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΎ ΠΊ ΠΏΠ»ΠΎΡ ΠΎΠΌΡ UX. Π ΡΠ»ΡΡΠ°Π΅ Ρ ART, ΡΠ°ΠΊΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π½Π΅Ρ: ΠΎΠ½ ΡΠΈΡΡΠΈΡ ΠΊΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈΠ΄Π°ΡΠΈΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
Π Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΡ
Π΅ΠΌΠ° Dalvik vs ART:
JIT + AOT Π² ART
Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android (ART), Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android 7, Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ JIT Ρ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π°. JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅ ΠΈ ΡΡΠΊΠΎΡΡΠ΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΡΠΎ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡ Π΅ΠΌΠ΅:
ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΎΠ½ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ (ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² Android < 5.0), Π½ΠΎ ΡΠ»Π΅Π΄ΠΈΡ Π·Π° ΡΠ΅ΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΠ°ΡΡΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ. ΠΠ°ΡΠ΅ΠΌ ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ
ΡΡΠ°ΡΡΠΊΠΎΠ² ΠΊΠΎΠ΄Π°. ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π±Π΅Π·Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΌΠ°ΡΡΡΠΎΠ½Π°, Π½Π°Ρ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎΡΡ Π½Π° Π·Π°ΡΡΠ΄ΠΊΠ΅.
ΠΠΎΠ²ΠΎΡΡ ΠΏΡΠΎΡΡΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΡΠ΅ΠΏΠ΅ΡΡ Π΄Π²Π° ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π½ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ°, ΡΡΠΎ Π΄Π°Π΅Ρ ΡΠ²ΠΎΠΈ ΠΏΠ»ΡΡΡ:
- Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ β ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈΠΌΠ΅Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ·Π½Π°ΡΡ ΠΎ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·, ΠΈ, ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ;
- ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ β Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½Π΅Π΅ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π° Π΅ΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΡΠ°ΡΡΠΊΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠ·Π΅Ρ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ NAND-ΠΏΠ°ΠΌΡΡΠΈ;
- ΡΠ΅Π·ΠΊΠΎΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ β Π½Π΅Ρ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π½Π΅Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ.
Π ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π² ART ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΡΡΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΠΎΡΡΠ°ΡΠ°Π»ΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ Dalvik ΠΎΡ ART, ΠΈ Π² ΡΠ΅Π»ΠΎΠΌ Π²Π·Π³Π»ΡΠ½ΡΡΡ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Android ΡΠ»ΡΡΡΠ°Π» ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ART Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΠ°Π΄ΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ: Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠΈΡΠΈ, ΡΡΠΎΠ±Ρ ΡΠ»ΡΡΡΠΈΡΡ ΠΎΠΏΡΡ ΠΊΠ°ΠΊ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
ΠΡΠ»ΠΈ Π±ΡΠ»ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ β Π΄Π°ΠΉΡΠ΅ Π·Π½Π°ΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°Ρ .
Π£ΡΠΊΠΎΡΡΠ΅Ρ Π»ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ART ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Android KitKat?
ΠΠΎΠΆΠ΅Ρ Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android 4.4.2 KitKat Π²ΡΠΆΠ°ΡΡ ΠΈΠ· Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΈΠ»ΠΈ Π»ΡΡΡΠ΅ ΠΎΡΡΠ°Π²ΠΈΡΡ ART Π² ΠΏΠΎΠΊΠΎΠ΅, ΠΏΠΎΠΊΠ° Google Π½Π΅ ΡΠ΅ΡΠΈΡ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ Π΅Π³ΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π·Π°ΠΌΠ΅Π½Ρ Π΄Π»Ρ Dalvik?
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Android Runtime?
Π£ΡΡΡΠΎΠΉΡΡΠ²Π° Android ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠΎ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Dalvik. ΠΠ°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ Π½ΡΠΆΠ΅Π½ Dalvik Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ. Android Runtime, ΠΈΠ»ΠΈ ART, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ; Dalvik ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π½Π° ΡΡΠ°ΡΠΎΠΌ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ ΠΈ ΠΏΠ°ΠΌΡΡΡΡ, ΡΠ΅Π³ΠΎ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ Android.
Π‘ Dalvik ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Just-In-Time (JIT), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ. ART ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ahead-Of-Time (AOT) ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ Android-ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Android 4.4 KitKat (ΡΡΠΎ Android 4.4.1 ΠΈ 4.4.2), Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡΡ Π»Π΅Π³ΠΊΠΎ. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Π°ΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ³ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅ β Π½Π΅ΠΏΠ»ΠΎΡ Π°Ρ Π²Π΅ΡΡ!
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Ρ Dalvik Runtime Π½Π° ART
Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ Android 4.4.2 KitKat Ρ Dalvik Π½Π° ART, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΌΠ΅Π½Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π²Π°ΡΠ΅Π³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
ΠΡΠΎ ΡΠΊΡΡΡΠΎ, Π½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠ°ΡΠΊΡΡΠ²Π°Π΅ΡΡΡ. ΠΎΡΠΊΡΡΡΠΎ ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ> Π ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅ ΠΈ Π½Π°ΠΉΡΠΈ Π½ΠΎΠΌΠ΅Ρ ΡΠ±ΠΎΡΠΊΠΈ β ΠΊΠΎΡΠ½ΠΈΡΠ΅ΡΡ ΡΡΠΎΠ³ΠΎ 7 ΡΠ°Π·. ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ, ΠΈΠ½ΡΠΎΡΠΌΠΈΡΡΡΡΠ΅Π΅ Π²Π°Ρ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΡΠ°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π½Π°ΠΆΠ°ΡΠΈΠΉ, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ, ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅.
ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π½Π°Π·Π°Π΄ ΠΊ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΌΠ΅Π½Ρ ΠΈ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΌΠ΅Π½Ρ.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΏΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ Π±Π»Π°Π³ΠΎΠΏΡΠΈΡΡΠ½ΡΠΌΠΈ (Ρ ΠΎΡΡ ΡΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ).
ΠΡΡΡΠ΄Π° Π½Π°ΠΉΡΠΈ ΠΡΠ±Π΅ΡΠΈΡΠ΅ Runtime> Use ART. ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π₯ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΠ΅ ΠΈ ΠΏΠΎΠ΄ΠΎΠΆΠ΄ΠΈΡΠ΅, ΠΏΠΎΠΊΠ° Π²Π°Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ΅Π½ ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΠΎΡΠ²ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Β«Android ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡβ¦Β», ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ART. ΠΠΎΠ³Π΄Π° Android Π·Π°ΠΏΡΡΡΠΈΡΡΡ, Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π³ΠΎΡΠΎΠ²Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»ΡΡΡΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β¦ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ.
ΠΡΠΈΡΠΈΠ½Ρ ΠΏΡΠΎΡΠΈΠ² ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π½Π° ΠΠ Π’
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ART Π½Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΡΠ°Π΄ΠΈΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ ΠΏΠ°ΡΡ Π°Π»ΡΠ½ΠΎΠ΅ ΡΠΉΡΠΎ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Android, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΆΠΈΠ΄Π°ΡΡ Π² Π±ΡΠ΄ΡΡΠΈΡ Π²ΡΠΏΡΡΠΊΠ°Ρ .
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Π΅ΡΠ΅ΡΡ Π»ΠΈ Π²Ρ Π½Π° ART ΠΈΠ»ΠΈ Π½Π΅Ρ, ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π²Π°Ρ Π²ΡΠ±ΠΎΡ. ΠΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΅ΡΠ΅ Π½Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ΠΎ, ΠΈ, Ρ ΠΎΡΡ ΠΎΡΠ΅Π½ΠΊΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΡ, ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΎ Π²Π΄Π²ΠΎΠ΅, Π΅ΡΡΡ ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΡΠΎΡΠΊΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ AOT, Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ, Π° ΡΠ»ΡΡΡΠ΅Π½Π½Π°Ρ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠ½ΠΈΠΆΠ°Π΅ΡΡΡ Π·Π° ΡΡΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
ΠΡΠ΅ ΠΎΠ΄Π½ΠΈΠΌ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ART Π½Π° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π₯ΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²ΡΡΠΎΠΊΠΎΠΊΠ»Π°ΡΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ART, Π½Π΅Ρ Π³Π°ΡΠ°Π½ΡΠΈΠΈ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΠ΅ΡΡ, Π±ΡΠ΄ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΡΠ°ΡΠΊΠΎΡΡΠΎΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ β ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΡΡΠ°ΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ART Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π΄Π΅Π»Π°ΡΡ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ ΠΠΠ£. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΠΠ£
Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π° ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android.
Π‘ΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π°Π½Π°Π»ΠΈΠ·: ART ΠΏΡΠΎΡΠΈΠ² Dalvik
Π§ΡΠΎΠ±Ρ ΠΎΡΠ΅Π½ΠΈΡΡ, Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π»ΠΈ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²Π»ΠΈΡΡΡ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ ΠΏΡΠΎΠ²Π΅Π» Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΠΎΠ². Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ Π»ΡΠ±ΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΈ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ.
ΠΠΎΠ΄ AnTuTu Benchmark:
- ΠΡΠ΅Π½ΠΊΠ° ΠΠ°Π»Π²ΠΈΠΊΠ°: 16719
- ART Π±Π°Π»Π»: 17431
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: ART Π½Π° 0,95% Π±ΡΡΡΡΠ΅Π΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ 3D Benchmark (Ice Storm)
- ΠΡΠ΅Π½ΠΊΠ° ΠΠ°Π»Π²ΠΈΠΊΠ°: 5638
- ΠΡΠ΅Π½ΠΊΠ° ART: 5616 (Π±Π΅Π· Π·Π²ΡΠΊΠ°)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: Dalvik Π½Π° 1% Π±ΡΡΡΡΠ΅Π΅.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Ρ ΡΡΠ°Π²Π½ΠΈΠ» Ρ ΠΠ΅Π»Π»Π°ΠΌΠΎ (ΠΠ΅ΡΠ°Π»Π»)
- ΠΡΠ΅Π½ΠΊΠ° ΠΠ°Π»Π²ΠΈΠΊΠ°: 539
- ΠΡΠ΅Π½ΠΊΠ° ART: 540
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: ΠΠ Π’ Π½Π° 1% Π±ΡΡΡΡΠ΅Π΅.
Π― ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΠΏΡΡΡΠΈΠ» ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: Chrome, Comics ΠΎΡ Comixology ΠΈ Doctor Who: Legacy ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ ΡΠ°Π·Π½ΠΈΡΠ° Π² ΡΠΊΠΎΡΠΎΡΡΠΈ Π΅Π΄Π²Π° Π·Π°ΠΌΠ΅ΡΠ½Π°.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ART
ΠΠ°ΠΊ ΠΎΡΠΌΠ΅ΡΠ°Π»ΠΎΡΡ Π²ΡΡΠ΅, Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ART. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
Π ΡΡΠ°ΡΡΡΡ, ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»ΡΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ART, ΠΏΠΎΠ»Π°Π³Π°ΡΡΡ Π½Π° ΠΊΡΠ°ΡΠ΄ΡΠΎΡΡΠΈΠ½Π³ΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π»ΡΡΡΠΈΠΌ ΡΠΏΠΈΡΠΊΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ www.androidruntime.com/list, Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΏΠΎΠΈΡΠΊΠ°, ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ Π½Π°ΠΉΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ Ρ ART.
ΠΡΠ»ΠΈ ART Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ Π²Π°Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, Π²Π΅ΡΠ½ΡΠ²ΡΠΈΡΡ ΠΊ ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π°ΡΠΈΠ°Π½Ρ, Π³Π΄Π΅ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠ±ΡΠ°ΡΡ ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Dalvik.
ΠΠ‘ΠΠ£Π‘Π‘Π’ΠΠ: Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π³ΠΎΡΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ
ΠΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android, Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ ΠΎΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Ρ ΠΎΡΡ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΡΡΡΠ΄Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΊΠ°ΠΊ ΠΎΡΠΌΠ΅ΡΠ°Π»ΠΎΡΡ Π²ΡΡΠ΅, ART Π²ΡΠ΅ Π΅ΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Android, ΠΌΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²ΡΠ²Π°ΡΡΡΡ, Π΅ΡΠ»ΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ Π±ΡΠ΄Π΅Ρ Π½Π΅ ΡΠ°ΠΊΠΈΠΌ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡΠΌ.
ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ART ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ»ΠΈ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Π½Π΅ ΡΡΠΎΠΈΡ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΠ»ΠΎΡ ΠΈΠ΅ ΠΎΡΠ·ΡΠ²Ρ Π² Play Store, ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ ART. ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΡΡΠΎ Π½Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ±ΠΈΡΡ Ρ ΡΠΎΠ»ΠΊΡ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ΅Π½Ρ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π±Ρ Π½Π° ΠΈΡ ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅ Ρ Dalvik.
ΠΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Android Runtime, ΠΈΠ»ΠΈ Π²Ρ Π±Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°ΡΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ ΡΡΠ°Π½Π΅Ρ ΡΠΈΡΠΎΠΊΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ? Π Π°ΡΡΠΊΠ°ΠΆΠΈΡΠ΅ Π½Π°ΠΌ ΡΠ²ΠΎΠΈ ΠΌΡΡΠ»ΠΈ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
ΠΡΡΡΠ΅Π΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅: Placeit.net
Image Credit: Π Π°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΡΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ ΡΠ΅ΡΠ΅Π· Shutterstock
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ dalvik ΠΈ art
Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° Π½ΠΎΠ²ΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Android 4.4 KitKat. Π’Π΅ΠΏΠ΅ΡΡ, ΠΏΠΎΠΌΠΈΠΌΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik, Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ Snapdragon ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΠ΅Π΄Ρ ART. (ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΠ°Π»ΠΈ Π½Π° ΡΡΡ ΡΡΠ°ΡΡΡ Ρ ΡΠ΅Π»ΡΡ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ Π²ΠΊΠ»ΡΡΠΈΡΡ ART Π½Π° Android, ΠΏΡΠΎΠ»ΠΈΡΡΠ°ΠΉΡΠ΅ Π΅Π΅ ΠΊ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ, ΡΠ°ΠΌ Π΄Π°Π½Π° ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ).
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠΈΡΠ΅ΠΌ ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ? Π Android, Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΉΠ»ΠΎΠ² APK (ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ) ΠΈ Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π»ΠΎΠΆΠ°ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Π½Π΅Π΅.
Π Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Dalvik Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Just-In-Time (JIT), ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ Π΄ΠΎΠ»Π³ΠΎΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Β«ΡΠΎΡΠΌΠΎΠ·Π°ΠΌΒ», Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ RAM.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΡΡΠ΅Π΄Ρ ART
ART (Android RunTime) β Π½ΠΎΠ²Π°Ρ, ΠΏΠΎΠΊΠ° Π΅ΡΠ΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½Π°Ρ Π² Android 4.4 ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΅Π΅ ΠΏΠΎΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΡΡ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° (Π½ΠΈΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ).
ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ART ΠΎΡ Dalvik β ΠΏΠΎΠ΄Ρ ΠΎΠ΄ AOT (Ahead-Of-Time) ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠΎ Π² ΠΎΠ±ΡΠΈΡ ΡΠ΅ΡΡΠ°Ρ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Android ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π°ΠΏΡΡΠΊ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π±ΡΡΡΡΠ΅Π΅ (ΠΎΠ½ΠΎ ΡΠΆΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎ), Π° ΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠ²ΡΠ·ΠΈ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ, Π² ΡΠ΅ΠΎΡΠΈΠΈ, ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ ΠΌΠ΅Π½ΡΡΠ΅ΠΌΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΡΠ½Π΅ΡΠ³ΠΈΠΈ.
ΠΠ°ΠΊ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΈ ΡΡΠΎ Π»ΡΡΡΠ΅, ART ΠΈΠ»ΠΈ Dalvik?
Π ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ Π΅ΡΡΡ ΡΠΆΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ ΡΠ°Π±ΠΎΡΡ Android ΡΡΡΡΠΎΠΉΡΡΠ² Π² Π΄Π²ΡΡ ΡΡΠ΅Π΄Π°Ρ ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π·Π½ΡΡΡΡ. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΡ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΡΠ°ΠΊΠΈΡ ΡΠ΅ΡΡΠΎΠ² Π²ΡΠ»ΠΎΠΆΠ΅Π½ Π½Π° androidpolice.com (Π°Π½Π³Π».):
Π‘ΡΠΌΠΌΠΈΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (Π½ΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ ART ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ, ΡΡΠ° ΡΡΠ΅Π΄Π° ΠΏΠΎΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π΄ΠΈΠΈ) Ρ ART Π½Π΅Ρ: Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠΉ ΡΡΠ΅Π΄Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π»ΡΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Π½ΠΎ Π½Π΅ Π²ΠΎ Π²ΡΠ΅Ρ Π΅Π΅ Π°ΡΠΏΠ΅ΠΊΡΠ°Ρ ), Π° Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΎΡΠΎΠ±ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΈΠ»ΠΈ ΠΆΠ΅ Dalvik Π²ΠΏΠ΅ΡΠ΅Π΄ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, ΡΠΎ Π²ΠΎΠΏΡΠ΅ΠΊΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡΠΌ, Dalvik ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π²Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Ρ ART.
ΠΠ±ΡΠΈΠΉ Π²ΡΠ²ΠΎΠ΄ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ΅ΡΡΠΎΠ² β ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎΠΉ ΡΠ°Π·Π½ΠΈΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ ΡΡΠΎ Ρ ART, ΡΡΠΎ Ρ Dalvik Π½Π΅Ρ. ΠΠ΄Π½Π°ΠΊΠΎ, Π½ΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² Π½Π΅ΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅ΡΠ°ΡΡΠ΅ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π² Android 4.5 ΠΈΠ»ΠΈ Android 5 ΡΠ°ΠΊΠ°Ρ ΡΠ°Π·Π½ΠΈΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π°. (ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Google, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ΄Π΅Π»Π°Π΅Ρ ART ΡΡΠ΅Π΄ΠΎΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ).
ΠΡΠ΅ ΠΏΠ°ΡΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ ART Π²ΠΌΠ΅ΡΡΠΎ Dalvik β Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ (ΠΈΠ»ΠΈ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΠΎΠΎΠ±ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ WhatsApp ΠΈ Titanium Backup), Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° Android ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ 10-20 ΠΌΠΈΠ½ΡΡ: ΡΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΠΊΠ»ΡΡΠΈΠ»ΠΈ ART ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡΠ΅ΡΠ° ΠΎΠ½ Π·Π°Π²ΠΈΡ, ΠΆΠ΄ΠΈΡΠ΅.
ΠΠ°ΠΊ Π²ΠΊΠ»ΡΡΠΈΡΡ ART Π½Π° Andro >ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ ART, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Android ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡΠ΅Ρ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΠ‘ 4.4.x ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ Snapdragon, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Nexus 5 ΠΈΠ»ΠΈ Nexus 7 2013.
Π‘Π½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π° Android. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, Π·Π°ΠΉΠ΄ΠΈΡΠ΅ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΡΠ½ΠΊΡ Β«Π ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅Β» (Π ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅) ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΡΠ°ΠΏΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ»Ρ Β«ΠΠΎΠΌΠ΅Ρ ΡΠ±ΠΎΡΠΊΠΈΒ», ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΡΠ°Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΏΡΠ½ΠΊΡ Β«ΠΠ»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²Β», Π° ΡΠ°ΠΌ β Β«ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΡΠ΅Π΄ΡΒ», Π³Π΄Π΅ ΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ART Π²ΠΌΠ΅ΡΡΠΎ Dalvik, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅.
Π Π²Π΄ΡΡΠ³ ΠΈ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ:
ΠΠΎΡΠ΅ΠΌΡ Π±Ρ Π½Π΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°ΡΡΡΡ?
Π Π°ΡΡΡΠ»ΠΊΠ° Π½ΠΎΠ²ΡΡ , ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ , ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² ΡΠ°ΠΉΡΠ° remontka.pro. ΠΠΈΠΊΠ°ΠΊΠΎΠΉ ΡΠ΅ΠΊΠ»Π°ΠΌΡ ΠΈ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½Π°Ρ ΠΏΠΎΠΌΠΎΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠ°ΠΌ ΠΎΡ Π°Π²ΡΠΎΡΠ°. ΠΡΡΠ³ΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ (ΠΠ, ΠΠ΄Π½ΠΎΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΈ, Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ, Facebook, Twitter, Youtube, Π―Π½Π΄Π΅ΠΊΡ.ΠΠ·Π΅Π½)
24.12.2015 Π² 14:20
ΠΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° ART ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΈ Π²ΡΠ»Π΅ΡΠ°ΡΡ ΠΈΠ³ΡΡ.
15.01.2016 Π² 18:58
ΠΠΈΠΊΠΎΠ»Π°ΠΉ, ΡΠ΅ΠΉΡΠ°Ρ ΠΏΠΎΠ΄ ART ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡ
01.02.2016 Π² 01:06
ΠΊΠ°ΠΊ Π²ΡΠΉΡΠΈ Ρ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ°? Π²ΠΊΠ»ΡΡΠΈΠ» ART Π°Π½Π΄ΡΠΎΠΈΠ΄ ΡΠ² ΠΏΡΠΈΡΡΠ°Π²ΠΊΠ° ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»Π°ΡΡ ΠΈ Π½Π°Π΄ΠΏΠΈΡΡ Π°Π½Π΄ΡΠΎΠΈΠ΄ Π·Π°Π²ΠΈΡΠ»Π° Π±ΠΎΠ»Π΅Π΅ 2Ρ ΡΠ°ΡΠΎΠ². Π²ΡΠ΄ΡΡΠ³ΠΈΠ²Π°Π» ΠΏΠΈΡΠ°Π½ΠΈΠ΅, Π΄Π΅Π»Π°Π» ΡΠ΅ΡΠ΅Ρ, Π²ΡΡ, Ρ Π°Π½Π° Π΅ΠΉ?
01.02.2016 Π² 09:05
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅. ΠΠΎ Ρ Π°ΡΠ΄-ΡΠ΅ΡΠ΅ΡΡ ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡΡΡ. ΠΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ β ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠ΅ΠΌ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΌ.
01.02.2016 Π² 15:20
ΠΠ½Π° ΠΎΡΠΊΠ»ΡΡΠ°Π΅ΡΡΡ, Π° Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡ, Π²ΠΈΡΠΈΡ Π½Π° Π·Π°ΡΡΠ°Π²ΠΊΠ΅ Π°Π½Π΄ΡΠΎΠΈΠ΄. ΠΠ΅ΡΠ΅ΠΏΡΠΎΡΠΈΠ» Ρ ΡΡΡΠ°, ΡΠ°ΠΊ ΠΈ Π²ΠΈΡΠ΅Π»Π° Π½Π° ΡΡΠΎΠΉ Π½Π°Π΄ΠΏΠΈΡΠΈ Π΄ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ. ΠΠΎΠΊΠ° ΠΈΡΠΊΠ°Π» ΠΊΠ°ΠΊ ΠΏΠΎΡΠΈΠ½ΠΈΡΡ ΠΏΠΎΠΏΠ°Π»ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Ρ ΡΠ΅ΡΠΈΠ²ΡΠΈΠΉ Π²ΠΊΠ»ΡΡΠΈΡΡ ART (ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ Π½Π° 4ΠΏΠ΄Π° ΡΠ°ΠΉΡΠ΅) Π’Π°ΠΊ ΡΡΠΎ ΠΏΡΡΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π½Π°ΡΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄ΡΠ½, Π²ΠΈΠ΄ΠΈΠΌΠΎ Π½Π΅ Π²ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠ΅
10.02.2016 Π² 16:20
ΠΠΎΠ», ΡΠ΅ΡΠΈΠ» ΡΡΠ°ΠΉΠ½ΡΡΡ ΠΠ Π’ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ g3s, Π°ΠΏΠΏΠ°ΡΠ°Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ ΠΈ Π½Π°ΡΠ°Π» ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π» 84 ΠΈΠ· 130, ΠΏΠΎΡΠΎΠΌ Π²ΡΠ±ΠΈΠ»ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠ» ΡΡΠΎ-ΡΠΎ ΠΊΡΠ°ΡΠ½ΡΠ»ΠΎΡΡ ΠΈ ΠΌΠ΅ΡΡΠ° Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ.
ΠΡΠ΅ ΡΠ°Π· ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π» 34 ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²Π΅ΡΠ½ΡΠ»ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π° Dalvik ΠΊ ΡΡΠ°ΡΡΡΡ!
Π― Π΄ΡΠΌΠ°Π» ΠΎΠ½ ΡΠ΅ΠΉΡΠ°Ρ Π·Π°Π²ΠΈΡΠ½Π΅Ρ ΡΠ°ΠΊ Π½Π°Π²Π΅ΠΊΠΈ ΠΈ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ΅ΡΠ΅ΡΡ Π΄ΠΎ Π·Π°Π²ΠΎΠ΄ΡΠΊΠΈΡ
.
21.02.2016 Π² 09:58
ΠΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ Ρ Π΄Π°Π»Π²ΠΈΠΊ Π½Π° Π°ΡΡ fly 4413 Π΅Π²ΠΎ ΡΠΈΠΊ 3 , ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ ΡΠ΅Π» ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΠ»ΠΎ, ΡΠ΅ΡΠ΅Π· Π°Π½ΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ» Π°ΡΡ-19788 Π΄Π°Π»Π²ΠΈΠΊ-19928, ΠΏΠΎ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΈΠ»ΠΈ Ρ Π±ΡΠ» Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±Π΄ΠΈΡΠ΅Π»Π΅Π½. ΠΠΎ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π·ΡΡΠ΄ΠΊΠΈ Π½Π΅ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π». ΠΡΠΎΡ Π΅ΡΠ΅ Π½Π° ΡΠ°ΠΊΠΎΠΌ ΡΠ»Π°Π΅ ΡΠ΅ΡΡΠΈΠ»?
15.04.2016 Π² 13:12
Htc one mini 2 ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ»ΡΡ Π½Π° ΠΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ, ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΡΡΠΊΠ°, ΡΠ΅Π»Π΅ΡΠΎΠ½ ΡΡΠ°Π·Ρ ΠΆΠ΅ Π½Π°ΡΠ°Π» ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ. ΠΏΠΎΡΠ»Π΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° ΠΏΠΎΠ΄Π²ΠΈΡΠ»Π° ΠΌΠΈΠ½ΡΡΡ Π½Π° 3, ΠΏΡΡΠ°Π»ΡΡ Π²ΡΠΊΠ»ΡΡΠΈΡΡ, ΠΆΠ°Π» Π½Π° Π²ΡΠ΅ Π±ΠΎΠΊΠΎΠ²ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΡΠΎΠ±ΡΠ°Π»ΡΡ ΠΏΠ°Π½ΠΈΠΊΠΎΠ²Π°ΡΡ, ΠΊΠ°ΠΊ Π½Π°ΡΠ°Π»Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΠΈ Π½Π°ΠΏΡΡΠΆΠ΅Π½Π½ΡΠ΅ ΡΠ³ΠΎΠ΄ΠΈΡΡ ΠΎΡΠ»Π°Π±Π»ΠΈ, Ρ Π½Π°ΡΠ°Π» ΠΆΠ΄Π°ΡΡ. Π‘ΠΏΡΡΡΡ ΠΌΠΈΠ½ΡΡ 10-15 ΠΏΠΎΡΠ»Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ Π³Π»Π°Π²Π½ΡΠΉ ΡΠΊΡΠ°Π½. Π― Π‘ΡΠ°Π·Ρ Π½Π°ΡΠ°Π» ΡΡΡΠΊΠ°ΡΡ ΠΏΠ°Π»ΡΡΠ΅ΠΌ ΠΊΡΠ΄Π° Π½Π΅ ΠΏΠΎΠΏΠΎΠ΄Ρ ΠΏΡΡΠ°ΡΡΡ ΠΈΡΠΊΠ°ΡΡ ΠΊΠ°ΠΊΠΈΡ Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π’Π΅Π»Π΅ΡΠΎΠ½ Ρ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ΅ΠΊΡΠ½Π΄ Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΏΠΎΠ΄Π²ΠΈΡΠ°Π», Π½ΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΡΡ Π΄Π²ΡΡ ΠΌΠΈΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π». ΠΠΎΡΠΎΡΠ΅ ΡΠ°Π·Π½ΠΈΡΡ ΠΏΠΎΠΊΠ° Π½Π΅ Π²ΠΈΠΆΡ ΠΈ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ. ΠΠ° ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π·Π½Π°Ρ Π·Π°ΡΠ΅ΠΌ Π²ΡΡ ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π», Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΌΠ½Π΅ ΠΏΡΠΎΡΡΠΎ ΠΈΠ·Π²ΠΈΠ½ΠΈΡΠ΅, ΡΡΠΎ Π·ΡΡ ΠΏΠΎΡΡΠ°ΡΠΈΠ» Π²Π°ΡΠ΅ Π²ΡΠ΅ΠΌΡ
16.04.2016 Π² 14:42
ΠΠΊΠ»ΡΡΠΈΠ» Art, ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ.. ΠΠ°ΡΠ°Π» ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.. 139 ΠΈ Π²ΡΠ΅ ΡΠ΄Π°ΡΠ½ΠΎβ¦ ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»Π° ΠΏΠΎΠ»Π½Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ΅Π»Π΅ΡΠΎΠ½ Π½Π°ΡΠ°Π» Π°Π΄ΡΠΊΠΈ ΡΡΠΎΠΈΡΡ.. ΠΠΈΡΠ½ΠΈΡ ΠΈ ΠΊΠ°ΠΊ Π±ΡΠ΄Ρ ΠΌΠΈΠ½ΡΡΠ½ΠΎΠ΅ Π·Π°Π»ΠΈΠΏΠ°Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ, ΠΌΠ°Π»ΠΎ ΡΠΎΠ³ΠΎ, ΡΠ°ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ°Π»β¦ ΠΠΎΠ±ΡΠ΅ΠΌ Π΅Π»Π΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΠ» Π½Π° davlik
01.10.2016 Π² 10:59
ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ» Π½Π° ART ΡΠ±ΠΎΠ³ΡΡ ΡΡΡΠ±Ρ fly iq4401.
Π Π°Π·Π½ΠΈΡΡ Π² ΡΠΊΠΎΡΠΎΡΡΠΈ Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ», Π° Π²ΠΎΡ ΡΠ°Π·ΡΡΠΆΠ°ΡΡΡΡ ΡΡΠ°Π» Π·Π°ΠΌΠ΅ΡΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅.
01.10.2016 Π² 16:49
ΠΠ΅ Π·Π½Π°Ρ, Π΄Π»Ρ ΡΠ΅Π³ΠΎ Π²Ρ Π½Π° ΡΠ΅Π»Π΅ΡΠΎΠ½Π°Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΠ΅ Π½Π° Π°ΡΡ, Π½Π° Π½ΠΈΡ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΏΠΎΠΊΠ° Π½ΠΈ ΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π½ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ, Π² Π»ΡΡΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, Ρ ΠΌΠ΅Π½Ρ Π½Π° ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅ Π’Π΅ΡΠ»Π° Π½Π΅ΠΎΠ½ 8 Π΅ΡΡΡ ΠΏΡΠΎΠ³Ρ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Ρ ΠΏΠ΅ΡΠ΅ΡΠ΅Π» ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎ, ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠ»Π°Π½ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»Π° Π² ΡΡΠ°ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π½ΠΎΡΠΌΠ΅, Π΄Π°ΠΆΠ΅ Π²ΠΈΠ΄Π½Ρ Π½Π΅ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ, ΠΏΡΠΈ Π²ΡΡ ΠΎΠ΄Π΅ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ, ΡΠ°Π±ΠΎΡΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π½ΠΎ Π±ΡΡΡΡΠ΅Π΅, ΠΈΠ³ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Π°, ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΈ Π²ΡΠ»Π΅ΡΠ°ΡΡ , Π° Π² ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΌ, Π·Π°ΡΡΠ΄ΠΊΡ Π΄Π΅ΡΠΆΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅.
24.12.2016 Π² 19:28
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π°ΠΏΠΏΠ°ΡΠ°Ρ lenovo s850, ΡΠ΄Π΅Π»Π°Π» Π·Π°ΠΊΠ°Π· Π½Π° root, Π²ΡΡΠ°Π»ΠΈ ΠΎΡΠ»ΠΈΡΠ½ΠΎ, Π½ΠΎ Ρ dav ΡΠ΅Π»Π΅ΡΠΎΠ½ ΡΡΠ°Π» ΡΠΎΡΠΌΠΎΠ·ΠΎΠΌ Π½ΠΎΠΌΠ΅Ρ ΠΎΠ΄ΠΈΠ½, ΠΏΠ΅ΡΠ΅ΡΠ΅Π» art, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΅ΡΡΡ, Π½Π΅Ρ Π»Π°Π³ΠΎΠ² Π² ΡΠ°Π±ΠΎΡΠ΅, ΡΠΆΠ°ΡΠ½ΡΡ ΠΏΠΎΠ΄Π²ΠΈΡΠ°Π½ΠΈΠΉ.
25.01.2017 Π² 15:57
ΠΊΠ°ΠΊ Π²ΡΠΉΡΠΈ Ρ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ°? Π²ΠΊΠ»ΡΡΠΈΠ» ART Π°Π½Π΄ΡΠΎΠΈΠ΄ ΡΠΌΠ°ΡΡΡΠΎΠ½Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»Π°ΡΡ ΠΈ Π½Π°Π΄ΠΏΠΈΡΡ Π°Π½Π΄ΡΠΎΠΈΠ΄ Π·Π°Π²ΠΈΡΠ»Π° Π±ΠΎΠ»Π΅Π΅ 6ΡΠΈ ΡΠ°ΡΠΎΠ². Π²ΡΠ΄ΡΡΠ³ΠΈΠ²Π°Π» ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠΌΠΎΠ³ΠΈΡΠ΅
16.02.2017 Π² 23:19
ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π‘Π½Π΅ΠΏΠ΄ΡΠ°Π³ΠΎΠ½Π΅, Ρ ΠΌΠ΅Π½Ρ ΠΏΡΠΎΡ ΠΠ’Π ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΠ Π’ ΠΊΠ°ΠΊΠΈΡ ΡΡΠΏΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ Π΄Π°Π». Π’Π°ΠΊ ΡΡΠΎ ΠΎΡΡΠ°Π»ΡΡ Π½Π° ΠΠ°Π»Π²ΠΈΠΊΠ΅.
17.02.2017 Π² 09:26
ΠΡ ΡΡΠ°ΡΡΡ ΠΏΠΈΡΠ°Π»Π°ΡΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ Π»Π΅Ρ Π½Π°Π·Π°Π΄ ΡΠΆΠ΅. Π’Π°ΠΊ ΡΡΠΎ Π΄Π°, ΡΠ΅ΠΉΡΠ°Ρ ΠΈ Π½Π° MTK ΠΌΠΎΠΆΠ½ΠΎ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΏΠΎΡΠ»Π΅ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎΠ½ Π½Π΅ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΡΠ°Π·Ρ. ΠΡΡ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ β Π²Π°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎ. ΠΡΠ²Π΅ΡΡ Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΈΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ Π΄Π½ΡΠΌ, ΠΈΠ½ΠΎΠ³Π΄Π° ΡΠ°ΡΠ΅. ΠΠΎΠ·Π²ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ.
Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° Π½ΠΎΠ²ΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Android 4.4 KitKat. Π’Π΅ΠΏΠ΅ΡΡ, ΠΏΠΎΠΌΠΈΠΌΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik, Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ Snapdragon ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΠ΅Π΄Ρ ART. (ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΠ°Π»ΠΈ Π½Π° ΡΡΡ ΡΡΠ°ΡΡΡ Ρ ΡΠ΅Π»ΡΡ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ Π²ΠΊΠ»ΡΡΠΈΡΡ ART Π½Π° Android, ΠΏΡΠΎΠ»ΠΈΡΡΠ°ΠΉΡΠ΅ Π΅Π΅ ΠΊ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ, ΡΠ°ΠΌ Π΄Π°Π½Π° ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ).
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠΈΡΠ΅ΠΌ ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ? Π Android, Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΉΠ»ΠΎΠ² APK (ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ) ΠΈ Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π»ΠΎΠΆΠ°ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Π½Π΅Π΅.
Π Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Dalvik Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Just-In-Time (JIT), ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ Π΄ΠΎΠ»Π³ΠΎΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Β«ΡΠΎΡΠΌΠΎΠ·Π°ΠΌΒ», Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ RAM.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΡΡΠ΅Π΄Ρ ART
ART (Android RunTime) β Π½ΠΎΠ²Π°Ρ, ΠΏΠΎΠΊΠ° Π΅ΡΠ΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½Π°Ρ Π² Android 4.4 ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΅Π΅ ΠΏΠΎΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΡΡ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° (Π½ΠΈΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ).
ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ART ΠΎΡ Dalvik β ΠΏΠΎΠ΄Ρ ΠΎΠ΄ AOT (Ahead-Of-Time) ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠΎ Π² ΠΎΠ±ΡΠΈΡ ΡΠ΅ΡΡΠ°Ρ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Android ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π°ΠΏΡΡΠΊ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π±ΡΡΡΡΠ΅Π΅ (ΠΎΠ½ΠΎ ΡΠΆΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎ), Π° ΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠ²ΡΠ·ΠΈ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ, Π² ΡΠ΅ΠΎΡΠΈΠΈ, ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ ΠΌΠ΅Π½ΡΡΠ΅ΠΌΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΡΠ½Π΅ΡΠ³ΠΈΠΈ.
ΠΠ°ΠΊ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΈ ΡΡΠΎ Π»ΡΡΡΠ΅, ART ΠΈΠ»ΠΈ Dalvik?
Π ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ Π΅ΡΡΡ ΡΠΆΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ ΡΠ°Π±ΠΎΡΡ Android ΡΡΡΡΠΎΠΉΡΡΠ² Π² Π΄Π²ΡΡ ΡΡΠ΅Π΄Π°Ρ ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π·Π½ΡΡΡΡ. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΡ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΡΠ°ΠΊΠΈΡ ΡΠ΅ΡΡΠΎΠ² Π²ΡΠ»ΠΎΠΆΠ΅Π½ Π½Π° androidpolice.com (Π°Π½Π³Π».):
Π‘ΡΠΌΠΌΠΈΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (Π½ΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ ART ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ, ΡΡΠ° ΡΡΠ΅Π΄Π° ΠΏΠΎΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π΄ΠΈΠΈ) Ρ ART Π½Π΅Ρ: Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠΉ ΡΡΠ΅Π΄Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π»ΡΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Π½ΠΎ Π½Π΅ Π²ΠΎ Π²ΡΠ΅Ρ Π΅Π΅ Π°ΡΠΏΠ΅ΠΊΡΠ°Ρ ), Π° Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΎΡΠΎΠ±ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΈΠ»ΠΈ ΠΆΠ΅ Dalvik Π²ΠΏΠ΅ΡΠ΅Π΄ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, ΡΠΎ Π²ΠΎΠΏΡΠ΅ΠΊΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡΠΌ, Dalvik ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π²Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Ρ ART.
ΠΠ±ΡΠΈΠΉ Π²ΡΠ²ΠΎΠ΄ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ΅ΡΡΠΎΠ² β ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎΠΉ ΡΠ°Π·Π½ΠΈΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ ΡΡΠΎ Ρ ART, ΡΡΠΎ Ρ Dalvik Π½Π΅Ρ. ΠΠ΄Π½Π°ΠΊΠΎ, Π½ΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² Π½Π΅ΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅ΡΠ°ΡΡΠ΅ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π² Android 4.5 ΠΈΠ»ΠΈ Android 5 ΡΠ°ΠΊΠ°Ρ ΡΠ°Π·Π½ΠΈΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π°. (ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Google, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ΄Π΅Π»Π°Π΅Ρ ART ΡΡΠ΅Π΄ΠΎΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ).
ΠΡΠ΅ ΠΏΠ°ΡΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ ART Π²ΠΌΠ΅ΡΡΠΎ Dalvik β Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ (ΠΈΠ»ΠΈ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΠΎΠΎΠ±ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ WhatsApp ΠΈ Titanium Backup), Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° Android ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ 10-20 ΠΌΠΈΠ½ΡΡ: ΡΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΠΊΠ»ΡΡΠΈΠ»ΠΈ ART ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡΠ΅ΡΠ° ΠΎΠ½ Π·Π°Π²ΠΈΡ, ΠΆΠ΄ΠΈΡΠ΅.
ΠΠ°ΠΊ Π²ΠΊΠ»ΡΡΠΈΡΡ ART Π½Π° Andro >ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ΅Π΄Ρ ART, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ Android ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡΠ΅Ρ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΠ‘ 4.4.x ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ Snapdragon, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Nexus 5 ΠΈΠ»ΠΈ Nexus 7 2013.
Π‘Π½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π° Android. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, Π·Π°ΠΉΠ΄ΠΈΡΠ΅ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΡΠ½ΠΊΡ Β«Π ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅Β» (Π ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅) ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΡΠ°ΠΏΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ»Ρ Β«ΠΠΎΠΌΠ΅Ρ ΡΠ±ΠΎΡΠΊΠΈΒ», ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΡΠ°Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΏΡΠ½ΠΊΡ Β«ΠΠ»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²Β», Π° ΡΠ°ΠΌ β Β«ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΡΠ΅Π΄ΡΒ», Π³Π΄Π΅ ΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ART Π²ΠΌΠ΅ΡΡΠΎ Dalvik, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅.
Π Π²Π΄ΡΡΠ³ ΠΈ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ:
ΠΠΎΡΠ΅ΠΌΡ Π±Ρ Π½Π΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°ΡΡΡΡ?
Π Π°ΡΡΡΠ»ΠΊΠ° Π½ΠΎΠ²ΡΡ , ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ , ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² ΡΠ°ΠΉΡΠ° remontka.pro. ΠΠΈΠΊΠ°ΠΊΠΎΠΉ ΡΠ΅ΠΊΠ»Π°ΠΌΡ ΠΈ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½Π°Ρ ΠΏΠΎΠΌΠΎΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠ°ΠΌ ΠΎΡ Π°Π²ΡΠΎΡΠ°. ΠΡΡΠ³ΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ (ΠΠ, ΠΠ΄Π½ΠΎΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΈ, Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ, Facebook, Twitter, Youtube, Π―Π½Π΄Π΅ΠΊΡ.ΠΠ·Π΅Π½)
24.12.2015 Π² 14:20
ΠΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° ART ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΈ Π²ΡΠ»Π΅ΡΠ°ΡΡ ΠΈΠ³ΡΡ.
15.01.2016 Π² 18:58
ΠΠΈΠΊΠΎΠ»Π°ΠΉ, ΡΠ΅ΠΉΡΠ°Ρ ΠΏΠΎΠ΄ ART ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡ
01.02.2016 Π² 01:06
ΠΊΠ°ΠΊ Π²ΡΠΉΡΠΈ Ρ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ°? Π²ΠΊΠ»ΡΡΠΈΠ» ART Π°Π½Π΄ΡΠΎΠΈΠ΄ ΡΠ² ΠΏΡΠΈΡΡΠ°Π²ΠΊΠ° ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»Π°ΡΡ ΠΈ Π½Π°Π΄ΠΏΠΈΡΡ Π°Π½Π΄ΡΠΎΠΈΠ΄ Π·Π°Π²ΠΈΡΠ»Π° Π±ΠΎΠ»Π΅Π΅ 2Ρ ΡΠ°ΡΠΎΠ². Π²ΡΠ΄ΡΡΠ³ΠΈΠ²Π°Π» ΠΏΠΈΡΠ°Π½ΠΈΠ΅, Π΄Π΅Π»Π°Π» ΡΠ΅ΡΠ΅Ρ, Π²ΡΡ, Ρ Π°Π½Π° Π΅ΠΉ?
01.02.2016 Π² 09:05
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅. ΠΠΎ Ρ Π°ΡΠ΄-ΡΠ΅ΡΠ΅ΡΡ ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡΡΡ. ΠΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ β ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠ΅ΠΌ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΌ.
01.02.2016 Π² 15:20
ΠΠ½Π° ΠΎΡΠΊΠ»ΡΡΠ°Π΅ΡΡΡ, Π° Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡ, Π²ΠΈΡΠΈΡ Π½Π° Π·Π°ΡΡΠ°Π²ΠΊΠ΅ Π°Π½Π΄ΡΠΎΠΈΠ΄. ΠΠ΅ΡΠ΅ΠΏΡΠΎΡΠΈΠ» Ρ ΡΡΡΠ°, ΡΠ°ΠΊ ΠΈ Π²ΠΈΡΠ΅Π»Π° Π½Π° ΡΡΠΎΠΉ Π½Π°Π΄ΠΏΠΈΡΠΈ Π΄ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ. ΠΠΎΠΊΠ° ΠΈΡΠΊΠ°Π» ΠΊΠ°ΠΊ ΠΏΠΎΡΠΈΠ½ΠΈΡΡ ΠΏΠΎΠΏΠ°Π»ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Ρ ΡΠ΅ΡΠΈΠ²ΡΠΈΠΉ Π²ΠΊΠ»ΡΡΠΈΡΡ ART (ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ Π½Π° 4ΠΏΠ΄Π° ΡΠ°ΠΉΡΠ΅) Π’Π°ΠΊ ΡΡΠΎ ΠΏΡΡΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π½Π°ΡΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄ΡΠ½, Π²ΠΈΠ΄ΠΈΠΌΠΎ Π½Π΅ Π²ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠ΅
10.02.2016 Π² 16:20
ΠΠΎΠ», ΡΠ΅ΡΠΈΠ» ΡΡΠ°ΠΉΠ½ΡΡΡ ΠΠ Π’ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ g3s, Π°ΠΏΠΏΠ°ΡΠ°Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ ΠΈ Π½Π°ΡΠ°Π» ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π» 84 ΠΈΠ· 130, ΠΏΠΎΡΠΎΠΌ Π²ΡΠ±ΠΈΠ»ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠ» ΡΡΠΎ-ΡΠΎ ΠΊΡΠ°ΡΠ½ΡΠ»ΠΎΡΡ ΠΈ ΠΌΠ΅ΡΡΠ° Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ.
ΠΡΠ΅ ΡΠ°Π· ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π» 34 ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²Π΅ΡΠ½ΡΠ»ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π° Dalvik ΠΊ ΡΡΠ°ΡΡΡΡ!
Π― Π΄ΡΠΌΠ°Π» ΠΎΠ½ ΡΠ΅ΠΉΡΠ°Ρ Π·Π°Π²ΠΈΡΠ½Π΅Ρ ΡΠ°ΠΊ Π½Π°Π²Π΅ΠΊΠΈ ΠΈ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ΅ΡΠ΅ΡΡ Π΄ΠΎ Π·Π°Π²ΠΎΠ΄ΡΠΊΠΈΡ
.
21.02.2016 Π² 09:58
ΠΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ Ρ Π΄Π°Π»Π²ΠΈΠΊ Π½Π° Π°ΡΡ fly 4413 Π΅Π²ΠΎ ΡΠΈΠΊ 3 , ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ ΡΠ΅Π» ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΠ»ΠΎ, ΡΠ΅ΡΠ΅Π· Π°Π½ΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ» Π°ΡΡ-19788 Π΄Π°Π»Π²ΠΈΠΊ-19928, ΠΏΠΎ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΈΠ»ΠΈ Ρ Π±ΡΠ» Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±Π΄ΠΈΡΠ΅Π»Π΅Π½. ΠΠΎ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π·ΡΡΠ΄ΠΊΠΈ Π½Π΅ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π». ΠΡΠΎΡ Π΅ΡΠ΅ Π½Π° ΡΠ°ΠΊΠΎΠΌ ΡΠ»Π°Π΅ ΡΠ΅ΡΡΠΈΠ»?
15.04.2016 Π² 13:12
Htc one mini 2 ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ»ΡΡ Π½Π° ΠΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ, ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΡΡΠΊΠ°, ΡΠ΅Π»Π΅ΡΠΎΠ½ ΡΡΠ°Π·Ρ ΠΆΠ΅ Π½Π°ΡΠ°Π» ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ. ΠΏΠΎΡΠ»Π΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° ΠΏΠΎΠ΄Π²ΠΈΡΠ»Π° ΠΌΠΈΠ½ΡΡΡ Π½Π° 3, ΠΏΡΡΠ°Π»ΡΡ Π²ΡΠΊΠ»ΡΡΠΈΡΡ, ΠΆΠ°Π» Π½Π° Π²ΡΠ΅ Π±ΠΎΠΊΠΎΠ²ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΡΠΎΠ±ΡΠ°Π»ΡΡ ΠΏΠ°Π½ΠΈΠΊΠΎΠ²Π°ΡΡ, ΠΊΠ°ΠΊ Π½Π°ΡΠ°Π»Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΠΈ Π½Π°ΠΏΡΡΠΆΠ΅Π½Π½ΡΠ΅ ΡΠ³ΠΎΠ΄ΠΈΡΡ ΠΎΡΠ»Π°Π±Π»ΠΈ, Ρ Π½Π°ΡΠ°Π» ΠΆΠ΄Π°ΡΡ. Π‘ΠΏΡΡΡΡ ΠΌΠΈΠ½ΡΡ 10-15 ΠΏΠΎΡΠ»Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ Π³Π»Π°Π²Π½ΡΠΉ ΡΠΊΡΠ°Π½. Π― Π‘ΡΠ°Π·Ρ Π½Π°ΡΠ°Π» ΡΡΡΠΊΠ°ΡΡ ΠΏΠ°Π»ΡΡΠ΅ΠΌ ΠΊΡΠ΄Π° Π½Π΅ ΠΏΠΎΠΏΠΎΠ΄Ρ ΠΏΡΡΠ°ΡΡΡ ΠΈΡΠΊΠ°ΡΡ ΠΊΠ°ΠΊΠΈΡ Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π’Π΅Π»Π΅ΡΠΎΠ½ Ρ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ΅ΠΊΡΠ½Π΄ Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΏΠΎΠ΄Π²ΠΈΡΠ°Π», Π½ΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΡΡ Π΄Π²ΡΡ ΠΌΠΈΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π». ΠΠΎΡΠΎΡΠ΅ ΡΠ°Π·Π½ΠΈΡΡ ΠΏΠΎΠΊΠ° Π½Π΅ Π²ΠΈΠΆΡ ΠΈ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ. ΠΠ° ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π·Π½Π°Ρ Π·Π°ΡΠ΅ΠΌ Π²ΡΡ ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π», Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΌΠ½Π΅ ΠΏΡΠΎΡΡΠΎ ΠΈΠ·Π²ΠΈΠ½ΠΈΡΠ΅, ΡΡΠΎ Π·ΡΡ ΠΏΠΎΡΡΠ°ΡΠΈΠ» Π²Π°ΡΠ΅ Π²ΡΠ΅ΠΌΡ
16.04.2016 Π² 14:42
ΠΠΊΠ»ΡΡΠΈΠ» Art, ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»ΡΡ.. ΠΠ°ΡΠ°Π» ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.. 139 ΠΈ Π²ΡΠ΅ ΡΠ΄Π°ΡΠ½ΠΎβ¦ ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»Π° ΠΏΠΎΠ»Π½Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ΅Π»Π΅ΡΠΎΠ½ Π½Π°ΡΠ°Π» Π°Π΄ΡΠΊΠΈ ΡΡΠΎΠΈΡΡ.. ΠΠΈΡΠ½ΠΈΡ ΠΈ ΠΊΠ°ΠΊ Π±ΡΠ΄Ρ ΠΌΠΈΠ½ΡΡΠ½ΠΎΠ΅ Π·Π°Π»ΠΈΠΏΠ°Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ, ΠΌΠ°Π»ΠΎ ΡΠΎΠ³ΠΎ, ΡΠ°ΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ°Π»β¦ ΠΠΎΠ±ΡΠ΅ΠΌ Π΅Π»Π΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΠ» Π½Π° davlik
01.10.2016 Π² 10:59
ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ» Π½Π° ART ΡΠ±ΠΎΠ³ΡΡ ΡΡΡΠ±Ρ fly iq4401.
Π Π°Π·Π½ΠΈΡΡ Π² ΡΠΊΠΎΡΠΎΡΡΠΈ Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ», Π° Π²ΠΎΡ ΡΠ°Π·ΡΡΠΆΠ°ΡΡΡΡ ΡΡΠ°Π» Π·Π°ΠΌΠ΅ΡΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅.
01.10.2016 Π² 16:49
ΠΠ΅ Π·Π½Π°Ρ, Π΄Π»Ρ ΡΠ΅Π³ΠΎ Π²Ρ Π½Π° ΡΠ΅Π»Π΅ΡΠΎΠ½Π°Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΠ΅ Π½Π° Π°ΡΡ, Π½Π° Π½ΠΈΡ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΏΠΎΠΊΠ° Π½ΠΈ ΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π½ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ, Π² Π»ΡΡΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, Ρ ΠΌΠ΅Π½Ρ Π½Π° ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅ Π’Π΅ΡΠ»Π° Π½Π΅ΠΎΠ½ 8 Π΅ΡΡΡ ΠΏΡΠΎΠ³Ρ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Ρ ΠΏΠ΅ΡΠ΅ΡΠ΅Π» ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎ, ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠ»Π°Π½ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»Π° Π² ΡΡΠ°ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π½ΠΎΡΠΌΠ΅, Π΄Π°ΠΆΠ΅ Π²ΠΈΠ΄Π½Ρ Π½Π΅ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ, ΠΏΡΠΈ Π²ΡΡ ΠΎΠ΄Π΅ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ, ΡΠ°Π±ΠΎΡΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π½ΠΎ Π±ΡΡΡΡΠ΅Π΅, ΠΈΠ³ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Π°, ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΈ Π²ΡΠ»Π΅ΡΠ°ΡΡ , Π° Π² ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΌ, Π·Π°ΡΡΠ΄ΠΊΡ Π΄Π΅ΡΠΆΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅.
24.12.2016 Π² 19:28
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π°ΠΏΠΏΠ°ΡΠ°Ρ lenovo s850, ΡΠ΄Π΅Π»Π°Π» Π·Π°ΠΊΠ°Π· Π½Π° root, Π²ΡΡΠ°Π»ΠΈ ΠΎΡΠ»ΠΈΡΠ½ΠΎ, Π½ΠΎ Ρ dav ΡΠ΅Π»Π΅ΡΠΎΠ½ ΡΡΠ°Π» ΡΠΎΡΠΌΠΎΠ·ΠΎΠΌ Π½ΠΎΠΌΠ΅Ρ ΠΎΠ΄ΠΈΠ½, ΠΏΠ΅ΡΠ΅ΡΠ΅Π» art, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΅ΡΡΡ, Π½Π΅Ρ Π»Π°Π³ΠΎΠ² Π² ΡΠ°Π±ΠΎΡΠ΅, ΡΠΆΠ°ΡΠ½ΡΡ ΠΏΠΎΠ΄Π²ΠΈΡΠ°Π½ΠΈΠΉ.
25.01.2017 Π² 15:57
ΠΊΠ°ΠΊ Π²ΡΠΉΡΠΈ Ρ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ°? Π²ΠΊΠ»ΡΡΠΈΠ» ART Π°Π½Π΄ΡΠΎΠΈΠ΄ ΡΠΌΠ°ΡΡΡΠΎΠ½Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠ»Π°ΡΡ ΠΈ Π½Π°Π΄ΠΏΠΈΡΡ Π°Π½Π΄ΡΠΎΠΈΠ΄ Π·Π°Π²ΠΈΡΠ»Π° Π±ΠΎΠ»Π΅Π΅ 6ΡΠΈ ΡΠ°ΡΠΎΠ². Π²ΡΠ΄ΡΡΠ³ΠΈΠ²Π°Π» ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠΌΠΎΠ³ΠΈΡΠ΅
16.02.2017 Π² 23:19
ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π‘Π½Π΅ΠΏΠ΄ΡΠ°Π³ΠΎΠ½Π΅, Ρ ΠΌΠ΅Π½Ρ ΠΏΡΠΎΡ ΠΠ’Π ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΠ Π’ ΠΊΠ°ΠΊΠΈΡ ΡΡΠΏΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ Π΄Π°Π». Π’Π°ΠΊ ΡΡΠΎ ΠΎΡΡΠ°Π»ΡΡ Π½Π° ΠΠ°Π»Π²ΠΈΠΊΠ΅.
17.02.2017 Π² 09:26
ΠΡ ΡΡΠ°ΡΡΡ ΠΏΠΈΡΠ°Π»Π°ΡΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ Π»Π΅Ρ Π½Π°Π·Π°Π΄ ΡΠΆΠ΅. Π’Π°ΠΊ ΡΡΠΎ Π΄Π°, ΡΠ΅ΠΉΡΠ°Ρ ΠΈ Π½Π° MTK ΠΌΠΎΠΆΠ½ΠΎ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΏΠΎΡΠ»Π΅ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎΠ½ Π½Π΅ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΡΠ°Π·Ρ. ΠΡΡ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ β Π²Π°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎ. ΠΡΠ²Π΅ΡΡ Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΈΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ Π΄Π½ΡΠΌ, ΠΈΠ½ΠΎΠ³Π΄Π° ΡΠ°ΡΠ΅. ΠΠΎΠ·Π²ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ.
Π£ΡΠΎΠ²Π΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ: Π΄Π»Ρ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΡ . Π Π±ΡΠ΄ΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ Android, Π±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ΅ΠΉΡΠ°Ρ Π²ΡΠΏΡΡΠ΅Π½Π° Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΠ²ΡΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Android L, ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Google ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌΠ΅Π½ΠΈΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ Dalvik Π½Π° ART. ΠΠ»Π°Π²Π½Π°Ρ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π² ΡΡΠ΅Π΄Π΅ Dalvik ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ (ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ) ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅, Π° Π² ΡΡΠ΅Π΄Π΅ ART ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· β ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»Π΅ Π³Π°Π΄ΠΆΠ΅ΡΠ° ΠΈ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ, Π½Π΅ΡΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ β ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΡΠ΅Π΄Π΅ ART Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ Π² ΡΡΠ΅Π΄Π΅ Dalvik.
ΠΡΡΠ³ΠΈΠΌ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΡΠ΅Π΄Ρ ART ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ 64-Π±ΠΈΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Dalvik ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ 32-Π±ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ, ΡΡΠΎ ΠΈ ΡΠ΄Π΅Π»Π°Π»ΠΎ ΠΎΡΠΊΠ°Π· ΠΎΡ Π½Π΅Π³ΠΎ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΡΠΌ. ΠΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΎ ΡΠ΅ΠΎΡΠΈΠΈ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ART ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² Android L, ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ΅Π΄Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΆΠ΅ ΡΠ΅ΠΉΡΠ°Ρ Π½Π° ΡΠΌΠ°ΡΡΡΠΎΠ½Π°Ρ Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ Android 4.4 KitKat, Ρ ΠΎΡΡ ΠΈ Π½Π΅ Π²ΡΠ΅ΠΌ ΠΎΠ± ΡΡΠΎΠΌ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ.
Π Π²Π΅ΡΡΠΈΠΈ Android 4.4 ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ART ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Π°ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½ΠΊΠΈ ΠΎΡ Google, ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½Π°Ρ Π½ΠΈΠΆΠ΅, ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°ΡΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ART Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π½Π° ΡΠ°ΠΊΠΈΡ ΡΠΌΠ°ΡΡΡΠΎΠ½Π°Ρ , ΠΊΠ°ΠΊ Samsung Galaxy S5, HTC M8, LG G3, Π° ΡΠ°ΠΊΠΆΠ΅ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΡΡΡΠΎΠΉΡΡΠ² Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ»ΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΊΠ°ΠΌΠΈ Π½Π° Π±Π°Π·Π΅ AOSP.
ΠΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ ART Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ:
- ΠΡΠΊΡΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²Π½ΠΈΠ· (Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π³Π°Π΄ΠΆΠ΅ΡΠ°Ρ , Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° Π΄ΡΡΠ³ΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ βΠ²ΡΠ΅β ΠΈΠ»ΠΈ βΠΎΠ±ΡΠΈΠ΅β).
- ΠΡΠΊΡΡΡΡ ΡΠ°Π·Π΄Π΅Π» βΠΠ± ΡΡΡΡΠΎΠΉΡΡΠ²Π΅β ΠΈ ΡΠ΅ΠΌΡ ΡΠ°Π· Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΏΡΠ½ΠΊΡ βΠΠΎΠΌΠ΅Ρ ΡΠ±ΠΎΡΠΊΠΈβ.
- ΠΠΎΡΠ»Π΅ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΡΡΠΏΠ΅ΡΠ½ΠΎΠΌ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, Π²Π΅ΡΠ½ΡΡΡΡΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ Π·Π°ΠΉΡΠΈ Π² ΠΏΠΎΡΠ²ΠΈΠ²ΡΠΈΠΉΡΡ ΡΠ°Π·Π΄Π΅Π».
- ΠΡΠ±ΡΠ°ΡΡ ΠΏΡΠ½ΠΊΡ βΠ‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡβ ΠΈ, ΡΠ°ΠΏΠ½ΡΡΡ ΠΏΠΎ ΠΏΡΠ½ΠΊΡΡ βΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ARTβ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π΅ΡΡ ΡΠ°Π· ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ ΡΠ²ΠΎΠΈ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠ΅ΠΌ ΠΎΠΊΠ½Π΅.
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π²Π°ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΡΡ, ΠΏΡΠΈΡΡΠΌ ΡΡΠ° ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ°, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ 10-20 ΠΌΠΈΠ½ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΡΡΠΎΠΉΡΡΠ²Ρ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ Π½Π° ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΡΠΌΠ°ΡΡΡΠΎΠ½ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΡΠ΅Ρ ΠΊ Π·Π°ΡΡΠ΄Π½ΠΎΠΌΡ ΡΡΡΡΠΎΠΉΡΡΠ²Ρ.
ΠΠΎΠ³Π΄Π° ΡΠΌΠ°ΡΡΡΠΎΠ½ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡΡ Π΄ΠΎ ΡΠΊΡΠ°Π½Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠ΅Π»ΠΎ Π±ΡΠ°ΡΡ Π³Π°Π΄ΠΆΠ΅Ρ Π² ΡΡΠΊΠΈ ΠΈ Π½Π°ΡΠ»Π°ΠΆΠ΄Π°ΡΡΡΡ Π²ΠΎΠ·ΡΠΎΡΡΠ΅ΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΡΡΠΎ ΠΎΡΠΎΠ±ΠΎ Π·Π°ΠΌΠ΅ΡΠ½ΠΎ Π½Π° ΠΌΠ°Π»ΠΎΠΌΠΎΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . ΠΡ Π° Π΅ΡΠ»ΠΈ ART ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π²Π°Ρ Π½Π΅ ΡΡΡΡΠΎΠΈΠ» (Π° Π² ΡΡΠ½ΠΊΡΠΈΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΌΠΎΠ³ΡΡ ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π±Π°Π³ΠΈ), ΡΠΎ Π²Ρ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π΅ΡΠ½ΡΡΡΡΡ Π½Π° Dalvik ΠΏΠΎ ΡΡΠΎΠΉ ΠΆΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ.
Android ΠΈΠ·Π½ΡΡΡΠΈ: ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Dalvik ΠΈ ART
ΠΡΠΈΠ²Π΅Ρ, Π₯Π°Π±Ρ! ΠΠΊΠΎΠ»ΠΎ ΠΏΠΎΠ»ΡΠ³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ Ρ ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ Β«Π³Π°ΠΉΠ΄Β» ΠΏΠΎ JVM. ΠΠΎΡΡ, Π² ΡΠ΅Π»ΠΎΠΌ, Π·Π°ΡΠ΅Π», Π° Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΡΠΏΡΠΎΡΠΈΠ»ΠΈ, Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π»ΠΈ βΡΠ΅Π³ΠΎ-ΡΠΎ ΠΏΠΎ Π°Π½Π΄ΡΠΎΠΈΠ΄Ρβ. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Ρ ΠΌΠ΅Π½Ρ Π΄ΠΎΡΠ»ΠΈ ΡΡΠΊΠΈ.Π ΡΡΠΎΠΌ ΠΏΠΎΡΡΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΡΠ΅Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² Android. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Ρ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΊΡΠ°ΡΠΊΠΎ, Π½ΠΎ Π΅ΠΌΠΊΠΎ ΠΈΠ·Π»ΠΎΠΆΠΈΡΡ, ΡΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ART ΠΈ Dalvik, ΠΈ ΠΊΠ°ΠΊ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΡΠ»ΡΡΡΠΈΠ»ΠΈΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² Android. Π’Π΅ΠΌΠ° ΡΠ²Π½ΠΎ Π½Π΅ Π½ΠΎΠ²Π°Ρ, Π½ΠΎ, Π½Π°Π΄Π΅ΡΡΡ, ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΊΡΡΠ°ΡΠΈ ΡΠ΅ΠΌ, ΠΊΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π²Π½ΠΈΠΊΠ°ΡΡ. ΠΠΎΠΌΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ β Π΄ΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ ΠΊΠ°Ρ.
ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°
Π‘Π½Π°ΡΠ°Π»Π°, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ ΡΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ JVM ΠΎΡ DVM.
Java Virtual Machine β Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΡΠΏΠΎΡΠΎΠ±Π½Π°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Java Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΠ½Π° ΠΎΠΏΠΈΡΠ°Π΅ΡΡΡ Π½Π° ΠΏΡΠΈΠ½ΡΠΈΠΏ βWrite once, run anywhereβ. ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ Java ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½ Π½Π° Π»ΡΠ±ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅, ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ JVM.
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Java ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ .java ΡΠ°ΠΉΠ»Ρ Π² class-ΡΠ°ΠΉΠ»Ρ (Π±Π°ΠΉΡ-ΠΊΠΎΠ΄). ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ JVM, ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° CPU.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ JVM:
- ΠΠΌΠ΅Π΅Ρ ΡΡΠ΅ΠΊΠΎΠ²ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ: Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΊΡΠ΄Π° ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ΅ΠΊ. ΠΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΡ Π΅ΠΌΠ΅ LIFO ΠΈΠ»ΠΈ βLast in β First Outβ ΠΈΠ»ΠΈ βΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Π²ΠΎΡΠ΅Π», ΠΏΠ΅ΡΠ²ΡΠΌ Π²ΡΡΠ΅Π»β.
- ΠΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ class-ΡΠ°ΠΉΠ»Ρ.
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ.
Dalvik Virtual Machine (DVM) β Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ Java ΠΌΠ°ΡΠΈΠ½Π°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½Π°Ρ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ ΠΡΠ½ΠΎΠΌ ΠΠΎΡΠ½ΡΡΠ΅ΠΉΠ½ΠΎΠΌ (Π°Π½Π³Π». Dan Bornstein) ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Android.
ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Dalvik β ΡΡΠΎ ΡΡΠ΅Π΄Π° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Android ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΡΠ²ΠΎΡΠΌ, ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅. ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π»ΠΈΠ±ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ²ΠΎΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²), ΡΠ΄ΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik (Zygote Dalvik VM) ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ, Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π² ΠΎΠ±ΡΠ΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ VM, ΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΈΠ·Π½ΡΡΡΠΈ Android Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Dalvik, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ DVM:
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²: ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΠΊΡΠ΄Π° ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΠ° ΡΡΠ΅Ρ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ POP ΠΈ PUSH, ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΡΡΠ΅ΠΊΠΎΠ²ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ.
- ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠ°: Android dexer (ΠΎ Π½Π΅ΠΌ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½ΠΈΠΆΠ΅) ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ class-ΡΠ°ΠΉΠ»Ρ Π² ΡΠΎΡΠΌΠ°Ρ .dex, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π° Dalvik VM. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ class-ΡΠ°ΠΉΠ»Π°, dex-ΡΠ°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ².
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ± Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ DVM ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ.
Android Dexer
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Android Π·Π½Π°ΡΡ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Java Π±Π°ΠΉΡΠΊΠΎΠ΄Π° Π² .dex Π±Π°ΠΉΡΠΊΠΎΠ΄ Π΄Π»Ρ Android Runtime ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ°Π³ΠΎΠΌ Π² ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ APK. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ dex Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ βΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌβ Π² ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΠΎΠ½ Π½Π°ΠΏΡΡΠΌΡΡ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π²ΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π° ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° .dex ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠ°ΠΊ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ, ΡΠ°ΠΌ dex-ΡΠ°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ ΠΊΠ»Π°ΡΡΠΎΠ², Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΠΌΠ΅ΡΡΠ°. ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ Java ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ DVM. ΠΠ΅ΡΠΆΠ°ΡΡΠΉ dex-ΡΠ°ΠΉΠ» ΠΎΠ±ΡΡΠ½ΠΎ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ² ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ, ΡΠ΅ΠΌ ΡΠΆΠ°ΡΡΠΉ Π°ΡΡ ΠΈΠ² Java (JAR), ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΈΠ· ΡΠ΅Ρ ΠΆΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² .class.
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ, class-ΡΠ°ΠΉΠ»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°Π»ΠΈΡΡ Π² dex-ΡΠ°ΠΉΠ»Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ DX-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠΎ Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android Studio 3.1 ΠΈ Π΄Π°Π»Π΅Π΅, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΠ°Π» D8. ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ DX-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ, D8 ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π±ΡΡΡΡΠ΅Π΅ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ dex-ΡΠ°ΠΉΠ»Ρ ΠΌΠ΅Π½ΡΡΠΈΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ dex ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π°Π΅ΡΡΡ ΠΌΠΈΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ open-source ΡΡΠΈΠ»ΠΈΡΡ ProGuard. Π ΠΈΡΠΎΠ³Π΅, ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΎΡ ΠΆΠ΅ dex-ΡΠ°ΠΉΠ», Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅Π½ΡΡΠ΅. ΠΠ°Π»Π΅Π΅ ΡΡΠΎΡ dex-ΡΠ°ΠΉΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ apk ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π΄Π»Ρ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Android.
ΠΠΎ ΡΠ»Π΅Π΄ΠΎΠΌ Π·Π° D8 Π² 2018 Π³ΠΎΠ΄Ρ ΠΏΡΠΈΡΠ΅Π» R8, ΠΊΠΎΡΠΎΡΡΠΉ, ΠΏΠΎ ΡΡΡΠΈ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΠΌ ΠΆΠ΅ D8, ΡΠΎΠ»ΡΠΊΠΎ Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌΠΈ.
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Android Studio 3.4 ΠΈ Android Gradle 3.4.0 plugin ΠΈΠ»ΠΈ Π²ΡΡΠ΅, Proguard Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Ρ R8, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Code shrinking, Optimisation ΠΈ Obfuscation. Π₯ΠΎΡΡ R8 ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Proguard, ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Java Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° Π² dex-Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Π΅Π΄ΠΈΠ½ΠΎΡΠ°Π·ΠΎΠ²ΠΎ, ΡΡΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ.
R8 ΠΈ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Jetpack, Gson, Google Play Services. ΠΠΎΠ³Π΄Π° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΠ°ΡΡΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ°Π»Π°Ρ ΡΠ°ΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ΅Π· Code shrinking, Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
ΠΡΠ²Π°Π΅Ρ ΡΠ°ΠΊ, ΡΡΠΎ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΠΊΠΎΠ΄. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π·Π½Π°ΡΠΈΠΌΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΡΠ°Π±Π»ΠΎΠ½ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠΌ Π±ΡΠ»ΠΎ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΠΊΠΎΠ΄Π΅. ΠΠΎ ΡΠ°Π±Π»ΠΎΠ½Ρ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ Π±ΠΠ»ΡΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΊΠΎΠ΄Π°, ΡΠ΅ΠΌ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ.
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ R8 ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ. ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°ΠΆΠ΅ ΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Π½ΠΈΠΆΠ΅ ΠΏΡΠ΅Π²Π΅Π΄Π΅Π½Ρ ΡΠΈΡΡΡ ΠΈΠ· Π΄ΠΎΠΊΠ»Π°Π΄Π° Shrinking Your App with R8, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ Π½Π° Android Dev Summit ’19:
Π Π²ΠΎΡ ΡΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄Π΅Π»ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ R8 Π½Π° ΡΡΠ°ΠΏΠ΅ Π²ΡΠΏΡΡΠΊΠ° Π±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΠΈ (Π²Π·ΡΡΠΎ ΠΈΠ· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° Android Developers Blog):
ΠΠ΅ΡΠ°Π»ΡΠ½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Π² ΠΎΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄Π΅.
ART vs DVM Π² Android
DVM Π±ΡΠ»Π° ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ ΠΊΠ°ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ
ΠΌΠ°ΡΠΈΠ½Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π°Π½Π΄ΡΠΎΠΈΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ Android 4.4 Kitkat.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ART Π±ΡΠ» ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π° Π² Android 5.0 (Lollipop) ART ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΠ» Dalvik.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΠ²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ART ΠΎΡ DVM ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, Π° DVM β JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ. ΠΠ΅ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ ART Π½Π°ΡΠ°Π» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³ΠΈΠ±ΡΠΈΠ΄ AOT ΠΈ JIT. ΠΠ°Π»Π΅Π΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΡΡΠΎ ΡΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅.
DVM
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ: Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π· ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ,
- ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΡΠ° ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- Π£ΡΠΊΠΎΡΡΠ΅Ρ Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π½Π° DVM, ΡΡΠ΅Π±ΡΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ΅ΠΌ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ART.
- Π£ΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΡΠ΅Π·Π΅ΡΠ² Π±Π°ΡΠ°ΡΠ΅ΠΈ, ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° CPU.
- Dalvik ΡΠ²Π»ΡΠ΅ΡΡΡ βΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌβ ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° Π°Π½Π΄ΡΠΎΠΈΠ΄ Π²Π΅ΡΡΠΈΡΡ Π²ΡΡΠ΅ 4.4.
ART
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, ΡΠΎ Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ ΡΡΠΊΠΎΡΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- ΠΠ°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ΅Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ.
- ΠΠ²ΠΈΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΈ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π½Π° DVM.
- Π£Π²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π·Π΅ΡΠ² Π±Π°ΡΠ°ΡΠ΅ΠΈ, ΡΠΎΠΊΡΠ°ΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈΠ·-Π·Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
- Π£Π»ΡΡΡΠ΅Π½Π½Π°Ρ Garbage Collection ΠΈΠ»ΠΈ ΡΠ±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ°. ΠΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Dalvik, ΡΠ±ΠΎΡΡΠΈΠΊΠΈ ΠΌΡΡΠΎΡΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ 2 ΠΏΡΠΎΡ ΠΎΠ΄Π° ΠΏΠΎ ΠΊΡΡΠ΅ (heap), ΡΡΠΎ ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΎ ΠΊ ΠΏΠ»ΠΎΡ ΠΎΠΌΡ UX. Π ΡΠ»ΡΡΠ°Π΅ Ρ ART, ΡΠ°ΠΊΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π½Π΅Ρ: ΠΎΠ½ ΡΠΈΡΡΠΈΡ ΠΊΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈΠ΄Π°ΡΠΈΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
Π Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΡ
Π΅ΠΌΠ° Dalvik vs ART:
JIT + AOT Π² ART
Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android (ART), Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android 7, Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ JIT Ρ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π°. JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅ ΠΈ ΡΡΠΊΠΎΡΡΠ΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΡΠΎ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡ Π΅ΠΌΠ΅:
ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΎΠ½ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ (ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² Android < 5.0), Π½ΠΎ ΡΠ»Π΅Π΄ΠΈΡ Π·Π° ΡΠ΅ΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΠ°ΡΡΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ. ΠΠ°ΡΠ΅ΠΌ ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ
ΡΡΠ°ΡΡΠΊΠΎΠ² ΠΊΠΎΠ΄Π°. ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π±Π΅Π·Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΌΠ°ΡΡΡΠΎΠ½Π°, Π½Π°Ρ
ΠΎΠ΄ΡΡΠ΅Π³ΠΎΡΡ Π½Π° Π·Π°ΡΡΠ΄ΠΊΠ΅.
ΠΠΎΠ²ΠΎΡΡ ΠΏΡΠΎΡΡΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΡΠ΅ΠΏΠ΅ΡΡ Π΄Π²Π° ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π½ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ°, ΡΡΠΎ Π΄Π°Π΅Ρ ΡΠ²ΠΎΠΈ ΠΏΠ»ΡΡΡ:
- Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ β ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈΠΌΠ΅Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ·Π½Π°ΡΡ ΠΎ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·, ΠΈ, ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ;
- ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ β Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½Π΅Π΅ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π° Π΅ΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΡΠ°ΡΡΠΊΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠ·Π΅Ρ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ NAND-ΠΏΠ°ΠΌΡΡΠΈ;
- ΡΠ΅Π·ΠΊΠΎΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ β Π½Π΅Ρ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π½Π΅Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ.
Π ΡΠ΅Π»Π°Π·Π°ΡΠΈΠΈ JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π² ART ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΠΎΡΡΠ°ΡΠ°Π»ΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ Dalvik ΠΎΡ ART, ΠΈ Π² ΡΠ΅Π»ΠΎΠΌ Π²Π·Π³Π»ΡΠ½ΡΡΡ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Android ΡΠ»ΡΡΡΠ°Π» ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ART Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΠ°Π΄ΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ: Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠΈΡΠΈ, ΡΡΠΎΠ±Ρ ΡΠ»ΡΡΡΠΈΡΡ ΠΎΠΏΡΡ ΠΊΠ°ΠΊ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
ΠΡΠ»ΠΈ Π±ΡΠ»ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ β Π΄Π°ΠΉΡΠ΅ Π·Π½Π°ΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°Ρ .
ΠΠ°ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΡΠΎ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ dalvik Π½Π° art?
Π£ Dalvik Π² KitKat ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ ART. ΠΡΠ°ΠΊ, ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅, ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΆΠ΄ΡΡ Android ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² ΡΠΊΠΎΡΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ART (Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΠ° ΡΠ΅ΡΠΌΠΈΠ½Π° «Android Runtime») — ΡΡΠΎ Π½ΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ Π½Π° C/C++, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π² Android Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik ΡΠ΅ΠΌ, ΡΡΠΎ Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΆΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Ρ, Π° Π·Π½Π°ΡΠΈΡ, ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡ Π² JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅ ΠΎΡΠΏΠ°Π΄Π°Π΅Ρ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ART ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ°Π·Π½ΠΎΠΌ ΠΆΠ΅Π»Π΅Π·Π΅ (wiz. ARM,x86) Π±Π΅Π· ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π°Π΄Π°ΠΏΡΠ°ΡΠΈΠΈ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΠΎΠΌΠΈΠΌΠΎ ΡΡΠΎΠ³ΠΎ Π½Π° Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Π½ΠΎΠ²ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΡΡ ΠΎΠ΄ΠΈΡ Π² Π΄Π²Π° ΡΠ°Π·Π° ΠΌΠ΅Π½ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ΅ ΠΎΠ±ΠΎΡΠ»ΠΎΡΡ ΠΈ Π±Π΅Π· Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠ², ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΠ²ΡΠ·Π°Π½ Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Π² ΡΡΠ»ΠΎΠ²ΠΈΡΡ ART. ΠΠ°Π½Π½Π°Ρ ΡΡΠ΅Π΄Π° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π²ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ·ΡΠΊ Π΅ΡΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ), Π° ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΈΠ·-Π·Π° ΡΠ΅Π³ΠΎ Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΎΡΠ΅Π½Ρ ΡΠΈΠ»ΡΠ½ΠΎ ΡΠ°ΡΡΡΠ³ΠΈΠ²Π°Π΅ΡΡΡ, Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΡΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Ρ. Π₯ΠΎΡΡ ART ΠΈ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² Android 4.4 KitKat, Π½ΠΎ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik. ART ΠΆΠ΅ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΡΠ°Π΄ΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π½ΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΆΠ΅Π»Π°ΡΡΠΈΠΉ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ: Settings -> Developer options -> Select runtime.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡ Π½ΠΎΠ²ΡΡ ΡΡΠ΅Π΄Ρ, ΡΠΎ Π½Π΅ ΡΡΠΎΠΈΡ Π·Π°Π±ΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΏΠ΅ΡΠ²Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ΄Π»ΠΈΡΡΡΡ Π΄ΠΎ 20 ΠΌΠΈΠ½ΡΡ, Π° ΡΠΎ ΠΈ Π±ΠΎΠ»ΡΡΠ΅: ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π½ΠΎΠ²ΡΠΌ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°ΠΌ ΡΠ°Π±ΠΎΡΡ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° libdvm.so Π±ΡΠ΄ΡΡ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° libart.so, Π° ΡΠ°ΠΉΠ»Ρ ODEX Π½Π° OAT. ΠΡΠΌΠ΅ΡΡΡΠ΅ ΡΠ΅Π±Π΅, ΡΡΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ Π½Π° ART Π² ΡΠ»ΡΡΠ°Π΅ Ρ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠΌΠΈ ROMβΠ°ΠΌΠΈ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΡ Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ Gapps ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ, Π²ΡΠ»Π΅ΡΠ°ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΡΠ΄Π΅Π»Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² Android 4.4 KitKat ΠΌΡ ΠΈΠΌΠ΅Π΅ΠΌ Π΄Π΅Π»ΠΎ Π»ΠΈΡΡ Ρ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΎΠΌ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠΎ Π΄Π΅Π»Π°ΡΡ Π²ΡΠ²ΠΎΠ΄Ρ, ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠ½ΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ², ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ°Π½ΠΎ. ART Π΅ΡΠ΅ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π½Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π°, Π½ΠΎ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π² Π½ΠΎΠ²ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΡΡΡΡΡΠ΅Π΅, Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΡΡΠ°Π½Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ»Π°Π²Π½ΠΎΠΉ, Π° ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΠΏΡΠΈΠΊΠΎΡΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΊ ΡΠ°ΡΡΠΊΡΠΈΠ½Ρ ΡΠ»ΡΡΡΠΈΡΡΡ. ΠΠΎΠΌΠΈΠΌΠΎ ΡΡΠΎΠ³ΠΎ ART ΡΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ: Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π»ΠΈΡΡ ΡΠ°ΡΡΡ ΡΠ΄Π΅Ρ. ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ARM Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ big.LITTLE, Π° Π·Π½Π°ΡΠΈΡ, ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ Android ΡΡΡΡΠΎΠΉΡΡΠ² ΡΠ΄Π°ΡΡΡΡ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ, Π° Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ — ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ART Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π΄Π²Π° Π±Π΅ΠΊΠ΅Π½Π΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠ°ΠΊ ΠΏΠ΅ΡΠ²ΡΠΉ, ΡΠ°ΠΊ ΠΈ Π²ΡΠΎΡΠΎΠΉ — ΡΡΠΎ AOT (Ahead-of-Time) ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ, ΠΏΡΠΈΡΠ΅ΠΌ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ GCC, cl.exe (LLVM ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ).
ΠΠ°ΠΊ Π½ΠΈ ΡΡΡΠ°Π½Π½ΠΎ, Π½ΠΎ Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ART Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΡΠ°Π·ΠΈΡΡΡΡ. Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ° Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ΅Π΄Ρ ΡΠ°ΠΊΠΎΠ²Π°, ΡΡΠΎ ART ΡΠΈΡΠ°Π΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Π΄Π»Ρ Dalvik, Π° Π·Π½Π°ΡΠΈΡ, Π½ΠΎΠ²ΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΈ ΡΠΌΠ΅Π½ΠΈΡ Π΄ΠΎΠ±ΡΠ²Π°ΡΡ Π½Π΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ. Π Π°Π±ΠΎΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Π²ΡΠ΅ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ Java Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ΠΎΠΌ. Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ Ρ AOT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ: ΠΎΡΠΈΠ±ΠΊΠΈ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΠ΅ Π½Π° ΡΠ°Π·Π½ΠΎΠΌ ΠΆΠ΅Π»Π΅Π·Π΅. Π ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π±ΠΎΠ»ΡΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ Android ΡΡΡΡΠΎΠΉΡΡΠ². ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΡ, Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ART ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π° Π»ΡΠ±ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Ρ LLVM ΡΡΠΎΠ½ΡΡΠ½Π΄ΠΎΠΌ. ΠΡΠ΄Π΅Π»ΡΠ½ΠΎ ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠΌΡ ΠΊΠΎΠ΄Ρ: Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π±ΡΠ΄Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ, Π½ΠΎ Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Π½Π΅ΡΡΠΈ Π²ΡΠ΅Π΄ Android ΡΡΡΡΠΎΠΉΡΡΠ²Ρ. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π²Π°ΠΆΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ²ΡΠ·Π°Π½ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ JNI — ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠ΄Π° ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Java, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ²ΡΠ·Π°Π½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ART ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Android ΡΡΡΡΠΎΠΉΡΡΠ² Π²ΠΎΠ·ΡΠ°ΡΡΠ΅Ρ, Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π»Π°Π³ΠΎΠ² ΡΠΌΠ΅Π½ΡΡΠΈΡΡΡ.. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ Dalvik ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ART Dalvik Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π°Ρ, ΠΊΠ°ΠΊ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ. JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ — ΡΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, Π° Π·Π½Π°ΡΠΈΡ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π³ΠΎΠ»ΠΎΠ²Π½Π°Ρ Π±ΠΎΠ»Ρ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ART ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Dalvik Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ
ΠΠΎΠ»Π΅Π΅ ΠΏΡΠΈΡΡΠ°Π»ΡΠ½ΡΠΉ Π²Π·Π³Π»ΡΠ΄ Π½Π° ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android: DVM ΠΏΡΠΎΡΠΈΠ² ART | ΠΠ½ΠΊΠΈΡ Π‘ΠΈΠ½Ρ Π°Π» | AndroidPub
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΊ Android Runtime, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ½ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π±Π°Π·ΠΎΠ²ΡΠ΅ Π²Π΅ΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ JVM ΠΈ Dalvik VM.
ΠΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°Π±ΠΎΡΠΈΡΡΡ ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΏΠΈΡΠ΅ΡΠ΅ Π½Π° ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΡΠ°ΠΊΠΎΠΌ ΠΊΠ°ΠΊ Java, Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ / ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ.
Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ, ΠΏΠΎ ΡΡΡΠΈ, Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΡΡΡΡ ΠΊΠΎΠ΄Π° ΡΡΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
Π¦Π ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡΠΈΠΉ ΡΠ΅ΡΠΌΠΈΠ½: Π½Π°ΡΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΡΠ·ΡΠΊ (Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ), ΠΏΠΎΡΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π» Π½Π° Π¦Π, ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄, ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠΎΠΌ.
ΠΡΠ°ΠΊ, ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡΠ° Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ —
1. ΠΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ:ΠΠ½ Π½Π°ΠΏΡΡΠΌΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡ ΠΊΠΎΠ΄Ρ ΡΠ±ΠΎΡΠΊΠΈ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠ΄Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎ.
2. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ:ΠΠ½ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡ ΠΊΠΎΠ΄ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΠΊΠΎΠ΄Π° Π² Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ.ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π±ΡΠ»ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΌ, Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π±ΡΡΡΡΡΠΌ. ΠΠΎ ΡΠ°ΠΌΠ°Ρ Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΊΠΎΠ΄, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅, ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅.
3. ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠΈ:ΠΠ½ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡ ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΌ.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΊΠΎΠ΄Π° ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, JAVA ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»Π° JVM i.Π΅. ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Java. ΠΠ½ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π» JVM, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠΉ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ JVM Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Java ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ .java Π² ΡΠ°ΠΉΠ»Ρ .class, ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π±Π°ΠΉΡΠΎΠ²ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΡΠΎΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ JVM, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π΅Π³ΠΎ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄.
ΠΡΠΎ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡ, Π½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ C ++.
Π Android ΠΊΠ»Π°ΡΡΡ Java ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Ρ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ DEX. Π€ΠΎΡΠΌΠ°Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° DEX ΡΡΠ°Π½ΡΠ»ΠΈΡΡΠ΅ΡΡΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ΅ΡΠ΅Π· ART ΠΈΠ»ΠΈ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Dalvik.ΠΠ΄Π΅ΡΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ DEX Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
Dalvik — ΡΡΠΎ Π΄Π²ΠΈΠΆΠΎΠΊ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ JIT (Just in time) ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. Π£ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Dalvik Π±ΡΠ»ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Android 4.4 (kitkat) ART Π±ΡΠ» ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π° Ρ Android 5.0 (Lollipop) ΠΎΠ½ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΠ» Dalvik. Android 7.0 Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Ρ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π° Π² ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android (ART), ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ»ΡΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΠΈΡ Π·Π°ΠΏΡΡΠΊΠ°.
ΠΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ: Dalvik ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ JIT (ΡΠΎΡΠ½ΠΎ Π² ΡΡΠΎΠΊ), ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ AOT (ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°Ρ Π²ΡΠ΅ΠΌΡ).
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π°, ΠΎΠ±ΡΡΡΠ½ΡΡΡΠΈΠΉ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ Dalvik ΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ Java.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Dalvik ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ½ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡ ΡΠ°ΡΡΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° Dalvik Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄. ΠΠΎ ΠΌΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΠΈ ΠΊΡΡΠΈΡΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ JIT ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π°, ΠΎΠ½ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅.
ART ΠΎΡΠ½Π°ΡΠ΅Π½ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ Ahead-of-Time.ΠΠ° ΡΡΠ°ΠΏΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ DEX Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π΅Π³ΠΎ Π² ΠΏΠ°ΠΌΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΡΠΎ ΡΠ°Π·ΠΎΠ²ΠΎΠ΅ ΡΠΎΠ±ΡΡΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅. ΠΠ΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΡΡΡΠ΅Π΅.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ART Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΏΡΡΠΌΡΡ (ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅), ΠΎΠ½ Π½Π΅ ΡΠ°ΠΊ ΡΠΈΠ»ΡΠ½ΠΎ Π½Π°Π³ΡΡΠΆΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, ΠΊΠ°ΠΊ ΡΠ²ΠΎΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠΎΠ΄Π° Π² Dalvik. ΠΠ·-Π·Π° ΠΌΠ΅Π½ΡΡΠ΅ΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π¦Π ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΌΠ΅Π½ΡΡΠ°Ρ ΡΠ°Π·ΡΡΠ΄ΠΊΠ° Π±Π°ΡΠ°ΡΠ΅ΠΈ.
ART ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΡ ΠΆΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ DEX Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄Π»Ρ Dalvik.ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ART, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ, ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ°ΠΉΠ»ΠΎΠ² APK, ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Android. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°:
Β· ΠΠΎΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΠ‘. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ΄ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ΄, ΡΡΠΎ Π½Π΅ ΠΏΠΎΠ²Π»ΠΈΡΠ΅Ρ Π½Π°ΠΏΡΡΠΌΡΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ.ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΠ‘ Android Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ.
Β· ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΊΡΠΎΡΡ-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΠΈΠ»ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΎ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΠΠ, ΠΎΠ½ΠΎ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ.
Β· ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±ΡΡΡΡΠ΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° DEX Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
Β· Π‘ΠΎΠΊΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π°ΠΏΡΡΠΌΡΡ.
Β· ΠΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π°ΡΠ°ΡΠ΅ΠΈ Π·Π° ΡΡΠ΅Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΡΠ½Π΅ΡΠ³ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΠΈ Π±Π°ΠΉΡΠΎΠ²ΡΡ ΠΊΠΎΠ΄ΠΎΠ².
Β· Π£Π»ΡΡΡΠ΅Π½Π½ΡΠΉ ΡΠ±ΠΎΡΡΠΈΠΊ ΠΌΡΡΠΎΡΠ°.
Β· Π£Π»ΡΡΡΠ΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.
Β· Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ·-Π·Π° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° DEX Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
Β· ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅, Ρ ΡΠ°Π½ΠΈΡΡΡ Π²ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
ART ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Ρ Π½ΠΈΠ·ΠΊΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΌΠΎΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² DEX, ΡΠΎΡΠΌΠ°ΡΠ° Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ Android ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ.ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΌ. ΠΡΠΎ Π²ΡΠ΅ Ρ ΠΌΠΎΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Ρ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ART ΠΈ Dalvik Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ΅ Android.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΡΠ΅Π½ΠΈΠ΅. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠΌΠΎΡΡ Π΄ΡΡΠ³ΠΈΠΌ, Π½Π°ΠΆΠΌΠΈΡΠ΅ β€, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΡΠ°ΡΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠ»ΠΈ Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ.
ΠΠΎΡΠ΅ΡΠΈΡΠ΅ ΠΌΠΎΡ ΡΡΡΠ°Π½ΠΈΡΡ Π±Π»ΠΎΠ³Π³Π΅ΡΠ°, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° ΠΌΠ΅Π½Ρ Π² Twitter GitHub
ART ΠΈ Dalvik. Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android (ART) — ΡΡΠΎ ΡΠ΅ΡΠ΄ΡΠ΅β¦ | ΠΡΠ°Π³Π°ΡΠΈ Π‘ΠΈΠ½Π³Ρ βοΈβοΈβοΈβοΈβοΈ
Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android (ART) — ΡΡΠΎ ΡΠ΅ΡΠ΄ΡΠ΅ Android.ΠΡΠΎ Π±ΡΡΡΡΠ°Ρ, Π·Π°ΡΠ°Π½Π΅Π΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΎΠΉ ΠΌΡΡΠΎΡΠ°, ΡΠ°ΡΡΡΠΈΡΠ°Π½Π½Π°Ρ Π½Π° ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Android ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡΡΡΡ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Dalvik ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Ρ ART. ΠΡΠΎΡ ΡΠ°Π·Π΄Π΅Π» Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΠ°ΠΊΡΡ ββΠΊΠ°ΠΊ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΠΎΡΠΌΠ°ΡΠ° ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Dalvik, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΡΠ°ΠΌΠΎΠΉ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android (ART) — ΡΡΠΎ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Android 5.0 (ΡΡΠΎΠ²Π΅Π½Ρ API 21) ΠΈ Π²ΡΡΠ΅. ΠΡΠ° ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΡΠ΄ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΠΎΠ²ΡΡΠ°ΡΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΏΠ»Π°Π²Π½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android.
- Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΎ ΡΠ±ΠΎΡΠΊΠΎΠΉ ΠΌΡΡΠΎΡΠ° (GC)
- ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ JNI
- ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΊΠΎΠ΄Π° JNI Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΎ ΡΠ±ΠΎΡΠΊΠΎΠΉ ΠΌΡΡΠΎΡΠ°
- ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ
- ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°
- ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ ΡΡΠ΅ΠΊΠ°
- Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ AOT
- ΠΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΎΡΡΠ΅ΡΠ°ΠΌΠΈ
ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ (AOT) ΠΈ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android 7.0 (Nougat ΠΈΠ»ΠΈ N), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π³ΠΈΠ±ΡΠΈΠ΄Π½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ AOT, JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ.ΠΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Π²ΡΠ΅Ρ ΡΡΠΈΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡΡΡ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΡΡΠΎΠΉΡΡΠ²Π° Pixel Π½Π°ΡΡΡΠΎΠ΅Π½Ρ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΠΎΡΠΎΠΊΠΎΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ:
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ AOT. ΠΠ΅ΡΠ²ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΡΠΊΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°Π½ΠΎ, Π° ΡΠ°ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π±ΡΠ΄ΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠ΅ΠΉ.
- ΠΠΎΠ³Π΄Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΈ Π·Π°ΡΡΠΆΠ°Π΅ΡΡΡ, Π΄Π΅ΠΌΠΎΠ½ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π΄Π»Ρ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΡΠΎΡΠΈΠ»Ρ, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ²ΡΡ Π·Π°ΠΏΡΡΠΊΠΎΠ².
- ΠΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠ΄, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ ΠΏΡΠΎΡΠΈΠ»Π΅ΠΌ, ΠΈ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΆΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π½ΠΎΠ²ΡΡ Π·Π°ΠΏΡΡΠΊΠΎΠ², Π±ΡΠ΄ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΠΏΡΠΎΡΠΈΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΡΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ Π²ΡΠ±ΡΠ°Π½ Π΄Π΅ΠΌΠΎΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
ART Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ (ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ dex2oat) ΠΈ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (libart.so), Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Zygote. ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ dex2oat ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠ°ΠΉΠ» APK ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΈ ΠΈΠΌΠ΅Π½Π° ΠΌΠΎΠ³ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΡΠΏΡΡΠΊΠ°, Π½ΠΎ Π² Π²Π΅ΡΡΠΈΠΈ Android O ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ:
1 .vdex: ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π΅ΡΠΆΠ°ΡΡΠΉ ΠΊΠΎΠ΄ DEX APK Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠΌΠΈ. Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ.
2 .odex: ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠ΄, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ AOT Π΄Π»Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π² APK.
3 .art (Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ): ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ART Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΡΡΠΎΠΊ ΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ
Π² APK, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Dalvik ΠΈ ART?
ΠΠ°Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ·ΡΠΊ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, Π½ΠΎ ΠΌΡ ΠΏΠΈΡΠ΅ΠΌ ΠΊΠΎΠ΄ Π½Π° ΠΊΠ°ΠΊΠΎΠΌ-ΡΠΎ ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ.Π’ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΈ Ρ Android, Π² Android Π²Π°ΡΠΈ ΠΊΠ»Π°ΡΡΡ Java Π±ΡΠ΄ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Ρ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ DEX, ΠΈ ΡΡΠΎΡ ΡΠΎΡΠΌΠ°Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° DEX ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ART ΠΈΠ»ΠΈ Dalvik. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Android Π·Π°ΠΏΡΡΡΠΈΡ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄. ΠΠΎ Π·Π΄Π΅ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π²ΠΎΠΏΡΠΎΡ: ΡΡΠΎ ΡΡΠΎ Π·Π° ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ?
ΠΡΠ°ΠΊ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΡΠΌΠ°ΡΡ ΠΎ ΡΡΠ΅Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ·ΡΠΊΠ° Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π² ΠΊΠΎΠ΄ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΡΠΎ Π΅ΡΡΡ Π² Android, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄ Android Π½Π° Java ΠΈΠ»ΠΈ Kotlin, ΡΠΎΠ³Π΄Π° ΡΡΠ° ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΠΎΠ΄ Java ΠΈΠ»ΠΈ Kotlin Π² ΠΊΠΎΠ΄ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎΡ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄.Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΄Π²Π° ΡΠΈΠΏΠ° ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ: Dalvik ΠΈ ART. Π’Π°ΠΊ. Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΡΠΈΡ Π΄Π²ΠΎΠΈΡ .
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΠ°Π»Π²ΠΈΠΊ?
Dalvik — ΡΡΠΎ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ. ΠΠΎΠ΄ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠΌ JIT ΠΌΡ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΠΌ, ΡΡΠΎ Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅, ΡΠ° ΡΠ°ΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π±ΡΠ΄Π΅Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π° ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ, Π° ΠΎΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π° Π² Π±ΡΠ΄ΡΡΠ΅Π΅, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ. JIT ΠΈΠ»ΠΈ Just In Time ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π² ΠΏΠ°ΠΌΡΡΠΈ, ΠΈ ΠΈΠ·-Π·Π° ΡΡΠΎΠ³ΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΡΠ΅Π½Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅.
ΠΠ°Π»Π΅Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΠΎΡΠΎΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ DVM:
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΠ Π’?
ART ΠΈΠ»ΠΈ Android Runtime — ΡΡΠΎ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Ahead Of Time (AOT). ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ AOT, ΠΎΠ½ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²Π΅ΡΡ ΠΊΠΎΠ΄ ΡΠ·ΡΠΊΠ° Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π² ΠΊΠΎΠ΄ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° Π½Π΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ (ΠΊΠ°ΠΊ Π² ΡΠ»ΡΡΠ°Π΅ Ρ Dalvik). ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π·Π°Π΄Π΅ΡΠΆΠΊΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅.ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΡΡΡΠ΅Π΅. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΠΎΠ²Π° ΠΎΠ± ART Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Android:
ART — ΡΡΠΎ Π½ΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android, ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½Π°Ρ Π² Π²Π΅ΡΡΠΈΠΈ 4.4 KitKat. ΠΡΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠΌΠΎΡΡ Π½Π΅Π·Π°Π²Π΅ΡΡΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π² KitKat. ΠΠ½ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ·ΡΠ²ΠΎΠ² ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΠΏΠ°ΡΡΠ½Π΅ΡΠΎΠ² Π½Π° ΡΠ°Π½Π½Π΅ΠΌ ΡΡΠ°ΠΏΠ΅.
ΠΠ°Π»Π΅Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΠΎΡΠΎΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ART:
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ART ΠΈ Dalvik
- ΠΠΎΠ΄Ρ ΠΎΠ΄: ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ AOT (Ahead Of Time) ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π½ΠΎ Dalvik ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ JIT (Just In Time) ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΈ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ.
- ΠΡΠ΅ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ: ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Dalvik, ART ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ΅Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΏΠ΅ΡΠ²ΡΠ΅. ΠΡΠ°ΠΊ, Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΈΠ΄Π΅Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ.
- ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ: ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ AOT, Π΅ΠΌΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ. Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Dalvik ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ JIT, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠ² Ρ ΠΌΠ΅Π½ΡΡΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΌΠΎΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Dalvik.
- ΠΠΊΠΊΡΠΌΡΠ»ΡΡΠΎΡ: ART Π² Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π°ΠΊΠΊΡΠΌΡΠ»ΡΡΠΎΡΠ° Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Ρ AOT. Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Dalvik ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ JIT, ΠΈ ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π±ΠΎΠ»ΡΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±Π°ΡΠ°ΡΠ΅ΠΈ.
- Π‘Π±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ°: Π£ ART Π»ΡΡΡΠ΅ ΡΠ±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ°, ΡΠ΅ΠΌ Ρ Dalvik.
ΠΡΠ°ΠΊ, DVM ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ JIT ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ ART. ΠΡΠ°ΠΊ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android 4.4 (Kitkat) ART Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ββΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Ρ Android 5.0 (Lollipop), Dalvik Π±ΡΠ» ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°ΠΌΠ΅Π½Π΅Π½ ART Π½Π° Android.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ART ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Dalvik
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±ΡΡΡΡΠ΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π°ΡΠ°ΡΠ΅ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½Π° ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ART.
- Π’Π°ΠΊΠΆΠ΅ ΡΠ»ΡΡΡΠ΅Π½Π° ΡΠ±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ°.
- ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π°ΠΏΡΡΠΌΡΡ, ART ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ART
- ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠΎΠ΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ART ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΡΡΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- ΠΡΠ΅ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Dalvik, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ AOT.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ART, ΡΠΎ Π²Ρ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ, ΠΏΠΎΡΡΠ²ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΡΠ°Π·Π½ΠΈΡΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ i.Π΅. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ART, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΈ ΠΏΠ»Π°Π²Π½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ Π²Π°ΡΠ΅Π³ΠΎ Android-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ART Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΠ°Π΄ΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΈ Π² ART Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Android ΠΌΠΎΠ³Π»ΠΈ Π»ΡΡΡΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Android.
ΠΡΠΎ Π²ΡΠ΅ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π±Π»ΠΎΠ³Π°. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π»ΠΎΠ³ΠΎΠ² ΠΏΠΎ Android, ΠΏΠΎΡΠ΅ΡΠΈΠ² Π½Π°Ρ ΡΠ°ΠΉΡ Π±Π»ΠΎΠ³Π° MindOrks.
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡΠ΅ ΡΡΠΈΡΡΡΡ π
ΠΠΎΠΌΠ°Π½Π΄Π° MindOrks!
Android Runtime — ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Dalvik ΠΈ ART? | ΠΠ²ΡΠΎΡ: ΠΠ°ΡΠ»ΠΈΠ½Π° Π‘Π°Π΄ΠΎΠ²ΡΠΊΠ°
ΠΡΠΎΡ ΠΏΠΎΡΡ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π²ΠΈΠ΄Π΅ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΠ» Π½Π° ΠΌΠΎΠ΅ΠΌ ΠΊΠ°Π½Π°Π»Π΅ YouTube. π₯
Android Runtime — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΡΠΎΠΈΡΠ΅Π»ΡΠ½ΡΡ Π±Π»ΠΎΠΊΠΎΠ² Π² ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ Android.ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π²Π°Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΠ»ΡΡΠ°Π»ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Ρ: Dalvik, ART, JIT ΠΈ AOT. ΠΡΠ»ΠΈ Π²Ρ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡΠ΄Ρ Π·Π°Π΄ΡΠΌΡΠ²Π°Π»ΠΈΡΡ, , ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΡΡΠΈ ΡΠ΅ΡΠΌΠΈΠ½Ρ ΠΈ , ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android , ΡΡΠΎΠ±Ρ Π½Π°ΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΡΡΡΡΠΌΠΈ — y , Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ Π²ΡΠ΅ ΡΡΠΎ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ π.
ΠΡΠ°ΠΊ, ΠΏΡΠΈΡΡΡΠΏΠΈΠΌ ΠΊ Π΄Π΅Π»Ρ!
ΠΠΎΠ³Π΄Π° ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌ APK, ΡΠ°ΡΡΡΡ ΡΡΠΎΠ³ΠΎ APK ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² .dex . ΠΡΠΈ ΡΠ°ΠΉΠ»Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ Π²ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π² Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΌ ΠΊΠΎΠ΄Π΅, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΌ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° — Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ .
ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, Π·Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π² ΡΠ°ΠΉΠ»Π°Ρ .dex, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡΡ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ — Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ½ΡΡΡ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ.
Android Runtime ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠ°ΠΌΡΡΡΡ ΠΈ ΡΠ±ΠΎΡΠΊΠΎΠΉ ΠΌΡΡΠΎΡΠ° , Π½ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ Π΄Π΅Π»Π°ΡΡ ΡΡΡ ΡΡΠ°ΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π΄Π»ΠΈΠ½Π½ΠΎΠΉ , Ρ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΡΡΡ Π·Π΄Π΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ .
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΉ, ΠΈ Π²ΡΠ΅ ΡΡΠΈ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠΈ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡΡ.Π ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Android Runtime ΡΠ΅Π³ΠΎΠ΄Π½Ρ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡΡΡ Π½Π° ΠΏΠ°ΡΡ Π»Π΅Ρ Π½Π°Π·Π°Π΄ ΠΈ ΡΠ½Π°ΡΠ°Π»Π° ΡΠ·Π½Π°ΡΡ ΠΎ Dalvik.
Π ΠΏΠ΅ΡΠ²ΡΠ΅ Π΄Π½ΠΈ Android ΡΠΌΠ°ΡΡΡΠΎΠ½Ρ Π±ΡΠ»ΠΈ Π½Π΅ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΌΠΎΡΠ½ΡΠΌΠΈ, ΠΊΠ°ΠΊ ΡΠ΅ΠΉΡΠ°Ρ. Π£ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ
Π΄Π°ΠΆΠ΅ 200 ΠΠ.
ΠΠ΅ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android, ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ Dalvik, , Π±ΡΠ»Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΠ³ΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°: ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΠΠ£ .
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π΄ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΎΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΎ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Just In Time compilation , ΠΊΠΎΡΠΎΡΠ΅ JIT.
Π ΡΡΠΎΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΊ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ. ΠΠ½ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ — Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ .
Π ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Dalvik ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΡ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π΅ΠΌΡ Π½ΡΠΆΠ΅Π½, ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ .
ΠΠΎ Ρ ΡΡΠΎΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠΉ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ — ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΠ΅ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ², Π±ΡΠ»ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Dalvik Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ.ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠ΄Π° Π±ΡΠ»ΠΈ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ. ΠΠΎ ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π½Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ Π±ΡΠ»ΠΎ ΠΌΠ°Π»ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΠ°ΡΡ Π»Π΅Ρ, Π½ΠΎ ΡΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ ΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈΡΡ Π²ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π»ΠΈ Π²ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. Π ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈΡΡ Π²ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅, Π²Π»ΠΈΡΠ½ΠΈΠ΅ JIT Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡ Π²ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ.
ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ Π² Android L Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ββΠ½ΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android: ART.
Π‘ΠΏΠΎΡΠΎΠ± ΡΠ°Π±ΠΎΡΡ ART Π² Android L Π½Π° 180 Π³ΡΠ°Π΄ΡΡΠΎΠ² ΠΎΡΠ»ΠΈΡΠ°Π»ΡΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΡ Π·Π½Π°Π»ΠΈ ΠΎΡ Dalvik.ART Π²ΠΌΠ΅ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Just in Time, ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π² Dalvik, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Ahead of Time compilation .
Π ART Π²ΠΌΠ΅ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄ Π±ΡΠ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ ΠΏΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π·Π°ΠΏΡΡΠ΅Π½ΠΎ, ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠΆΠ΅ Π±ΡΠ» ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½.
ΠΡΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΠ» ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΠΊ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π΄Π°ΠΆΠ΅ Π² 20 ΡΠ°Π· Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΠΏΡΠΈ ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ:ART Π² Android L ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ΅ΠΌ Dalvik.
ΠΡΠ΅ ΠΎΠ΄Π½ΠΈΠΌ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ APK Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ , ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ.
ΠΠ»Ρ ΡΠ°ΡΡΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΠΎΠΊΡΠΏΠ°Π΅ΡΡΡ Π΅Π³ΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, Π½ΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΎΡΠ΅Π½Ρ ΠΈ ΠΎΡΠ΅Π½Ρ ΡΠ΅Π΄ΠΊΠΎ, ΠΈ ΠΏΠΎΡΡΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΎΠΊΡΠΏΠ°Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ.
Π ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ Π² Android N ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Just In Time Π±ΡΠ»Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π° Π² ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠ΅ΠΉ Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΡΠΈΠ»Ρ .
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΡΠΈΠ»Ρ — ΡΡΠΎ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΠΈΡ Π·Π°ΠΏΡΡΠΊΠ°. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ Just in Time compilation , Π½ΠΎ ΠΊΠΎΠ³Π΄Π° ART ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ²Π»ΡΡΡΡΡ Β«Π³ΠΎΡΡΡΠΈΠΌΠΈΒ», ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠ°ΡΡΠΎ, ART ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π΄Π»Ρ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΈΠ»ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ° ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π»Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΌ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ, ΠΊΠ°ΠΊ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΡ 10% Π΄ΠΎ 20% ΠΊΠΎΠ΄Π°.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ART Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΠΎΠ²Π»ΠΈΡΠ»ΠΎ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΠ»Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΈ Π·Π°ΡΡΠΆΠ°Π»ΠΎΡΡ, ΡΡΠΎΠ±Ρ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π½Π° Π°ΠΊΠΊΡΠΌΡΠ»ΡΡΠΎΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΌΠΈ. , ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Just in Time.
ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π² Android P, Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ» ΠΏΡΠΎΡΠΈΠ»Π΅ΠΉ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ .
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΠ΄Π΅Ρ ΠΏΡΠΎΡΠΈΠ»Π΅ΠΉ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π»ΡΠ΄Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ. ΠΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ±ΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΡΠΈΠ»Π΅ΠΉ Π»ΡΠ΄Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.ΠΡΠΈ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΠ±ΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΏΡΠΎΡΠΈΠ»Π΅ΠΌ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΠ°ΠΊ, ΠΊΠΎΠ³Π΄Π° Π½ΠΎΠ²ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΡ ΡΠ°ΠΉΠ» Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΅Π³ΠΎ Π΄Π»Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π½ΠΎΠ²ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π»ΡΡΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΠΎ Π½Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΠ°ΡΠ°Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ART ΡΠΎΠ±Π΅ΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠΈΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, ΠΊΠΎΠ³Π΄Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ.
Π ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΈΡΡΠ½ΠΎΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌ ΡΡΠΎΠΌ ΡΠΎ, ΡΡΠΎ Π½Π°ΠΌ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ, ΡΠΎΠ·Π΄Π°ΡΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π΄Π΅Π»Π°ΡΡ, ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ. ΠΡΠ΅ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π·Π° ΠΊΡΠ»ΠΈΡΠ°ΠΌΠΈ Android Runtime.
Android Runtime ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ APK, Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ½ΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π¦Π.
ΠΠ΅ΡΠ²Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Android Runtime Π½Π°Π·ΡΠ²Π°Π»Π°ΡΡ Dalvik , Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Just in Time Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΠΊΠΎΡΠΎΡΠΎΠΉ Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎ.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π² Android L, Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ββART , Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Ahead of time. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΡΡΠΈΡΡ Π»ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π½ΠΎ ΠΏΡΠΈΠ²Π΅Π»ΠΎ ΠΊ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ Π² Android N JIT Π±ΡΠ» Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ Π² ART, Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π΄ΠΎΠ±ΠΈΡΡΡΡ Π»ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ°ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΊΠΎΠ΄Π°.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² Android P, Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ» ΠΏΡΠΎΡΠΈΠ»ΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ , ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΡΠ°ΠΉΠ» ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ , ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Ρ APK ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ART ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΡΡΠΈ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΠ΅ ΡΡΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Android Runtime Π΄Π΅Π»Π°ΡΡ Π½Π°ΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ π.
Android: Dalvik vs ART. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Dalvik VM, ART ΠΈβ¦ | ΠΠ½Π΄ΡΠ΅ΠΉ Π‘ΡΡΠ΅Π²ΠΈΡ
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΡΠ΅Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android. ΠΡΠΈΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΠΌΡ ΠΎΠ±Π΅ΡΠ°Π΅ΠΌ Π±ΡΡΡ ΠΊΡΠ°ΡΠΊΠΈΠΌΠΈ ΠΈ ΠΊΡΠ°ΡΠΊΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΡ ART ΠΈ Dalvik (DVM) Π² Android.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΡΡΠ½ΠΈΠΌ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ JVM ΠΈ DVM.
ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Java — ΡΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°, ΡΠΏΠΎΡΠΎΠ±Π½Π°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Java Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.ΠΠ½ ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ Β«ΠΠΈΡΠΈ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, Π±Π΅Π³ΠΈ Π³Π΄Π΅ ΡΠ³ΠΎΠ΄Π½ΠΎΒ». ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ Java ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π»ΡΠ±ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠ΅ΠΉ JVM.
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Java ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ .java Π² ΡΠ°ΠΉΠ»Ρ .class (Π±Π°ΠΉΡ-ΠΊΠΎΠ΄). ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ JVM, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° Π¦Π.
Π€ΡΠ½ΠΊΡΠΈΠΈ JVM:
- ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΡΡΠ΅ΠΊΠ°. Π‘ΡΠ΅ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ. Π Π°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΡ Π΅ΠΌΠ΅ LIFO ΠΈΠ»ΠΈ Β«ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΠΏΡΠΈΡΠ΅Π» — ΠΏΠ΅ΡΠ²ΡΠΌ ΡΡΠ΅Π»Β».β
- ΠΠ°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»Ρ .class .
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ.
ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik (DVM) — ΡΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Java, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½Π°Ρ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ ΠΡΠ½ΠΎΠΌ ΠΠΎΡΠ½ΡΡΠ΅ΠΉΠ½ΠΎΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Android.
ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Dalvik — ΡΡΠΎ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Android ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Π΄ΠΎΠΌΠ΅Π½Π΅. ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²), ΡΠ΄ΡΠΎ ββΠ²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Dalvik (Zygote Dalvik VM) ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π² ΠΎΠ±ΡΠ΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π³Π΄Π΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π΅ΡΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. .ΠΠΎΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, Android Π²Π½ΡΡΡΠΈ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Dalvik, Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ DVM:
- ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ². Π‘ΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌΠΈ ΡΠ°ΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΠ·-Π·Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΡ POP ΠΈ PUSH ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π² ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²ΠΎΠΉ ΠΠ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ Π² ΡΡΠ΅ΠΊΠΎΠ²ΠΎΠΉ ΠΠ.
- ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΡΠΌΠ°ΡΠ°. Android dexer (ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎΠ± ΡΡΠΎΠΌ ΠΏΠΎΠ·ΠΆΠ΅) ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ .class Π² ΡΠ°ΠΉΠ»Ρ .Π€ΠΎΡΠΌΠ°Ρ dex ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ DVM. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠ°ΠΉΠ»Π° .class , ΡΠ°ΠΉΠ» .dex ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ².
ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ± Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ DVM Π·Π΄Π΅ΡΡ.
Π Π΅ΡΠ°ΡΡΠΈΠΌ ΡΠ°Π³ΠΎΠΌ Π² ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ APK ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° Java Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ .dex , ΡΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Android Runtime ΠΈ Android Π·Π½Π°Π»ΠΈ ΠΎΠ± ΡΡΠΎΠΌ. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ dex Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Β«ΠΏΠΎΠ΄ ΠΏΡΠΈΠΊΡΡΡΠΈΠ΅ΠΌΒ» ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΎΠ±ΡΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΠΎΠ½ Π½Π°ΠΏΡΡΠΌΡΡ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π²ΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, .dex ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠ°ΠΊ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ, ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅. dex Π‘Π°ΠΌ ΡΠ°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ .class , Π²ΠΊΠ»ΡΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΠΌΠ΅ΡΡΠ°. ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ Java ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ DVM. ΠΠ΅ΡΠΆΠ°ΡΡΠΉ ΡΠ°ΠΉΠ» .dex ΠΎΠ±ΡΡΠ½ΠΎ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ² ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ ΡΠΆΠ°ΡΡΠΉ Π°ΡΡ ΠΈΠ² Java (JAR) ΠΈΠ· ΡΠ΅Ρ ΠΆΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² .class .
ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ .Π€Π°ΠΉΠ»Ρ ΠΊΠ»Π°ΡΡΠ° Π±ΡΠ»ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Ρ Π² .dex Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° DX. ΠΠΎ Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android Studio 3.1 ΠΈ Π΄Π°Π»Π΅Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π±ΡΠ» D8. ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ DX, D8 ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π±ΡΡΡΡΠ΅Π΅ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ°ΠΉΠ»Ρ .dex ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ ProGuard Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. Π ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΉΠ» .dex , Π½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°. ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎΡ ΡΠ°ΠΉΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ APK ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π΄Π»Ρ Π΅Π³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Android.
ΠΠΎΡΠ»Π΅ D8 Π² 2018 Π³ΠΎΠ΄Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ R8, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎ ΡΡΡΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΠΌ ΠΆΠ΅ D8, Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌ.
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Android Studio 3.4 ΠΈ Android Gradle 3.4.0 ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠΌ ΠΈΠ»ΠΈ Π²ΡΡΠ΅ Proguard Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΠ»Π°Π³ΠΈΠ½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ R8, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠΆΠ°ΡΠΈΠ΅, ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π°. Π₯ΠΎΡΡ R8 ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Proguard, ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° Java Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ dex ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΡΡΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ.
ΠΡΠ΅ ΠΌΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Guava, Jetpack, Gson, Google Play Services. ΠΠΎΠ³Π΄Π° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΠ°ΡΡΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ΅Π· ΡΠΆΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π° Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
ΠΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΡΠ°Π±Π»ΠΎΠ½ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠΌ Π±ΡΠ»ΠΎ Π»Π΅Π³ΡΠ΅ ΠΏΠΎΠ½ΡΡΡ Π²Π°Ρ ΠΊΠΎΠ΄.ΠΠΎ ΡΠ°ΠΊΠΈΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ Π±ΠΎΠ»ΡΡΠ΅ΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΠΊΠΎΠ΄Π°, ΡΠ΅ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ.
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ R8. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π° ΡΡΠ΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΊΠΎΠ΄Π°, ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° Ρ ΠΏΡΠΈΠ²Π΅Π΄Ρ ΡΠΈΡΡΡ ΠΈΠ· ΠΎΡΡΠ΅ΡΠ° Shrinking Your App with R8, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Android Dev Summit ’19:
Π Π½ΠΈΠΆΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ R8, ΠΊΠΎΠ³Π΄Π° Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ββΠ±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΡ (Π²Π·ΡΡΠΎ ΠΈΠ· Π±Π»ΠΎΠ³Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Android ΠΈΡΡΠΎΡΠ½ΠΈΠΊ):
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΠΎΡΡΠ΅Ρ, ΡΠΏΠΎΠΌΡΠ½ΡΡΡΠΉ Π²ΡΡΠ΅.
DVM Π±ΡΠ» ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΠΊΠ°ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Android Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ Android 4.4 Kitkat.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ART Π±ΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ββΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π° Π² Android 5.0 (Lollipop) ART ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΠ» Dalvik.
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠΎΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ART ΠΈ DVM ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ AOT, Π° DVM — ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ JIT. ΠΠ΅ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ Π² ART Π½Π°ΡΠ°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³ΠΈΠ±ΡΠΈΠ΄ AOT ΠΈ JIT. ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅.
DVM
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ: Π²ΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π°, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°Ρ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ. ΠΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½ΠΎ ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- Π£ΡΠΊΠΎΡΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ DVM ΡΡΠ΅Π±ΡΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π² ART.
- Π‘Π½ΠΈΠΆΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π°ΡΠ°ΡΠ΅ΠΈ Π·Π° ΡΡΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° Π¦Π.
- Dalvik ΡΠ²Π»ΡΠ΅ΡΡΡ Β«ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌΒ» ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π²Π΅ΡΡΠΈΡΡ Android Π²ΡΡΠ΅ 4.4.
ART
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ AOT, ΡΠΎ Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ ΡΡΠΊΠΎΡΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ.
- ΠΠ°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ΅Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ.
- ΠΠ·-Π·Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ AOT ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ DVM.
- ΠΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π°ΡΠ°ΡΠ΅ΠΈ Π·Π° ΡΡΠ΅Ρ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° Π¦Π ΠΈΠ·-Π·Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ .
- Π£Π»ΡΡΡΠ΅Π½Π½Π°Ρ ΡΠ±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ°. ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Dalvik ΡΠ±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΌΡΡΠΎΡΠ° ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄Π²Π° ΠΏΡΠΎΡ ΠΎΠ΄Π° ΠΊΡΡΠΈ, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΎ ΠΊ ΠΏΠ»ΠΎΡ ΠΎΠΌΡ UX. Π ΡΠ»ΡΡΠ°Π΅ ART ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ: ΠΎΠ½ ΠΎΡΠΈΡΠ°Π΅Ρ ΠΊΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈΠ΄Π°ΡΠΈΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Android 7, ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android Π²ΠΊΠ»ΡΡΠ°Π΅Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Ρ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π°. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ JIT Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ AOT, ΡΠ»ΡΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈ ΡΡΠΊΠΎΡΡΠ΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡ Π΅ΠΌΠ΅:
ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΎΠ½ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° (ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² Android <5.0), Π½ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΡΠΈΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠ΄Π°. ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΠΌΠ°ΡΡΡΠΎΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π½Π΅Π°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° Π·Π°ΡΡΠ΄ΠΊΠ΅.
ΠΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΠ΅ΠΏΠ΅ΡΡ Π΄Π²Π° ΡΠ°Π·Π½ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΠΌΠ΅ΡΡΠ΅, ΡΡΠΎ Π΄Π°Π΅Ρ ΡΠ²ΠΎΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°:
- ΠΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ — ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ·Π½Π°ΡΡ ΠΎ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°, ΠΈ, ΠΊΠ°ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ , Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ.
- Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΠΠ£ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ — Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ΅Π½, ΡΠ΅ΠΌ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄. ΠΠΎΠ³Π΄Π° ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ AOT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ. ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ NAND-ΠΏΠ°ΠΌΡΡΠΈ;
- Π Π΅Π·ΠΊΠΎΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ — Π±Π΅Π· ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ AOT, Π±Π΅Π· Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ.
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π² ART ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π»ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ DVM ΠΈ ART ΠΈ Π² ΡΠ΅Π»ΠΎΠΌ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ, ΠΊΠ°ΠΊ Android ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΡΠ»ΡΡΡΠ°Π» ΡΠ²ΠΎΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ART Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅: Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ»ΡΡΡΠ°ΡΡΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΠ°ΠΊ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
ΠΠ°Π΄Π΅Π΅ΠΌΡΡ, ΡΡΠ° ΡΡΠ°ΡΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½Π° ΡΠ΅ΠΌ, ΠΊΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Android.
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Dalvik ΠΈ ART Π² Android
Π‘ΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Android (ART ) — ΡΡΠΎ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠ°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌΠΈ ΡΠ»ΡΠΆΠ±Π°ΠΌΠΈ Π½Π° Android. ART ΠΈ Π΅Π³ΠΎ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΈΠΊ Dalvik ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Android.ART ΠΈ Dalvik — ΡΡΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ΠΎΠΌ Dex, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ Π΄Π»Ρ Dalvik, Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ART.
DalvikΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik ΠΈΠ»ΠΈ DVM — ΡΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ², ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½Π°Ρ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ ΠΡΠ½ΠΎΠΌ ΠΠΎΡΠ½ΡΡΠ΅ΠΉΠ½ΠΎΠΌ. ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Dalvik Π±ΡΠ»Π° Π½Π°Π·Π²Π°Π½Π° ΠΠΎΡΠ½ΡΡΠ΅ΠΉΠ½ΠΎΠΌ Π² ΡΠ΅ΡΡΡ ΡΡΠ±Π°ΡΠΊΠΎΠΉ Π΄Π΅ΡΠ΅Π²Π½ΠΈ Β«ΠΠ°Π»Π²ΠΈΠΊΒ» Π² ΠΠΉΡΡΡΠΎΡΠ΄ΡΡΠ΅, ΠΡΠ»Π°Π½Π΄ΠΈΡ, Π³Π΄Π΅ ΡΠ°Π½ΡΡΠ΅ ΠΆΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π΅Π³ΠΎ ΠΏΡΠ΅Π΄ΠΊΠΎΠ². Dalvik — ΡΡΠΎ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° (ΠΠ) Ρ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π² ΠΠ‘ Android, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π΄Π»Ρ Android.Π€ΠΎΡΠΌΠ°Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° Dalvik ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΎΡΠΌΠ°ΡΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ, Π½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡΡ Android. Π‘Π°ΠΌ Android — ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° Linux, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠΎΠΈΡ Dalvik. DVM Π±Π΅ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android, ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ Π΅Π³ΠΎ ΠΈΠ· ΠΊΠΎΠ΄Π° Java Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° Linux. ΠΠΎ ΡΡΡΠΈ, ΠΏΡΠΎΡΡΠΎΠΉ java-ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π² JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π½Π° ΠΌΠ°ΡΠΈΠ½Π΅. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ ΠΈ OEM-ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΡΡΡΠ°Π²Π»ΡΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊ odexed.Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ 2 ΡΠΈΠΏΠ° ΡΠ°ΠΉΠ»ΠΎΠ²:
- .dex (ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» Dalvik). ΡΠ°ΠΉΠ» — ΡΡΠΎ ΡΠ°ΠΉΠ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Android. ΠΠ°ΡΠ΅ΠΌ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ .dex Π°ΡΡ ΠΈΠ²ΠΈΡΡΡΡΡΡ Π² ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ» .apk.
- .odex ΡΠ°ΠΉΠ» ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Android Π΄Π»Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΠΌΠ΅ΡΡΠ° ΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Android (ΡΠ°ΠΉΠ» .apk).
dexopt ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ DEX Π² ODEX (ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ DEX), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π² DVM ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π·ΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ:
ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ JAVA (.java) -> ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ (.dex) -> DVM
DVM Π»ΡΡΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΡΡΡΠΎΠΉΡΡΠ² Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΌΠΎΠΌ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΎ ΡΡΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
ART
Π Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Android, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 4.4 KitKat, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ART Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ DVM. ART (Android Run Time) ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΅ΠΌΠ½ΠΈΠΊΠΎΠΌ DVM, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅ ΠΆΠ΅ ΡΠ°ΠΉΠ»Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π° ΠΈ .dex (Π½ΠΎ Π½Π΅ ΡΠ°ΠΉΠ»Ρ .odex), ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠ΅Π΅ΠΌΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π° ββΠ½Π° ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΠ΅ Π΄Π»Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.Android 5.0 Β«LollipopΒ» — ΠΏΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ART — ΡΡΠΎ , ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½Π½Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Π’Π΅ΠΏΠ΅ΡΡ ΡΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ART, — ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Ρ ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΊΠΎΠ΄ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, Π° Π·Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ. ΠΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈΠ·-Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ java-ΠΊΠΎΠ΄Π° Ρ Π½Π°Ρ Π΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΡΠΏΠ½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ / ββΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄.ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ ΡΠ»ΡΡΠ°Π»ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Ρ odexed ΠΈ deodexed . Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Ρ Π±Π΅ΡΠ΅ΡΠ΅ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΠ΅ Π΅Π΅, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΡΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΡΠΎΡ ΡΠ°Π·Π΄Π΅Π» ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΎΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΅Π³ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½Π΅Π΅, ΡΠ΅ΠΌ Π² Dalvik. ΠΠΎ ΡΡΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ.
ΠΡΠΈΠΌΠ΅Ρ: Samsung Ρ TouchWiz .. TouchWiz ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ Π²Π΅ΡΠ°Ρ , ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ , ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π΄Π΅ΠΎΠ΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ ΡΠ°Π±Π»ΠΎΠ½ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π²ΠΈΠ΄, ΠΏΠΎΡΠ΅ΡΡΠ² ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΡΠΈΡΠ°ΡΡ Π΄Π°Π»ΡΡΠ΅, ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ dex2oat ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ .dex Π² ΡΠ°ΠΉΠ» .oat, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ ELF. ART ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎΡΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° dex2oat. ΠΡΠ° ΡΡΠΈΠ»ΠΈΡΠ° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠ°ΠΉΠ»Ρ DEX Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅Π»Π΅Π²ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ, Android Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ°ΠΉΠ» OAT.Π€Π°ΠΉΠ» OAT ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Android Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Android (ΡΠ°ΠΉΠ» .APK). Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎΡ ΡΠ°ΠΉΠ» Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠ°Π±ΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ DVM ΠΈ ART
ΠΠΠ Π’Π£ΠΠΠ¬ΠΠΠ― ΠΠΠ¨ΠΠΠ DALVIK C | ΠΠ ΠΠΠ― ΠΠΠΠ£Π‘ΠΠ ANDROID | |
---|---|---|
ΠΡΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ | ||
ΠΠ°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° ΠΈΠ·-Π·Π° JIT | ΠΠ°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π²Π½ΡΡΡΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΈΠ·-Π·Π° AOT | |
ΠΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ² Ρ ΡΠ°Π½Π΅Π½ΠΈΡ | ΠΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ² Ρ ΡΠ°Π½Π΅Π½ΠΈΡ | |
Π‘ΡΠ°Π±ΠΈΠ»ΡΠ½Π°Ρ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° | ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΈ Π½ΠΎΠ²Π°Ρ — ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ | |
ΠΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ | Π§ΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΠΏΠ»Π°Π²Π½Π΅Π΅ ΠΡΠ΅ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΌΠ΅Π½ΡΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° | |
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ JIT ( JIT: Just-In-Time) Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° | ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ AOT (Ρ ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ), ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅. ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΠΈΠΆΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ·ΠΆΠ΅ | ΠΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ |
DVM ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. | ART ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π΅Π³ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ CPU. Π£Π²Π΅Π»ΠΈΡΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π·Π° ΡΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. |
ΠΡΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π²Π°ΡΠ΅Π³ΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠ΅Π½ΠΈΠΉ: Π² Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π΅ ART Π»ΡΡΡΠ΅, Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π±ΠΎΠ»ΡΡΠ΅, ΡΡΠ΅Π±ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ flappy bird, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π½ΠΈΠΌΠ°Π» Π²ΡΠ΅Π³ΠΎ 1 ΠΠ ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π» ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠ΅ΡΡΠ°. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ Π½ΡΠΆΠ΄Π°ΡΡΡΡ Π² ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°, Π΅ΡΠ»ΠΈ ART ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ Π΄ΠΎΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΡΠ½ΠΊΠ΅ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ.Π Android Lolipop DVM Π±ΡΠ» Π·Π°ΠΌΠ΅Π½Π΅Π½ Π½Π° ART. ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ DVM ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎ ART ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ CPU. ARM — ΡΡΠΎ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°. ΠΠΎΠ΄ΠΎΠ±Π½ΠΎ MIPS, x86 ΠΈ Ρ. Π. DVM / ART ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎΠ²Π΅ΡΡ ARM. ΠΠ±Π° ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°.
Π₯ΠΎΡΠΈΡΠ΅ Π±ΠΎΠ»Π΅Π΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΡΡ ΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ² Android?
Π©Π΅Π»ΠΊΠ½ΠΈΡΠ΅ Π·Π΄Π΅ΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΌΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ, ΡΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΌΡ Π½Π°ΡΠΈΠΌΠΈ ΡΠΊΡΠΏΠ΅ΡΡΠ°ΠΌΠΈ Ρ ΡΠ΅Π»ΡΡ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ Π²Π°ΡΡ ΠΎΡΡΠ°ΡΠ»Ρ! ΠΠ½Π°Π»ΠΈΠ· ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈAndroid Runtime Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ New Relic: ART vs.ΠΠ°Π»ΡΠ²ΠΈΠΊ
Π ΡΡΠΎΠΌ Π³ΠΎΠ΄Ρ Π½Π° Google I / O ΠΌΡ ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ ΡΡΠ΄ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΡΡΠΈΡ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Android Runtime (ART). ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΠΏΡΡΡΠΈΠ»ΠΈ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΡΡΡΠΏΠ»Π΅Π½ΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ Π²ΡΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅ Π·Π΄Π΅ΡΡ. Π₯ΠΎΡΡ ΡΠ°ΠΌΠ° ART Π½Π΅ ΡΡΠ°Π»Π° Π±ΠΎΠ»ΡΡΠΈΠΌ ΡΡΡΠΏΡΠΈΠ·ΠΎΠΌ ΠΈ Ρ Android 4.4 ΡΠΊΡΡΠ²Π°Π΅ΡΡΡ Π³Π»ΡΠ±ΠΎΠΊΠΎ Π² ΠΌΠ΅Π½Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, ΡΠ°ΠΌΡΠΌ Π²Π°ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ»ΠΎ ΡΠΎ, ΡΡΠΎ Android L (ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΡΡΠΏΠ½ΡΠΉ Π²ΡΠΏΡΡΠΊ ΠΠ‘) ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡΡ Π½Π° ART. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΊΡΠ°ΡΠΊΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΎΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ Π² ART, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠΎΡΠ΅ΡΠ°ΡΡΡΡ Ρ Dalvik, ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎΠΌ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΈ, ΡΠ΅ΠΏΠ΅ΡΡ ART ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ. ΠΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½Ρ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ (ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ARM, x86 ΠΈΠ»ΠΈ MIPS). ΠΡΠΎ ΡΡΡΡΠ°Π½ΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ²ΠΎΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π°ΠΉΠΌΠ΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π½ΠΎ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΎΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Dalvik, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΡΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ.
ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π° ART ΡΠ°Π±ΠΎΡΠ°Π»Π° Π½Π°Π΄ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΡΠ±ΠΎΡΡΠΈΠΊΠ° ΠΌΡΡΠΎΡΠ° (GC). ΠΠΌΠ΅ΡΡΠΎ Π΄Π²ΡΡ ΠΏΠ°ΡΠ· ΠΎΠ±ΡΠ΅ΠΉ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΎΠΊΠΎΠ»ΠΎ 10 ΠΌΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ±ΠΎΡΡΠΈΠΊΠ° ΠΌΡΡΠΎΡΠ° Π² Dalvik Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ, ΠΎΠ±ΡΡΠ½ΠΎ ΠΌΠ΅Π½Π΅Π΅ 2 ΠΌΡ. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΡΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ»ΠΈ ΡΠ°ΡΡΠΈ Π·Π°ΠΏΡΡΠΊΠΎΠ² ΡΠ±ΠΎΡΡΠΈΠΊΠ° ΠΌΡΡΠΎΡΠ° ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΡΠ±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ , ΡΡΠΎΠ±Ρ Π·Π½Π°ΡΡ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΡ ΡΡΡΡΠΎΠΉΡΡΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ»Π½ΡΠΉ ΡΠ±ΠΎΡΡΠΈΠΊ ΠΌΡΡΠΎΡΠ° Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΠ΅Π»Π΅ΡΠΎΠ½ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ ΠΈ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ΅Π°ΠΊΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π²Π°ΠΆΠ½Π°. ΠΡΠΎ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊ ΠΏΡΠΎΠΏΡΡΠ΅Π½Π½ΡΠΌ ΠΊΠ°Π΄ΡΠ°ΠΌ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π±ΡΠ΄ΡΡΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ART Π±ΡΠ΄ΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ±ΠΎΡΡΠΈΠΊ ΡΠΆΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΡΠ΅ Π±Π»ΠΎΠΊΠΈ, ΡΡΠΎΠ±Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ±ΠΈΠ²Π°ΡΡ ΡΡΠ°ΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Rosalloc (ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΠΊΠΎΠ² ΡΠ»ΠΎΡΠΎΠ²). ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ ΠΡΠ³Π° ΠΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΠΏΠ°ΠΌΡΡΠΈ. Π ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΡΡΠΎ ΠΌΠ΅ΡΠ°Π΅Ρ ΡΠ±ΠΎΡΡΠΈΠΊΡ ΠΌΡΡΠΎΡΠ° ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ Ρ ΠΏΠ°ΠΌΡΡΡΡ. Π Rosalloc Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π² Java, ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠΎΡΠΎΠΊΠ° Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ, Π° Π±ΠΎΠ»Π΅Π΅ ΠΊΡΡΠΏΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΡΠ°Π΅ΡΡΡ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ Π΄Π»Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, Π΅ΠΌΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΆΠ΄Π°ΡΡ, ΠΏΠΎΠΊΠ° ΡΠ±ΠΎΡΡΠΈΠΊ ΠΌΡΡΠΎΡΠ° ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ Π½Π΅ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ·Π»ΠΈΡΠ½Π΅ Π³ΠΎΠ²ΠΎΡΠΈΡΡ, ΡΡΠΎ Π²ΡΠ΅ ΡΡΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΡΠ΄Π΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ. ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ Π²ΡΡΡΡΠΏΠ»Π΅Π½ΠΈΡ I / O ΡΡΠΎΡ ΡΠ»Π°ΠΉΠ΄ Π²ΡΡΠΊΠΎΡΠΈΠ» ΠΈ ΠΏΡΠΈΠ²Π»Π΅ΠΊ ΠΌΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅:
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ New Relic Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ART ΠΈ Dalvik
ΠΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠ΅ ΠΏΡΠ΅ΡΠ΅Π½Π·ΠΈΠΈ! ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ Π² New Relic Π΄ΠΎΡΠΎΠΆΠΈΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ ΡΠ΅ΡΠΈΠ» Π²Π·Π³Π»ΡΠ½ΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Dalvik ΠΈ ART Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°ΡΠ΅Π³ΠΎ Π°Π³Π΅Π½ΡΠ° Π΄Π»Ρ Android.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°Π»ΠΎ Π±Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ.Π§ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΡΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΡΠ΅ΠΌ ΠΈΠ³ΡΠ° Great Computer Language Benchmarks Game? Π― ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΡΡ Π½Π° Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ ΡΠΏΠ΅ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π½ΠΎΡΠΌΡ ΠΈ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ» ΠΊΠΎΠ΄ Π² Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android. ΠΠΎΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π°Π½Π½ΠΎΡΠ°ΡΠΈΠΉ @Trace, ΡΡΠΎΠ±Ρ ΡΠΎΠΎΠ±ΡΠΈΡΡ Π°Π³Π΅Π½ΡΡ New Relic ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΠΎΠ΄ΡΠ΅ΠΌΠ° ΡΡΠΆΠ΅Π»ΡΡ Π³ΡΡΠ·ΠΎΠ², Ρ Π·Π°ΠΏΡΡΡΠΈΠ» Π΄Π²Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Genymotion, ΠΎΠ΄Π½ΠΎ Ρ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌ ART ΠΈ ΠΎΠ΄Π½ΠΎ Ρ Dalvik. Π§Π΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ Ρ ΡΠΆΠ΅ Π²ΠΈΠ΄Π΅Π» Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ:
Π ΡΡΠΎΠΌ ΠΏΡΠΎΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ART Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π² ΡΡΠΈ ΡΠ°Π·Π° Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΡΠΎΡ ΠΆΠ΅ ΠΊΠΎΠ΄, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Π½Π° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅ Dalvik.Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ΅ΡΡ 10 ΡΠ°Π·, ΡΡΠΎΠ±Ρ ΡΠΈΡΡΡ Π±ΡΠ»ΠΈ ΠΎΡΡΠ·Π°Π΅ΠΌΡΠΌΠΈ. ΠΠΎΡ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅Π΄ Π½Π° Dalvik VM:
Π Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΡΠ΅ΡΡ Π½Π° ΠΠ Π’:
Π Dalvik ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΡΠ΅ΡΡΠ° (Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠ°Ρ ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅) Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 1400 ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄. ΠΠ° ART ΡΡΠΎΡ ΠΆΠ΅ ΡΠ΅ΡΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΡΠ΅Π³ΠΎ ΠΎΠΊΠΎΠ»ΠΎ 400 ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ Π²Π΅ΡΡΠΈΡ ART ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π° ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π½Π° 2 ΠΠ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ (Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π° 20%).
Π₯ΠΎΡΡ ΠΌΠΎΠΉ Π±ΡΡΡΡΡΠΉ ΠΈ Π³ΡΡΠ·Π½ΡΠΉ ΡΠ΅ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ, ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΌΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠΆΠ΅ ΠΎΡΠ΅Π½Ρ ΠΎΠ±Π½Π°Π΄Π΅ΠΆΠΈΠ²Π°ΡΡ.ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ± ΠΠ Π’, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΡΡΠΈΠΌ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ART, Π²Π°ΠΌ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΡΡΠΈΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ. ΠΡΡΡ ΠΏΠΎΡ ΠΎΠΆΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ART? ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π°ΠΉΡΠ΅ Π½Π°ΠΌ Π·Π½Π°ΡΡ.