Portable Executable | ||
---|---|---|
Desarrollador | ||
Microsoft | ||
Información general | ||
Extensión de archivo |
.cpl, .exe, .dll, .ocx, .sys, .scr, .drv | |
Tipo de MIME | application/vnd.microsoft.portable-executable, application/x-msdownload y application/efi | |
Uniform Type Identifier | com.microsoft.windows-executable | |
Número mágico |
MZ | |
Tipo de formato | Binario, ejecutable, código objeto, bibliotecas compartidas | |
Extendido de |
DOS MZ executable, COFF | |
Estándar(es) | Microsoft PE and COFF Specification (ver. 8) | |
Formato abierto | ? | |
El formato Portable Executable (PE) es un formato de archivo para archivos ejecutables, de código objeto, bibliotecas de enlace dinámico (DLL), archivos de fuentes FON,[1] y otros usados en versiones de 32 bit y 64 bit del sistema operativo Microsoft Windows. El término «portable» refiere a la versatilidad del formato en numerosos ambientes de arquitecturas de software de sistema operativo.[2] El formato PE es una estructura de datos que encapsula la información necesaria para el cargador de Windows para administrar el código ejecutable que le envuelve. Esto incluye las referencias hacia las bibliotecas de enlace dinámico para el enlazado, la importación y exportación de las tablas de la API, gestión de los datos de los recursos y los datos de almacenamiento local de subprocesos (datos de TLS). En sistemas operativos basados en Windows NT, el formato PE es usado para EXE, DLL, SYS (controladores de dispositivo), y otros tipos de archivo. La especificación Extensible Firmware Interface (EFI) indica que PE es el formato estándar para ejecutables en entornos EFI.
PE es una versión modificada del formato COFF de Unix. Además, PE/COFF es un nombre alternativo en el desarrollo de Windows.
En sistemas operativos Windows NT, actualmente PE soporta los conjuntos de instrucciones (ISA) de IA-32, IA-64, y x86-64 (AMD/Intel64). Previo a Windows 2000, Windows NT (y por tanto PE) soportaban los conjuntos de instrucciones MIPS, DEC Alpha y PowerPC. Ya que PE es usado en Windows CE, este continua soportando diversas variantes de las arquitecturas MIPS, ARM (incluyendo a Thumb), y SuperH.
Los principales competidores de PE son ELF (usado en Linux y muchos otros sistemas tipo Unix) y Mach-O (usado en Mac OS X).