Executável

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

Um programa executável ou arquivo executável, em informática, é um arquivo em que seu conteúdo deve ser interpretado como um programa por um computador.

Normalmente, eles possuem a representação binária das instruções de máquina de um processador específico, mas podem conter também uma forma intermediária que podem ser necessários serviços de um interpretador para executar.

Se um arquivo é um executável ou não é mais uma questão de convenção; alguns sistemas operacionais indicam arquivos executáveis pela convenção nominal (como por exemplo o nome do arquivo terminando com a extensão ".exe") ou anotado separado do arquivo na sua meta-informação (como os bits da permissão de executar em um sistema operacional tipo Unix).

Na maioria das arquiteturas modernas, um arquivo executável contém muitas informações que não fazem parte do programa em si, como por exemplo informações sobre o ambiente necessário para a execução do programa, informação simbólica e de depuração, ou outra informação usada pelo sistema operacional na preparação do programa a ser executado.

Os executáveis possuem chamadas aos serviços do sistema operacional além das instruções de máquina comuns. Isto significa que os executáveis normalmente são específicos a um sistema operacional além de serem específicos a um processador.

Hoje em dia, a distinção entre um programa na sua forma original (em linguagem humana) e em sua forma executável (em linguagem de máquina) está se tornando menos distinta, já que o ato de transformar a forma original no formato máquina (por compilação) ou a interpretação pode ser feito de modo implícito.

Desse modo, o significado do termo executável está geralmente sendo estendido de um arquivo que contém instruções de máquina para qualquer arquivo que possa ser executado pelo ambiente sem a necessidade de uma transformação explícita.

Arquivos contendo linguagem interpretada, por outro lado, são normalmente chamados de arquivos de script ou scripts em vez de executáveis.

Para uma lista de formatos de executáveis, veja as listas em arquivo objeto.