Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
File eseguibile - Wikipedia

File eseguibile

Da Wikipedia, l'enciclopedia libera.

In informatica, un file eseguibile, o semplicemente un eseguibile, è un file che contiene un programma eseguibile per un computer, ovvero un programma scritto in linguaggio macchina e quindi pronto per l'esecuzione. Si distingue da un file sorgente, che contiene un programma scritto in un linguaggio di programmazione ad alto livello, il quale può essere eseguito solo utilizzando un compilatore, un interprete, o una combinazione di questi due strumenti.

In generale, gli eseguibili dipendenti dalla piattaforma: per esempio, un file eseguibile per Windows non sarà utilizzabile su computer Unix o Macintosh (a meno di non usare un software di emulazione). Questa restrizione è dovuta a due motivazioni. Innanzitutto, a diversi processori sono spesso associati linguaggi macchina differenti. In secondo luogo, i programmi eseguibili devono far riferimento, per alcuni tipi di operazioni (per esempio l'input/output) a primitive fornite dal sistema operativo del computer su cui sono eseguiti. Di conseguenza, anche a parità di processore, un programma eseguibile sviluppato per un dato sistema operativo è in genere inutilizzabile su altre piattaforme. Per questo motivo, per esempio, gli eseguibili per i sistemi Windows non possono essere utilizzati in ambiente Linux, anche se queste due famiglie di sistemi operativi utilizzano la stessa classe di processori.

Ogni sistema operativo ha una propria convenzione per distinguere i file eseguibili dai file che contengono dati. Alcuni sistemi utilizzano una specifica estensione (per esempio ".exe" in MS-DOS/Windows); altri fanno riferimento a speciali attributi del file indicati nel suo descrittore (come il bit "x" di Unix) o richiedono uno speciale marcatore in una posizione prestabilita all'interno del file stesso: ancora su Unix, per esempio, congiuntamente al bit "x", viene utilizzato anche il cosiddetto magic number, un numero esadecimale posto all'inizio del file che ne indica esplicitamente il tipo (questa idea è stata estesa ad altri sistemi operativi).

Normalmente, durante il caricamento di un file eseguibile in memoria, il codice macchina viene sottoposto a un processo di rilocazione. In altre parole, tutti i riferimenti a indirizzi di memoria presenti nel codice vengono opportunamente traslati in funzione dell'indirizzo di base in cui il programma viene effettivamente caricato. Questo problema è mitigato dall’uso della memoria virtuale; può tuttavia essere necessaria la rilocazione delle librerie dinamiche.

[modifica] Altri usi

Il termine eseguibile viene talvolta utilizzato in senso esteso per riferirsi a tutti quei programmi che possono essere eseguiti senza una previa traduzione esplicita (compilazione). In questo caso esso potrebbe essere applicato anche a:

  • script scritti nel linguaggio dell'interprete dei comandi del sistema operativo, per esempio shell script per Unix/Linux o i cosiddetti comandi batch per MS-DOS/Windows
  • programmi sorgenti di linguaggi interpretati come Basic
  • programmi semi- (o pseudo-)compilati, ovvero tradotti dal compilatore in un codice di livello intermedio (non ancora linguaggio macchina) che deve essere eseguito attraverso un interprete, come avviene per esempio per Java, Visual Basic e .NET:
    • Il compilatore Java produce, a partire dal codice sorgente Java, una serie di file in un linguaggio intermedio detto bytecode. La macchina virtuale di Java esegue il bytecode occupandosi sia dell'interpretazione delle istruzioni che del link.
    • Il compilatore Visual Basic produce un eseguibile che contiene una piccola porzione di codice macchina eseguibile, con il solo compito di caricare la macchina virtuale Visual Basic, detta Visual Basic Runtime. Il resto del file contiene dati in codice intermedio che vengono interpretati dal Visual Basic Runtime.
    • Nella piattaforma Microsoft .NET, molto simile a Java, gli eseguibili sono compilati in un bytecode detto Microsoft Intermediate Language (MSIL), eseguito da una virtual machine detta Common Language Runtime. Gli ambienti di sviluppo moderni sono in grado di tradurre in MSIL numerosi linguaggi, tra cui C#, Visual Basic, Delphi e persino COBOL.

[modifica] Voci correlate

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com