Compilacion

Páginas: 12 (2888 palabras) Publicado: 22 de marzo de 2012
Tema 3. Compilación y enlazado de programas
Contenidos
3.1 Introducción. 3.2 Modelos de memoria de un proceso. 3.3 Ciclo de vida de un programa. 3.3.1 Compilación. 3.3.2 Enlazado. 3.3.3 Carga y ejecución. 3.4 Formato de archivos objetos y ejecutables. 3.5 Bibliotecas 3.6 Ejemplo del ciclo de vida de un programa. 3.7 Automatización del Proceso de Compilación y Enlazado. Herramientas y Entornos .Fundamentos del Software 1er Curso de Grado en Ingeniería Informática

Objetivos
• Identificar los elementos que intevienen en la gestión de memoria. • Conocer las necesidades de memoria de los procesos. • Saber que pasos se dan en la conversión de un programa fuente en un ejecutable, y quién los realiza. • Conocer posibles formatos de archivos objetos y ejecutable, en especial, ELF. •Reconocer los diferentes tipos de bibliotecas y cómo se construyen. • Identificar diferentes mecanismos para automatizar el proceso de compilacón y enlazado de un programa.

Bibliografía básica [Levi00] [Carr07] John R. Levine, Linkers & loader, Morgan Kaufman, 2000. Disponible en la dirección: http://www.iecc.com/linker/ . J. Carretero, F. García, P. de Miguel, F. Pérez, Sistemas Operativos (2ªEdición), McGraw-Hill, 2007. Capitulo 5.
3-Nov-2010

DEPARTAMENTO DE _______________________________________

LENGUAJES Y SISTEMAS INFORMÁTICOS

1

3.1 Introducción

Fundamentos del Software 1er Curso de Grado en Ingeniería Informática

Introducción

• Elementos responsables de la gestión de memoria:  Lenguaje de programación.  Compilador.  Enlazador.  Sistema operativo  MMU –Memory Management Unit.

DEPARTAMENTO DE _______________________________________

LENGUAJES Y SISTEMAS INFORMÁTICOS

2

3.1 Introducción

Fundamentos del Software Tema 3. Compilación y enlazado

Niveles de la gestión de memoria

• Nivel de procesos – reparto de memoria entre los procesos. Responsabilidad del SO. • Nivel de regiones – distribución del espacio asignado a un proceso alas regiones del mismo. Gestionado por el SO. • Nivel de zonas- reparto de una región entre las diferentes zonas de esta. Gestión del lenguaje de programación con soporte del SO.

DEPARTAMENTO DE _______________________________________

LENGUAJES Y SISTEMAS INFORMÁTICOS

3

3.1 Introducción

Fundamentos del Software Tema 3. Compilación y enlazado

Necesidades de memoria de un proceso• Tener un espacio lógico independiente. • Espacio protegido del resto de procesos. • Posibilidad de compartir memoria. • Soporte a diferentes regiones. • Facilidades de depuración. • Uso de un mapa amplio de memoria. • Uso de diferentes tipos de objetos de memoria. • Persistencia de datos. • Desarrollo modular. • Carga dinámica de módulos.

DEPARTAMENTO DE_______________________________________

LENGUAJES Y SISTEMAS INFORMÁTICOS

4

3.2 Modelos de memoria de un proceso

Fundamentos del Software Tema 3. Compilación y enlazado

Modelo de memoria

Estudiaremos aspectos relacionados con la gestión del mapa de memoria de un proceso, desde la generación del ejecutable a su carga en memoria: ● Nivel de región ● Nivel de zona ● Para ello veremos: ● Implementación de tipos deobjetos necesarios por un programa ● Ciclo de vida de un programa ● Estructura de un ejecutable ● Bibliotecas

DEPARTAMENTO DE _______________________________________

LENGUAJES Y SISTEMAS INFORMÁTICOS

5

3.2 Modelo de memoria de un proceso

Fundamentos del Software Tema 3. Compilación y enlazado

Tipos de datos

Datos estáticos: ● Globales ● Constantes o variables ● Con o sin valorinicial – direccionamiento relativo: PIC ● Datos dinámicos asociados a la ejecución de una función: ● Se almacenan en pila en un registro de activación (contiene variables locales, parámetros, dirección de retorno) ● Datos dinámicos controlados por el programa – heap.


DEPARTAMENTO DE _______________________________________

LENGUAJES Y SISTEMAS INFORMÁTICOS

6

3.2 Modelo de memoria...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • compilacion
  • guitarra- compilacion
  • Proceso de compilación y estructura de compilación de jcreator
  • Compilacion Condicional
  • Compilacion Justinianea
  • Monografias de compilacion
  • Compilacion de Tuits
  • Compilacion de bar

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS