WoW64 (Windows 32-bit on Windows 64-bit, in italiano windows 32 bit su windows 64 bit) è un sottosistema del sistema operativo Windows capace di far funzionare le applicazioni nate a 32 bit ed è incluso in tutte le versioni di Windows a 64 bit (incluso Windows XP Professional x64 Edition, Windows Server 2003 x64 Edition e Windows XP 64-bit Edition, Windows Vista, Windows Server 2008, Windows 7, Windows 8, Windows Server 2012, Windows 8.1 e Windows 10), mentre è un elemento opzionale per Windows Server 2008 R2 e Server Core, mentre non è compreso per le installazioni del tipo Nano Server delle versioni di Windows (da Windows Server 2016 in poi). WOW64 supplisce a tutte le differenze tra Windows a 32 ed a 64 bit, in particolare i cambiamenti strutturali dello stesso sistema operativo.

Il passaggio fra le librerie

modifica

Il sottosistema WOW64 è un layer di emulazione che ha un'interfaccia simile in tutte le versioni a 64 bit di Windows. Lo scopo primario è di creare un ambiente a 32 bit che consente alle applicazioni a 32 bit di girare come nel sistema a 64 bit. Tecnicamente, è stato realizzato usando tre librerie a collegamento dinamico normalmente chiamate (dynamic-link libraries) DLL: Wow64.dll, che è l'interfaccia principale dei kernel NT che traducono le informazioni dai 32 ai 64 bit, includendo pointer e stack manipulations; Wow64win.dll, che fornisce agli appropriati entry points (punti di entrata) per le applicazioni a 32 bit; e Wow64cpu.dll, che si occupa del passaggio del processore tra la modalità a 32 bit e quella a 64 bit.

Architetture

modifica

Malgrado le apparenti somiglianze con tutte le versioni a 64 bit di Windows, l'implementazione di Wow64 varia in base all'architettura del processore. Per esempio, la versione di Windows a 64 bit sviluppata per i processori Intel Itanium 2 usa la DLL "Wow64win.dll" per l'emulazione delle istruzioni x86 dentro il set unico di istruzioni di Itanium 2. Questo processo è più costoso in termini di calcolo delle funzioni di Wow64win.dll rispetto all'architettura AMD64/EMT64, dato che cambia il processore dalla modalità a 64 bit a quella a 32 quando è il momento di eseguire un thread a 32 bit, e poi lo ricambia nella modalità a 64 bit. Per WOW64 non è richiesta alcuna emulazione di istruzioni su processori AMD64 ed EMT64.

Il registro ed il file system

modifica

Il sottosistema Wow64 si occupa anche di altri aspetti primari del funzionamento delle applicazioni a 32 bit. Per esempio, esso è coinvolto nella gestione delle interazioni delle applicazioni a 32 bit con il registro di sistema di Windows, che è piuttosto differente nella versione del sistema operativo a 64 bit, e nel fornire un'interfaccia alla memoria del sottosistema. Il sistema operativo usa la directory %SystemRoot%\system32 per le sue librerie e per i suoi file eseguibili. Quando sono in esecuzione applicazioni a 32 bit, WOW64 ridireziona le richieste per le DLL da questa directory alla %SystemRoot%\sysWOW64, che contiene vecchi eseguibili e le vecchie librerie.

Voci correlate

modifica

Collegamenti esterni

modifica
  • (EN) Windows On Windows 64, su blogs.msdn.com.
  • (EN) What's So Great for Developers About the AMD64?, su devx.com. URL consultato il 13 marzo 2006 (archiviato dall'url originale il 9 febbraio 2006).
  • (EN) First Look: Windows XP 64-Bit Edition for AMD64 [collegamento interrotto], su gamepc.com.
  Portale Microsoft: accedi alle voci di Wikipedia che trattano di Microsoft