Eseguibile EXE

Da Wikipedia, l'enciclopedia libera.

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[modifica | modifica sorgente]

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

MS-DOS[modifica | modifica sorgente]

  • Eseguibile DOS MZ a 16 bit: questo è senz'altro il più comune formato di file eseguibile per DOS, ed è 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 che 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[modifica | modifica sorgente]

  • 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[modifica | modifica sorgente]

  • 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 programmino 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[modifica | modifica sorgente]

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à[modifica | modifica sorgente]

Come accennato sopra, molti formati eseguibili avanzati incorporano uno stub DOS, cioè un programmino 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 salteranno a piedi pari lo stub DOS e inizieranno il caricamento dalla locazione del file successiva allo stub, dove sarà presente l'identificatore "PE" o "LX".

Voci correlate[modifica | modifica sorgente]

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