Eseguibile EXE

Eseguibile EXE
Estensione.exe
Tipo MIMEapplication/vnd.microsoft.portable-executable
SviluppatoreMicrosoft
Formato aperto?No

L'estensione EXE identifica, nei sistemi operativi MS-DOS, OS/2 e Windows, un file che contiene codice eseguibile, cioè un programma o un driver di dispositivo. Oltre alle istruzioni di codice eseguibile, i file EXE contengono di solito anche i dati e le risorse (immagini, testi, icone ecc.) necessarie all'interfaccia grafica o in generale al funzionamento del codice.

Formati di file eseguibili

Sotto la generica estensione EXE si possono trovare in realtà molti formati eseguibili diversi di cui i più comuni sono:

MS-DOS

  • Eseguibile DOS MZ a 16 bit: è il più comune formato di file eseguibile per DOS, identificato dalle due lettere "MZ" all'inizio del file che rappresentano i marcatori del tipo di eseguibile. Può contenere solo codice a 16 bit e può girare sia sotto DOS sia sotto le varie versioni di Windows, ma non su quelle a 64 bit. È supportato anche da OS/2.
  • New Executable a 16 bit: fu introdotto con il Multitasking MS-DOS 4.0, ma non divenne mai popolare. È identificato dalla due lettere "NE" a inizio file e può contenere solo codice a 16 bit.

OS/2

  • Linear Executable a 32 bit: il formato di file eseguibile canonico di OS/2 dalla versione 2.0 in poi. È identificato dalle due lettere "LX" all'inizio del file. Viene usato anche da alcuni DOS extender.
  • Mixed 16/32 bit Linear Executable a 16/32 bit: introdotto con OS/2 2.0, venne poi abbandonato nelle versioni successive. Può contenere insieme parti di codice a 16 e a 32 bit. È il formato di file dei driver VxD di Windows 3.x e Windows 9x e anche questo può essere eseguito da alcuni DOS extender.

Windows

  • Portable Executable a 32 bit: fu introdotto con Windows NT ed è diventato poi il formato di file canonico per tutti i programmi Windows a 32 bit. È un formato complesso e molto sofisticato: per garantire la compatibilità incorpora un piccolo programma DOS, detto stub, che si trova all'inizio del file. Il vero file eseguibile inizia subito dopo lo stub, con le due lettere "PE" che identificano il formato.
  • Portable Executable a 64 bit: è la versione adattata per codice eseguibile a 64 bit. Può essere eseguita solo dalle versioni di Windows a 64 bit, ma non da quelle a 32 bit.

Altri formati

Oltre a questi, esistono alcuni particolari formati eseguibili come il W3 (un gruppo di file LE, usato solo nel file WIN386.EXE), il W4 (un gruppo di file LE compressi, usato solo nel file VMM32.VXD), i formati DL, MP, P2, P3 (gli ultimi tre usati da Phar Lap extender) e probabilmente altri.

Formati e compatibilità

Molti formati eseguibili avanzati incorporano uno stub DOS, cioè un programma DOS minimale; quindi anche i file in formato LX e PE iniziano sempre con le due lettere "MZ" del vecchio formato DOS: se si esegue sotto DOS un programma per Windows, il DOS caricherà ed eseguirà lo stub che mostrerà a video un messaggio di errore e poi terminerà. Invece i sistemi operativi Windows o OS/2 non caricheranno lo stub DOS e inizieranno il caricamento dalla locazione del file successiva allo stub, dov'è presente l'identificatore "PE" o "LX".

Voci correlate

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica