fbpx
Wikipedia

Common Object File Format

El formato COFF, también llamado Common Object File Format, es una especificación de formato para archivos ejecutables, código objeto y bibliotecas compartidas, usada en sistemas Unix. Se introdujo en Unix System V, remplazando al formato a.out usado anteriormente, y constituyó la base para especificaciones extendidas como XCOFF y ECOFF, antes de ser reemplazado en gran medida por ELF, introducida por SVR4. COFF y sus variantes siguen siendo usados en algunos sistemas Unix-like, en Microsoft Windows, en entornos EFI y en algunos sistemas de desarrollo embebidos.

COFF
Desarrollador
AT&T Corporation
Información general
Extensión de archivo ninguna, .o
Tipo de formato Binario, executable, object, shared libraries
Extendido a XCOFF, ECOFF, Portable Executable
Formato abierto ?

Historia

El formato de archivo de objeto original de Unixa.out— no era capaz de soportar adecuadamente bibliotecas compartidas (shared libraries), identificación de formatos extraños o enlazado explícito de direcciones. Como el desarrollo de los sistemas Unix-like continuaba tanto dentro como fuera de AT&T, surgieron diferentes soluciones a este y otros temas.

COFF fue introducido en UNIX System V de AT&T para las plataformas de 32 bits no-VAX, como el 3B20. COFF implicó mejoras con respecto al formato a.out, incluyendo secciones arbitrarias (de memoria), declaraciones explícitas de procesador, y la vinculación de direcciones explícita.

Sin embargo, el diseño de COFF era limitado e incompleto: había un límite en el número máximo de secciones, un límite en la longitud de los nombres de sección incluyendo archivos fuente, y la información simbólica de depuración era incapaz de soportar lenguajes como C, y mucho menos lenguajes más nuevos como C++ o de soportar nuevos procesadores. Como resultado de esto, en el mundo real, todas las implementaciones de COFF necesariamente fueron violaciones de los estándares. Esto condujo a numerosas extensiones COFF. IBM usó el formato XCOFF en su sistema operativo AIX. DEC, SGI y otros usaron ECOFF. Numerosas adaptaciones de SysV y herramientas de desarrollo para sistemas empotrados utilizaron sus propias variaciones, normalmente incompatibles entre ellas.

Con el lanzamiento de SVR4, AT&T remplaza COFF con ELF.

Mientras que las versiones extendidas de COFF se siguen utilizando en algunas plataformas tipo Unix, principalmente en sistemas embebidos, quizás el uso más extendido del formato COFF hoy en día está en el formato Portable Executable (PE) de Microsoft. Desarrollado para Windows NT, el formato PE (a veces escrito como PE/COFF) usa una cabecera COFF para archivos objeto, y como un componente de la cabecera de PE para archivos ejecutables.[1]

Características

La mejora más importante que trajo COFF sobre a.out fue la introducción de múltiples secciones con nombre en el archivo objeto. Diferentes archivos objeto pueden tener diferentes números y tipos de secciones.

Información de depuración simbólica

La información de depuración simbólica en los archivos COFF consta de (cadenas de) nombres simbólicos para las funciones y variables del programa, así como la información del número de línea, utilizada para establecer puntos de interrupción y rastreo de ejecución.

Los nombres simbólicos son almacenados en la tabla de símbolos de COFF. Cada elemento de la tabla incluye un nombre, clase de almacenamiento, tipo, valor y número de sección. Los nombres cortos (de 8 caracteres o menos) se almacenan directamente en la tabla de símbolos, y los nombres largos se almacenan como un desplazamiento dentro de la tabla de cadenas de caracteres, al final del objeto COFF.

Dirección virtual relativa

Cuando se genera un archivo COFF, no se sabe con certeza adónde será cargado en memoria. La dirección virtual en la que se cargará el primer octeto del archivo se denomina dirección base de la imagen. El resto del archivo no será necesariamente cargado en bloques contiguos, pero sí en diferentes secciones.

Véase también

Referencias

  1. Microsoft Corporation (2006b), Common Object File Format (COFF) (Revisión 4.1 edición), consultado el 2 de junio de 2007 .

Bibliografía

  • Gircys, Gintaras (1988). Understanding and Using COFF (en inglés). O'Reilly and Associates. ISBN 0-937175-31-5. 
  •   Datos: Q856364

common, object, file, format, formato, coff, también, llamado, especificación, formato, para, archivos, ejecutables, código, objeto, bibliotecas, compartidas, usada, sistemas, unix, introdujo, unix, system, remplazando, formato, usado, anteriormente, constituy. El formato COFF tambien llamado Common Object File Format es una especificacion de formato para archivos ejecutables codigo objeto y bibliotecas compartidas usada en sistemas Unix Se introdujo en Unix System V remplazando al formato a out usado anteriormente y constituyo la base para especificaciones extendidas como XCOFF y ECOFF antes de ser reemplazado en gran medida por ELF introducida por SVR4 COFF y sus variantes siguen siendo usados en algunos sistemas Unix like en Microsoft Windows en entornos EFI y en algunos sistemas de desarrollo embebidos COFFDesarrolladorAT amp T CorporationInformacion generalExtension de archivoninguna tt o tt Tipo de formatoBinario executable object shared librariesExtendido aXCOFF ECOFF Portable ExecutableFormato abierto editar datos en Wikidata Indice 1 Historia 2 Caracteristicas 2 1 Informacion de depuracion simbolica 2 2 Direccion virtual relativa 3 Vease tambien 4 Referencias 5 BibliografiaHistoria EditarEl formato de archivo de objeto original de Unix a out no era capaz de soportar adecuadamente bibliotecas compartidas shared libraries identificacion de formatos extranos o enlazado explicito de direcciones Como el desarrollo de los sistemas Unix like continuaba tanto dentro como fuera de AT amp T surgieron diferentes soluciones a este y otros temas COFF fue introducido en UNIX System V de AT amp T para las plataformas de 32 bits no VAX como el 3B20 COFF implico mejoras con respecto al formato a out incluyendo secciones arbitrarias de memoria declaraciones explicitas de procesador y la vinculacion de direcciones explicita Sin embargo el diseno de COFF era limitado e incompleto habia un limite en el numero maximo de secciones un limite en la longitud de los nombres de seccion incluyendo archivos fuente y la informacion simbolica de depuracion era incapaz de soportar lenguajes como C y mucho menos lenguajes mas nuevos como C o de soportar nuevos procesadores Como resultado de esto en el mundo real todas las implementaciones de COFF necesariamente fueron violaciones de los estandares Esto condujo a numerosas extensiones COFF IBM uso el formato XCOFF en su sistema operativo AIX DEC SGI y otros usaron ECOFF Numerosas adaptaciones de SysV y herramientas de desarrollo para sistemas empotrados utilizaron sus propias variaciones normalmente incompatibles entre ellas Con el lanzamiento de SVR4 AT amp T remplaza COFF con ELF Mientras que las versiones extendidas de COFF se siguen utilizando en algunas plataformas tipo Unix principalmente en sistemas embebidos quizas el uso mas extendido del formato COFF hoy en dia esta en el formato Portable Executable PE de Microsoft Desarrollado para Windows NT el formato PE a veces escrito como PE COFF usa una cabecera COFF para archivos objeto y como un componente de la cabecera de PE para archivos ejecutables 1 Caracteristicas EditarLa mejora mas importante que trajo COFF sobre a out fue la introduccion de multiples secciones con nombre en el archivo objeto Diferentes archivos objeto pueden tener diferentes numeros y tipos de secciones Informacion de depuracion simbolica Editar La informacion de depuracion simbolica en los archivos COFF consta de cadenas de nombres simbolicos para las funciones y variables del programa asi como la informacion del numero de linea utilizada para establecer puntos de interrupcion y rastreo de ejecucion Los nombres simbolicos son almacenados en la tabla de simbolos de COFF Cada elemento de la tabla incluye un nombre clase de almacenamiento tipo valor y numero de seccion Los nombres cortos de 8 caracteres o menos se almacenan directamente en la tabla de simbolos y los nombres largos se almacenan como un desplazamiento dentro de la tabla de cadenas de caracteres al final del objeto COFF Direccion virtual relativa Editar Cuando se genera un archivo COFF no se sabe con certeza adonde sera cargado en memoria La direccion virtual en la que se cargara el primer octeto del archivo se denomina direccion base de la imagen El resto del archivo no sera necesariamente cargado en bloques contiguos pero si en diferentes secciones Vease tambien EditarAnexo Comparacion de formatos de archivos ejecutablesReferencias Editar Microsoft Corporation 2006b Common Object File Format COFF Revision 4 1 edicion consultado el 2 de junio de 2007 Bibliografia EditarGircys Gintaras 1988 Understanding and Using COFF en ingles O Reilly and Associates ISBN 0 937175 31 5 Datos Q856364 Obtenido de https es wikipedia org w index php title Common Object File Format amp oldid 141237137, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos