Deprecated: Creation of dynamic property Timber\Site::$pingback is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Site.php on line 180

Deprecated: Creation of dynamic property Timber\User::$name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/User.php on line 118

Deprecated: Creation of dynamic property Timber\Post::$has_disclaimer is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_lock is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_edit_last is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_meta_box_present is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_send_notification is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_modify_title_and_content is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_notification_custom_heading is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$onesignal_notification_custom_content is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskw is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_linkdex is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_content_score is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_focuskeywords is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_keywordsynonyms is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_estimated-reading-time-minutes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_wordproof_timestamp is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_tipologia is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_attributi is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_in_evidenza_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_inviato_in_newsletter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_category is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_blz_affiliation_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_content_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_attributes is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_primary_speciali is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_wpseo_metadesc is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_thumbnail_id is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$response_body is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_yoast_indexnow_last_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_oembed_17097882e6d8d1791ecb17ea10a8d7c8 is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_oembed_time_17097882e6d8d1791ecb17ea10a8d7c8 is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$newsletter_subject is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_newsletter_subject is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$newsletter_summary is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$_newsletter_summary is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_date_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$ping_status is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_password is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_name is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$to_ping is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$pinged is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_modified_gmt is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_content_filtered is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$guid is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$menu_order is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$post_mime_type is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$comment_count is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71

Deprecated: Creation of dynamic property Timber\Post::$filter is deprecated in /var/www/html/web/app/themes/ilsoftware/vendor/timber/timber/lib/Core.php on line 71
Programmi Windows su Android: ecco come eseguirli | IlSoftware.it

Programmi Windows su Android: ecco come eseguirli

Due applicazioni open source, che basano il loro funzionamento su Wine e Box86/Box64, permettono di portare i programmi Windows su Android ed eseguirli così come se si trovassero sulla piattaforma nativa di casa Microsoft.

Eseguire su un diverso sistema operativo un’applicazione che nasce per un’altra piattaforma, non è propriamente una passeggiata. Per avviare le applicazioni su una piattaforma diversa da quella nativa si possono usare diverse soluzioni: virtualizzazione, emulazione, containerizzazione, layer di compatibilità e, in alcuni casi, ambienti di esecuzione intermedi. Portare i programmi Windows su Android può rivelarsi utile in molteplici situazioni.

Innanzi tutto, si ha la possibilità di eseguire applicazioni Windows su una piattaforma diffusissima come Android senza la necessità di installare l’intero sistema operativo Microsoft. Eseguire programmi Windows su Android consente inoltre agli utenti di godere della flessibilità e della mobilità proprie dei device mobili, senza dover dipendere da un computer desktop oppure da un notebook.

Investire sulla compatibilità delle applicazioni Windows con Android consente di raggiungere una platea di utenti ancora più ampia. Microsoft sta da tempo cercando di costruire ponti verso il mondo Android. A parte lo storico progetto Mono incentrato su .NET, tuttavia, non esiste una soluzione ufficialmente supportata per portare i programmi Windows sui dispositivi del robottino verde.

Cos’è Wine e perché è un layer di compatibilità

Wine (Wine Is Not an Emulator) è un’applicazione open source che consente di eseguire applicazioni sviluppate per il sistema operativo Windows su sistemi Unix-like, come Linux e macOS. A differenza di un emulatore, Wine non emula l’intero ambiente Windows, ma fornisce un’implementazione a runtime dei componenti Windows necessari per eseguire le applicazioni sulle piattaforme non native.

Le applicazioni Windows interagiscono con il sistema operativo sfruttando le chiamate API (Application Programming Interface) specifiche del sistema operativo di casa Microsoft. Wine implementa le API in modo tale che quando un’applicazione Windows richiama una funzione specifica, il programma può fornire un risultato equivalente, eseguibile su un sistema operativo diverso da quello Microsoft. Ecco perché si parla di Wine come layer di compatibilità: le chiamate API istanziate dai programmi Windows sono tradotte in modo che il sistema operativo sottostante (diverso da Windows) possa comprenderle e gestirle adeguatamente.

Il bello di Wine, che ha ormai raggiunto un notevole livello di maturazione, è che le runtime disponibili ricoprono librerie e componenti di sistema di Windows. Si pensi, ad esempio, alle varie DLL (Dynamic Link Libraries) che costituiscono la spina dorsale dei programmi Windows, ai servizi di rete, ai driver dei dispositivi e così via. Wine fornisce anche dei registri di sistema virtuali, per consentire alle applicazioni Windows di interagire con questo importante componente.

Un layer di compatibilità come Wine si occupa anche di gestire l’interfaccia grafica e le modalità di input dei programmi Windows: è in grado di interfacciarsi con il sistema grafico del sistema operativo host per mostrare finestre, gestire tastiera, mouse, touchpad e altro ancora.

Come eseguire programmi Windows su Android usando software open source

Uno dei prodotti commerciali più noti che aiuta a eseguire i programmi Windows su Android si chiama CrossOver. Il software è una versione modificata di Wine e integra diversi interventi a livello di compatibilità, migliori per rendere l’applicazione più facile da usare e offre alcuni strumenti per la virtualizzazione.

winlator

winlator è una soluzione open source che sfrutta proprio Wine e Box86/Box64 per supportare il caricamento dei programmi Windows su Android. Wine lo conosciamo già; Box86/Box64 sono invece emulatori progettati per i dispositivi ARM64 che consentono di eseguire file binari x86 e x86_64 su tale piattaforma.

Box86 è progettato per eseguire binari x86 a 32 bit, mentre Box64 è la versione a 64 bit progettata per gli eseguibili x86-64.

Per usare winlator, basta scaricare il file APK da GitHub, effettuare il download del file main.3.com.winlator.obb quindi posizionarlo nella cartella /storage/emulated/0/Android/obb/com.winlator (da creare se non esiste). A questo punto è sufficiente avviare l’applicazione e attendere che la conclusione del processo d’installazione.

mobox

Un software open source che al momento assicura prestazioni superiori rispetto a winlator è mobox.

L’applicazione è progettata per eseguire applicazioni Windows in una finestra del terminale Linux su Android. Termux è un emulatore di terminale per Android che offre un ambiente Linux-like sui dispositivi mobili. Accanto ad esso, mobox utilizza i già citati Wine e Box64.

Per procedere, è necessario aver installato Termux, Termux-X11 e Input Bridge sul dispositivo Android in uso. A questo punto, è sufficiente aprire Termux e incollarvi il seguente comando:

curl -s -o ~/x https://raw.githubusercontent.com/olegos2/mobox/main/install && . ~/x

Scrivendo mobox all’interno di Termux, è possibile avviare immediatamente l’applicazione.

Wine può essere installato o disinstallato dal menu Manage packages. Inoltre si possono caricare componenti come Mesa VirGL, Turnip, Wine Mono e Gecko dal menu Start di Wine.

Ecco una breve spiegazione di Mesa VirGL, Turnip, Wine Mono e Gecko:

Mesa è una libreria grafica open source che fornisce implementazioni delle specifiche OpenGL, Vulkan e di altri driver grafici. VirGL è un progetto nato in seno a Mesa che mira a fornire un driver OpenGL per le macchine virtuali che utilizzano l’accelerazione hardware della GPU host.

Turnip è un driver open source per Vulkan destinato alle GPU Qualcomm Adreno mentre Wine Mono è un’implementazione open source del runtime .NET (Common Language Runtime – CLR) utilizzata per eseguire applicazioni .NET su sistemi operativi diversi da Windows. Wine utilizza Wine Mono per consentire l’esecuzione di applicazioni .NET su Linux e Android.

Infine, Gecko è il motore di rendering di Mozilla Firefox ed è utilizzato per supportare la corretta visualizzazione del contenuto delle pagine Web.

Credit immagine in apertura: iStock.com – juniorbeep

Ti consigliamo anche

Link copiato negli appunti