Portable Executable
# Portable Executable

Portable Executable (PE) é um formato de arquivos executáveis, código objeto e DLLs usado no Windows.

## Descrição

O termo portable (portátil) refere-se a portabilidade sobre todos os sistemas operacionais Windows (em ambas versões de 32 e 64 bits). O formato PE é basicamente uma estrutura de dados que encapsula a informação necessária para que o carregador do sistema Windows possa manipular o código executável que está empacotado. Isso inclui biblioteca dinâmica de referências para linking, exportação e importação de API, dados de administração de recursos, dados de thread-local storage (TLS).
Nos sistemas operacionais Windows NT, o PE é usado para EXE, DLL, OBJ, SYS, e outros tipos de arquivos. A especificação Extensible Firmware Interface (EFI) diz que o PE é um padrão de formato executável nos ambientes EFI. PE é uma versão modificada do formato COFF do Unix. PE/COFF é um termo alternativo.
Sobre Windows NT, o PE suporta atualmente a arquitetura de conjunto de instruções IA-32 (x86), IA-64 (Itanium) e x86-64 (AMD64 e Intel64). Antes do Windows 2000, o Windows NT suportava conjunto de instruções MIPS, DEC Alpha e PowerPC. Devido ao fato de que o PE é suportado pelo Windows CE, algumas variantes dos conjuntos de instruções do MIPS e a arquitetura do ARM (incluindo Thumb) e a arquitetura SuperH são suportados.

## Termos relacionados

* Executável
* Elf (Informática)
* A.out
* Código objeto