1. ESCUELA DE INGENIERÍA
SEMESTRE ABRIL – AGOSTO 2021
COMPILADORES
ACTIVIDAD EN CLASES N° 18
Fecha: 24-06-2021
NOMBRE: Bryan Chasiguano
Realizar las siguientes actividades:
Contestar las siguientes preguntas relacionadas a la gestión de memoria en tiempos
de ejecución.
Dentro de la organización de memoria en el tiempo de ejecución para datos, ¿en
qué aspectos se divide básicamente?
Memoria estática
La pila
El montón (heap)
¿En qué consiste el almacenamiento estático y cuáles son sus técnicas para
ejecutar este almacenamiento?
Consiste en almacenar la información de forma permanente a partir de una
posición señalada por un puntero de referencia se aloja la variable X, avanzando
el puntero tanto bytes como sean necesarios para almacenarla. En ese momento,
el compilador sustituirá cualquier referencia a dicha variable por lado su dirección
asignada. Subsiguientes constantes o variables globales serán acomodadas en
memoria haciendo avanzar, de la misma manera, el puntero de referencia, hasta
que el compilador les asigne espacio de memoria a todas ellas.
En forma rápida describa, ¿cómo es el almacenamiento en los registros en la
estructura de una pila?
Reemplazando las variables estáticas en memoria, quedando la pila reservada
para reemplazar los registros de activación de los procedimientos en ejecución,
esta estructura varía de unos lenguajes a otros, e incluso de unos compiladores a
otros.
2. Describir las fases en el procedimiento de gestión pila cuando un procedimiento p
llama a otro procedimiento q.
1. Evalúa las expresiones de la llamada, usando su zona de variables temporales, y
su resultado de las expresiones de la llamada, se copia en la zona de parámetros
formales
2. Se usa la función llamado, que salva el estado de la máquina antes de comenzar
su ejecución, usando para ello la zona del registro de activación
Cuando se termina la ejecución del procedimiento llamado q, describa las dos
fases del procedimiento de desalojo de su registro de activación:
1. Se implementa con las instrucciones al final del procedimiento que acaba de
terminar en su ejecución. El procedimiento saliente(q) antes de finalizar, se coloca
el valor de retorno al principio de su registro de activación.-
2. Se realiza tras recobrar el control que se realizó en la llamada (p), al copiar el valor
devuelto por el procedimiento llamado (q) dentro de su propio registro de
activación
¿En qué consiste el almacenamiento denominado el Montón?
El almacenamiento consiste cuando el tamaño de un objeto a colocarse es
memoria varía o puede variar en tiempo de ejecución y no es posible ubicarlo en
memoria estática, y tampoco en la pila. Entonces se usa un área de memoria de
tamaño variable, que no se ve afectada por la activación o desactivación de
procedimientos.
Realizar un comentario personal sobre el funcionamiento que tiene la memoria en tiempo
de ejecución en el proceso de la de la compilación.
El funcionamiento debe ser tomado con gran seriedad debido a que la memoria en
tiempo de ejecución es importante para aumentar la eficiencia de los procesos a realizar
Una vez terminado el trabajo, la tarea debe ser subida un repositorio digital y luego
colocar de forma embebida en el blog personal de trabajo y enviar el enlace de
publicación al espacio virtual y presentar la dirección del blog en el campus virtual en el
enlace indicado hasta la hora descrita por su docente.