Emulazione API

Win4Lin permette di avviare Windows in un ambiente guest Linux. Tutto funziona discretamente bene, ma raggiunge le prestazioni di un'installazione nativa di Windows?

Avatar di Tom's Hardware

a cura di Tom's Hardware

Emulazione API

Il prodotto di TransGaming Technology, Cedega, permette agli utenti Linux di giocare a popolari titoli prodotti esclusivamente per Windows. Com'è possibile tutto questo? Attraverso il collegamento con applicazioni Windows-centriche (API, le librerie funzionali che servono come blocchi costruttivi all’intera suite di software) come Direct3D, DirectInput e DirectSound che si interfacciano con la piattaforma Linux  e  le librerie OpenGL,  X11 GUI framework, Open Sound System (OSS) e Advanced Linux Sound Architecture (ALSA).

Dissimilmente a un layer astratto che emula semplicemente le API Win32, un ambiente d’emulazione completo come Win4Lin rappresenta funzionalità OS separate in un ambiente guest creato interamente utilizzando risorse dell’OS host. Invece di presentare un approccio minimo e semplice alle funzionalità cross-platform, i prodotti VMware forniscono un numero di capacità più elevato. Sotto emulazione, un OS guest può essere manipolato e riavviato all'interno dell'OS host senza modificare i componenti software sottostanti.

Win4Lin O VMware?

Confezione Win4Lin Professional Desktop

La differenza primaria tra Win4Lin e VMware si condensa in: Win4Lin è un ambiente specializzato d’emulazione progettato per un uso semplice, l’installazione e la configurazione per l’unico fine di portare Windows all’interno di Linux. D’altra parte, VMware è progettato con un obbiettivo più generale: per emulare vari tipi di piattaforme OS, spesso fianco a fianco, in modo scalabile e flessibile. Conseguentemente, Win4Lin ha un overhead minore rispetto a VMware, sacrificando scalabilità e semplicità.

Win4Lin è basato sulla piattaforma popolare QEMU liberamente disponibile, la quale adopera la modalità utente per avviare cross-platform binarie e per un’emulazione hardware totale. Vmware utilizza il proprio framework d’emulazione e adopera tecniche proprietarie per raggiungere lo stesso obbiettivo: fornire  un sottosistema di un OS funzionale all’interno di un grandissimo contesto di risorse.