La principal diferencia es que el formato EXE no restringe el tamaño del ejecutable, en cambio el COM está restringido como máximo a ocupar un solo segmento de memoria (un espacio de memoria de 64 Kb); además hay que incluir los 256 bytes que ocupa el PSP.
Este límite fue dado en una época en la que esta cantidad de espacio era más que suficiente para poder realizar cualquier clase de tarea.
EXTENSIONES PERMITIDAS
.cpl, .exe, .dll, .ocx, .sys, .scr, .drv
SECCIONES DEL .EXE
El diagrama de un .exe sería:
ENCABEZADO MZ-DOS
SEGMENTO DOS
ENCABEZADO PE
TABLA DE SECCIONES
SECCIÓN 1
SECCIÓN 2
Y QUE PASA CON LOS .EXE DE .NET?
Este formato ha sido ampliado, recuerden no mejorado si no ampliado con unas características que soportan el CLR Common Lenguaje Runtime donde se añaden la cabecera CRL y datos CRL.
Osea cuando ejecutamos el .exe el cargador del sistema operativo le da lugar al CRL mediante la tabla de PE/COFF una vez hecho eso se carga al cabecera y los datos a ejecutar, donde la CRL contiene dos segmentos importantes:
-- CÓDIGO DE METADATOS
-- CÓDIGO CRL IL
Recordando amigos que el formato PE .exe es usado también en otros sistemas operativos como REACTOS y ha sido utilizado este formato PE en SKYOS BEOS quedando en conocimiento de ustedes que estos últimos cambiaron su formato a ELF.
También podemos comentar que en UNIX de 32 bits solo algunos binarios pueden ser usados con wine y no se nos puede olvidar MAC OS tiene la capacidad de ejecutar archivos PE, pero recuerden no es compatible en sentido binario.
Bueno amigos un pequeño breviario de lo que es un .EXE, mas información estamos a sus ordenes.
Saludos
Li. Rodolfo H. Baz
www.rodolfohbaz.net
No hay comentarios:
Publicar un comentario