Loading AI tools
file che contiene un programma eseguibile per un computer Da Wikipedia, l'enciclopedia libera
Un file eseguibile (o semplicemente un eseguibile), in informatica, indica un file che contiene un programma eseguibile per un computer, ovvero un programma scritto in linguaggio macchina direttamente eseguibile dal processore: 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 interprete o trasformandolo prima in eseguibile (codice oggetto + librerie) tramite un compilatore, o con una combinazione di questi due strumenti.
In generale, gli eseguibili sono dipendenti dalla piattaforma: per esempio, un file eseguibile per un sistema Microsoft Windows non è direttamente utilizzabile in sistemi Unix o Mac OS (a meno di non usare un software di emulazione[1]).
Questa restrizione è dovuta a tre motivi:
Ogni sistema operativo ha una propria convenzione per distinguere i file eseguibili dai file che contengono dati. Alcuni sistemi utilizzano specifiche estensioni (per esempio ".exe
" in MS-DOS e Microsoft Windows); altri fanno riferimento a speciali attributi del file indicati nei suoi permessi (come il permesso "x
" di esecuzione dei sistemi Unix e Unix-like) 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, ovvero uno o più byte con valori prestabiliti collocati all'inizio del file che ne identificano il tipo, come nel caso dello shabang (questa idea è stata estesa ad altri sistemi operativi tra cui AmigaOS dove il magic number viene chiamato "magic cookie" o biscottino magico).
Normalmente, durante l'upload 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.
Viene realizzato in un dato formato, ed ha principalmente due scopi:
Il termine eseguibile viene talvolta utilizzato in senso esteso per riferirsi anche a tutti quei programmi che possono essere eseguiti senza una previa traduzione esplicita (compilazione) in linguaggio macchina.
In questo caso esso potrebbe essere applicato anche a:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.