Η Google εξομαλύνει τη διαδρομή Android για υποστήριξη προσομοίωσης εφαρμογών ARM

Επιτρέπουν την εκτέλεση των δυαδικών αρχείων ARM για έλεγχο χωρίς την επιβάρυνση απόδοσης που απαιτεί την πλήρη προσομοίωση ARM, η οποία θα πρέπει να επιταχύνει τη διαδρομή των δοκιμών.
Προηγουμένως, λέει η εταιρεία, οι προγραμματιστές που εξαρτώνταν από τις βιβλιοθήκες ARM και δεν μπορούσαν να δημιουργήσουν μια παραλλαγή x86 της εφαρμογής τους, είτε έπρεπε να χρησιμοποιήσουν εικόνες συστήματος με πλήρη εξομοίωση ARM, οι οποίες είναι πολύ πιο αργές από τις εικόνες συστήματος x86, όταν εκτελούνται σε υπολογιστές που βασίζονται σε x86, ή να καταφεύγουν σε φυσικές συσκευές.
Συγκεκριμένα, υπάρχει τώρα υποστήριξη για ARMv7 και ARM64 ABIs.
Η παραπάνω εικόνα δείχνει τη νέα εικόνα συστήματος Android 11 x86 που υποστηρίζει ARM ABIs, τα οποία η προηγούμενη εικόνα του συστήματος "Oreo" του συστήματος δεν είχε.
ABI
Επειδή διαφορετικές συσκευές Android χρησιμοποιούν διαφορετικές CPU, αυτό συνεπάγεται την υποστήριξη διαφορετικών συνόλων εντολών.
Κάθε συνδυασμός CPU και συνόλου εντολών έχει τη δική του Δυαδική διεπαφή εφαρμογής (ABI), η οποία περιλαμβάνει πράγματα όπως το σετ εντολών της CPU και τις επεκτάσεις που μπορούν να χρησιμοποιηθούν, το endianness των καταστημάτων μνήμης και τα φορτία κατά το χρόνο εκτέλεσης, οι συμβάσεις για τη μετάδοση δεδομένων μεταξύ των εφαρμογών το σύστημα και τη μορφή των εκτελέσιμων προγραμμάτων και των κοινόχρηστων βιβλιοθηκών.
Συμβατό με ARM
"Οποιαδήποτε C ++ στην εφαρμογή Android σας μεταγλωττίζεται κατευθείαν στις οδηγίες μηχανής", λέει ο Michael Hazard, Associate Product Manager της Google. "Αυτό σημαίνει ότι πρέπει να καταρτιστεί διαφορετικά με βάση την αρχιτεκτονική της συσκευής προορισμού. Τα κινητά τηλέφωνα τείνουν να έχουν επεξεργαστές ARM. κατά συνέπεια, πολλές εξάρσεις C ++ που μπορείτε να προσθέσετε στην εφαρμογή σας, όπως μια βιβλιοθήκη σαρωτή γραμμωτού κώδικα κάμερας, είναι συμβατές μόνο με επεξεργαστές ARM. Αυτό είναι ένα πρόβλημα αν αναπτύξετε σε έναν υπολογιστή με επεξεργαστή που βασίζεται σε επεξεργαστή x86, καθώς θα σας αποτρέψει από την εκτέλεση της εφαρμογής σας. "
"Οι νέες εικόνες συστήματος συστήματος Android 11 συμβατών με ARM επιτρέπουν σε ολόκληρο το σύστημα να εκτελεί x86 εγγενώς και να εκμεταλλεύεται τις τεχνολογίες virtualization όπως συνήθως. Όταν η διαδικασία μιας εφαρμογής απαιτεί ένα δυαδικό αρχείο ARM, το δυαδικό μεταφράζεται αποκλειστικά σε x86. Αυτό επιτρέπει στην υπόλοιπη διαδικασία να συνεχίσει να εκτελείται σε x86, συμπεριλαμβανομένου του Android Runtime (ART) και άλλων βιβλιοθηκών κριτικής απόδοσης, όπως libGLES και libvulkan. "
Ο μεταφραστής θα αποφύγει επίσης τα ακριβά όργανα πρόσβασης σε μνήμη και η σχετική απόδοση που πλήττεται αποφεύγοντας την εκτέλεση βιβλίων χαμηλού επιπέδου υλικού, προσθέτει.
Οι νέες εικόνες του συστήματος εξομοιωτών μπορούν να χρησιμοποιηθούν τόσο τοπικά όσο και στη δική σας συνεχή υποδομή ολοκλήρωσης.
Δοκιμάστε ξανά το ARM

Η παραπάνω εικόνα δείχνει το Android Virtual Device Manager δημιουργώντας μια AVD (Εικονική συσκευή Android) που τρέχει το Android 11
Η Google παροτρύνει τους προγραμματιστές που έχουν αποφύγει στο παρελθόν το σύστημα εξομοιωτών λόγω της έλλειψης υποστήριξης ARM, δοκιμάστε τις εικόνες του συστήματος Android 11. Μπορούν να μεταφορτωθούν στο Android Studio είτε μέσω του SDK Manager είτε μέσω του Virtual Virtual Device Manager, ο οποίος συμπεριλαμβάνεται μαζί με το Android Studio, το IDE της Google.
Λάβετε υπόψη ότι η Android 11 Developer Preview 2 κυκλοφόρησε την περασμένη εβδομάδα και περιλαμβάνει υποστήριξη για επεξεργασία 5G και πτυσσόμενες οθόνες. Το Android 11 προγραμματίζεται να εμφανίζεται στο "Q3".
Δείτε επίσης: Google μάτια 5G, πτυσσόμενες οθόνες με Android 11 Προεπισκόπηση προγραμματιστών 2
