Scusate nn saprei in quale sezone chiedere: che differenza c'è tra i due diversi runtime? Davlik o l'altra?
Inviato dal mio SM-N910F usando Androidiani App
Visualizzazione stampabile
Scusate nn saprei in quale sezone chiedere: che differenza c'è tra i due diversi runtime? Davlik o l'altra?
Inviato dal mio SM-N910F usando Androidiani App
Ciao, potevi chiedere anche in No Modding. Ti esplico le differenze
Premessa:
Per capire la differenza tra Dalvik e ART bisogna innanzitutto capire cosa sia un ambiente di runtime o di esecuzione o tempo di esecuzione. Per dirla in termini semplici, un ambiente di runtime comprende istruzioni software che vengono eseguite quando il programma è in esecuzione. Queste istruzioni praticamente traducono il proprio codice software nel codice che il telefono è in grado di eseguire. Pertanto, tutti i linguaggi di programmazione richiedono una sorta di ambiente di runtime in grado di eseguire correttamente il codice scritto in quel linguaggio.
Android fa uso di una macchina virtuale come ambiente runtime per eseguire i file APK che costituiscono un’applicazione Android. Il vantaggio di utilizzare una macchina virtuale è duplice – in primo luogo, il codice di applicazione è isolato dal sistema operativo di base, in modo che se qualcosa dovesse andare storto, è contenuta in un ambiente isolato e non influenza il sistema operativo primario.
Le macchine virtuali forniscono un ambiente isolato per l’esecuzione del codice. Quindi, anche se l’applicazione contiene un pezzo di codice maligno che può danneggiare il sistema operativo di base, esso non influirà direttamente sui file di sistema, e quindi il sistema operativo di base sarà tenuto al sicuro da danneggiamenti. Il vantaggio su larga scala è una maggiore stabilità e affidabilità del sistema operativo.
Gli APK delle app che vengono scaricati tramite Play Store (o da qualsiasi altra fonte) sono istruzioni non compilate che gli sviluppatori basano sulla macchina virtuale per compilare prima dell’esecuzione ed eseguire sul dispositivo. Ciò fornisce una maggiore compatibilità, se lo sviluppatore dovesse fornire il codice già compilato ed è stato compilato per un processore basato su Snapdragon, potrebbe non funzionare correttamente su un chip Tegra, per esempio. Quindi, questa compilazione sul dispositivo risolve questo problema.
Per Android, la macchina virtuale basata sull’ambiente di runtime in uso finora è conosciuta come Dalvik Virtual Machine, che, sono sicuro che chiunque abbia mai scavato nei dettagli del sistema operativo, è più che familiare.
Dalvik e Art:
Dalvik è presente nell’OS Android fin dal principio nel 2007 e non è cambiato molto da allora, a parte il metodo di compilazione Just-In-Time (JIT), introdotto in Android 2.2 Froyo, che in sostanza compila in modo giusto le applicazioni che vengono lanciate o quando l’utente fornisce le istruzioni necessarie. È un miglioramento rispetto al precedente approccio dell’interprete convenzionale che compilava e caricava codice riga per riga, ma il lato negativo è un sovraccarico enorme quando l’app viene lanciata per la prima volta. Questo perché il sistema ha bisogno di mettere insieme tutti i file necessari, compilare l’applicazione e caricarla nella RAM. Finché l’applicazione compilata rimane all’interno della RAM, continuerà a rispondere velocemente, ma quando si caricano più applicazioni e la RAM si esaurisce, la prima app aperta viene chiusa e, quindi, al successivo lancio, l’intero processo ricomincia. L’approccio ha senso su carta, e in effetti, ha lavorato bene fino ad ora per la piattaforma. Tuttavia, i dispositivi anziani con RAM limitata soffrono di più, poiché il ciclo di carico/scarico (avvio/blocco) continua più spesso, e quindi, il sistema rallenta in termini di reattività complessiva. Ecco dove la nuova macchina virtuale, ART, entra in gioco.
ART, o Android RunTime è una nuova macchina virtuale sperimentale che Google ha introdotto con Android 4.4 KitKat come opzione per gli sviluppatori (con Dalvik ancora impostato come predefinito per ora). La differenza principale tra ART e Dalvik è l’approccio alla compilazione che entrambi impiegano – ART si avvale di un nuovo Ahead-Of-Time (AOT) concetto contrario al JIT di Dalvik, che raccoglie le applicazioni prima che esse vengano lanciate. Ciò significa che per la prima installazione ci vorrà più tempo, e le applicazioni occuperanno più spazio nella memoria interna, ma allo stesso tempo, dal momento che l’applicazione sarà completamente compilata appena installata, i tempi di lancio saranno molto più veloci. Allo stesso modo, dal momento che la compilazione avviene solo una volta al momento dell’installazione, il tasso di utilizzo del processore è più basso, il che si traduce in una migliore durata della batteria e delle prestazioni complessive.
Spero di esserti stato di aiuto.
Grazie! Da quello che ho capito in linea di massima conviene Art, ma per adesso è un po' problematico poiché non è completamente integrato con le applicazioni odierne
Inviato dal mio SM-N910F usando Androidiani App
considerando che è un argomento interessante e che la spiegazione di @DreamReaper è stata più che soddisfacente (ma molto di più :D), ho sposstato i post in una discussione a se, così da poter essere di facile consultazione per tutti
buon proseguimento
sinceramente al momento non si notano differenze tra i due metodi... probabile che con Lollipop e art sarà più marcata la differenza rispetto a dalvik su kit kat?
Ma come mai con i routine art non funziona shealth?
Dopo una settimana di utilizzo in Dalvik ieri sono passato in Art... Ci ha messo oltre 20 minuti e tolto oltre il 30% di batteria per riprocessare le oltre 350 app, ma devo dire che la differenza si nota, sopratutto nel multitasking, le app sono fulminee e non ho avuto fin ora nessun FC apparte S-health... Però la domanda sorge spontanea: ora che non si necessita di tanta potenza(essendo gia precompilate le app; giusto?!); a che serve questo snap 805 ?
Usando ART, vi funzionano bene le app Amazon e Google Maps?
Ho provato a passarlo ad ART ma ad ogni riavvio almeno 36 applicazioni da aggiornare e quindi diversi minuti :(
Ciao a tutti. Qualcuno mi può spiegare come si fa a passare ad ART? Grazie.
Inviato dal mio SM-N910F usando Androidiani App
Salve, sono nuovo del Forum. Io personalmente sono due settimane che sono passato ad Art ( ho un Note 4 ). E' vero quando accendi il device ci vuole molto tempo perché il telefono ottimizzi le applicazioni, la prima volta erano 368 e adesso ogni volta che riavvio o riaccendo sono sempre 168. Quando fa questa ottimizzazione consuma parecchia batteria, infatti scalda anche leggermente. Quindi credo che se sei una persona che riavvia parecchio il terminale, sia una cosa molto sgradevole. Se invece come me, riavvi il terminale pochissime volte e cioè solo se resti senza batteria oppure la cambi, allora la cosa può essere interessante. Velocità più elevata sopratutto quando hai aperto tante cose assieme e per me cosa importantissima, incremento dell'autonomia della batteria. Non vorrei sembrare esagerato ma di un 30% credo si possa dire. Quando lo accendi no, consuma! Però le varie ricariche che effettui dopo senza spegnerlo, si rivelano molto meno frequenti perchè effettivamente consuma meno. E' vero S health crascia, però per me non è un problema, anzi se potessi toglierla ( non voglia fare il root per il momento), la toglierei.
Ora questo è quello che accade con il mio Note 4.
Saluti
Ma una volta che il note 4 avrà lollipop questo problema di lentezza in avvio con ART non dovrebbe più sussistere dato che se ho ben capito il runtime ART sara predefinito...
Dico bene?
Ecco, sarà interessante vedere con il passaggio definitivo a Lollipop, cosa succederà con le app utente ad ogni avvio...
No.. saranno le app ad adeguarsi ad ART, quindi sono o saranno tutte scritte per girare in ART
Buonasera raga, ho acquistato da alcuni giorni un Note 4 e vorrei sapere se davvero ne vale la pena cambiare runtime. Ad esempio la batteria dura sul serio un 30% in piú? L'avvio delle applicazioni é tanto piú veloce? Io spengo il telefono tutte le notti, mi é sembrato di capire che se cambio non é tanto pratico farlo...
Inviato dal mio SM-N910F usando Androidiani App
Ti conviene aspettare che aggiornino a Loliipop che ormai è imminente per questo device, e sarai in ART comunque
Qualcuno ha provato a passare ad ART dopo l'ultimo aggiornamento? C'è ancora il bug dell'ottimizzazione all'avvio?
Da quello che ho potuto leggere in giro c'è ancora, e si risolverà solo con Android 5.0
io ho il note 4 da una settimana e oggi ho provato a settare l'art....purtroppo all'avvio le app utente le ottimizza sempre, sono un tipo che spegne sempre il tel la notte quindi non potrei tenere il tel così(e android dopo qualche giorno comunque vuoi o no va riavviato secondo me) ottimizza più di 200 app sta una vita! peccato perché davvero il telefono cambia faccia! una scheggia in tutto! non te ne accorgi neanche apre le app all'istante :D
Avete provato se s healt funziona?
s health funziona perfettamente, ma purtroppo la continua ottimizzazione delle app consuma un 10% abbondante di carica, per me e' impossibile usare ART.
Spero che samsung rilasci lollipop alla svelta, sono soprattutto curioso di provare a scattare foto in RAW, quella che considero la vera novita' della nuova release.
si, ad ogni riavvio, durante l'uso non succede. Ieri, prima di tornare a dalvik ho acesso il telefono carico al 100% ed alla fine dell'ottimizzazione l'autonomia era scesa al 90% (ho circa 100 apk), troppo per giustificare l'uso di art...
Beh...se i vantaggi sono tanti basta fare il riavvio col note collegato alla ricarica...chiaramente se si riavvia come me una volta ogni tanto...
Ma per te si nota veramente differenza nella reattività,fluidità e nella durata della batteria con ART?
la differenza c'e', ma non ti aspettare un cambiamento drammatico, il note 4 e' gia' fluidissimo di suo, si parla di frazioni di secondo nell'apertura delle apk. Lato batteria non saprei dirti, io spengo il telefono tutte le notti e quindi l'autonomia mi veniva minata dall'ottimizzazione mattutina...
Allora...appena fatto il passaggio...riporto le prime impressioni a caldo (in tutti i sensi visto che il note in questa operazione scalda veramente tanto...)
tempo impiegato totale 25 m per ottimizzare 500 (?) app...batteria usata 19% (!)
per ora tutte le app che ho installato sembrano funzionare al 100% S-Healt compresa...
adesso ricarico al 100% poi iniziamo a vedere come si comporta...
Facci sapere come va di batteria fluidità e tutto
Attendiamo tue notizie