-
Marisa Gil
Introducció als Sistemes Operatius 1
Gestión de la Memoria
1. Introducción2. Modelos de gestión del espacio físico3.
Memoria Virtual4. Otros modelos
BibliografíaSilberschat and Galvin
Sistemas Operativos. Conceptos fundamentales.Parte III:
Administración de almacenamiento
Introducción a los Sistemas Operativos
-
Marisa Gil
Introducció als Sistemes Operatius 2
Ideas a recapitular
• Todo lo que se ejecuta ha de estar en memoria principal•
Multiprogramación => varios procesos en memoria física• Todos
los procesos comparten el mismo espacio físico =>
• el SO ha de garantizar protección
• después de la CPU, la memoria es el recurso más importante
para gestionar
.C .EXE0
Mespacio de nombres espacio lógico del programa
espacio físico
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 3
Montaje de un fichero ejecutable
editor compilador montador
códigofuente(LAN)
códigoobjeto
códigoejecu-table
compilar
montar
DISCO
librerías con otrosmódulos objeto cargador
cargar enmemoriafísica
MEMORIA
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 4
Multiprogramación
• Cuánta memoria asignar a cada proceso• Equiparticiones
• Cantidad fija
• Cantidad variable
• Dónde ubicar a cada proceso• Momento de vincular la dirección
lógica a la física
• Vínculo estático/variable en ejecución
• Grado de multiprogramación• Número máximo de procesos que se
pueden cargar en memoria
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 5
MMU
Alguien se ha de encargar de:• direcciones lógicas iguales
convivan en el espacio físico sin problemas,
• exista protección entre procesos y para el SO,
• la gestión del espacio físico (libre y ocupado) sea
eficiente
GESTION DE LA MEMORIA
CPUMMU
@ lógica @ física
-
Marisa Gil
Introducció als Sistemes Operatius 6
Registro de reubicación
• También se conoce como Registro Base:• Contiene la dirección a
partir de la cual está cargado el programa
• El Sistema Operativo tiene su propio Registro de Reubicación
(RR)• Además, el SO pude saltarse si quiere el RR y generar
direcciones físicas
• utilizar el RR del programa de usuario
• generar directamente direcciones físicas
GESTION DE LA MEMORIA
CPU
MMU@ lógica @ física
@física(bypass del
circuíto)
-
Marisa Gil
Introducció als Sistemes Operatius 7
Registro de reubicación
• Fijo : lo inicializamos al principio y ya no se modifica en
todala ejecución del programa.REUBICACIÓN ESTÁTICA.
• Variable: puede modificarse su valor durante la ejecución deun
programa: un programa puede moverse en memoriadurante su
ejecución.REUBICACIÓN DINÁMICA.
GESTION DE LA MEMORIA
SO
0
P
RRS
RRU
RRS RRUmodo
PSW
bypass
CPU +@lógica @física
(inhibir el multiplexor)
0 00 11 01 1
RRU
RRS
Carga en memoria
-
Marisa Gil
Introducció als Sistemes Operatius 8
Protección
• Controlar por hardware que no se supere la zona de memoria
asignada
GESTION DE LA MEMORIA
RRU
RRSRRU
modo
CPU +@lógica @física
TAMAÑO
+
< sí
no
error
TAMAÑO
-
Marisa Gil
Introducció als Sistemes Operatius 9
Gestión del espacio (I)
• Buscar espacio libre para un programa en memoria física.•
Fragmentación: hay memoria suficiente, pero no un trozo de tamaño
adecuado.• Compactación: reorganizar la memoria libre agrupando
todo el espacio libre.
• Sólo es posible si hayreubicación dinámica.
• Costoso en tiempo: ver qué procesos son los más adecuados,
dónde hacer elhueco, parar los procesos,...
GESTION DE LA MEMORIA
a)b)
-
Marisa Gil
Introducció als Sistemes Operatius 10
Gestión del espacio (II):SWAPPING
• Utilizar un dispositivo de almacenamiento secundario (disco)
para aumentar elespacio físico.
• Aumenta, por tanto, el grado de multiprogramación.
• Sólo se pueden ejecutar los procesos en memoria física.
• Dependiendo del tipo de reubicación es más o menos eficiente y
útil.
GESTION DE LA MEMORIA
swap out swap in
a)
b)
b) Reubicación dinámica
a) Reubicación estática(única ubicación permitida)
-
Marisa Gil
Introducció als Sistemes Operatius 11
Gestión del espacio (y III):Modelos no contiguos
• ¿Podemos trocear un programa e ir metiendo los fragmentos en
los sitios libresque encontremos?
• Cada fragmento necesita un registro de reubicación
• Permite aprovechar el espacio sin necesidad de
compactación
• Modelos básicos:• Paginación
• Segmentación
GESTION DE LA MEMORIA
AB
C
RRA
RRC
RRB
-
Marisa Gil
Introducció als Sistemes Operatius 12
Paginación
• Se divide el EL del programa en bloques de igual tamaño• El
tamaño es fijo, definido por la arquitectura
• Cada bloque se llamapágina (o página lógica)• La última página
tendrá una parte no ocupada (fragmentación interna)
• La memoria física también se divide en trozos de igual tamaño•
Cada trozo se llamatrama (o página física)• Por simplicidad es del
mismo tamaño que la página (a veces, múltiplo)
• Cargar un programa en memoria significa encontrar un sitio
para cada página• En general, encontrar tantas tramas libres como
páginas ocupe
• Esta división en páginas es automática para la MMU• No existe
ninguna modificación en el espacio de direcciones lineal
• Es transparente al usuario, a los programas de traducción y a
la CPU
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 13
Paginación
GESTION DE LA MEMORIA
. . .
0
2n-1
CÓDIGO
DATOS
PILA
0000110001101100
0000110001101100
ESPACIO LÓGICO
@lógica
vista por la CPU
vista por la MMUpágina desplazamiento
. . .
. . .
ESPACIO FÍSICO
Reg. reubicación +
-
Marisa Gil
Introducció als Sistemes Operatius 14
Paginación
GESTION DE LA MEMORIA
@lógica
@física
n d
m d
. . .
. . .
MEMORIA
. . .
TABLA de PÁGINAS
2n-1
vvv
ii
iv
número de trama
-
Marisa Gil
Introducció als Sistemes Operatius 15
A tener en cuenta ...
• Existe una tabla de páginas por proceso• Sólo está activa la
del proceso que se está ejecutando
• Si el tamaño de la página es pequeño:• Habrá poca
fragmentación interna
• El número de páginas será grande (=> la TP será grande)
• La TP estará en memoria, no en la MMU (=> 2 accesos por
traducción)
• la MMU será barata: sólo mantiene la dirección de la TP
(RBTP)
• Si el tamaño de la página es grande:• Habrá mucha
fragmentación interna
• El número de páginas será pequeño (=> la TP será
pequeña)
• Si la TP cabe en la MMU, la traducción de direcciones será
rápida (1 acceso)
• la MMU será cara: mantiene la TP
• Tamaños comunes de páginas: 2K, 4K.
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 16
TLB (Translation Lookaside Buffer)
Objetivo: mejorar el rendimiento del acceso a memoria en
paginación
• Memoria cache con las PTE últimamente referenciadas.•
Asociativa:
• contiene la página lógica referenciada
• el procesador pregunta al mismo tiempo a todas las entradas
(hardware)
• 32, 48 entradas son valores habituales
William Stallings “Operating Systems”Cap. 5.3 Virtual
MemoryMaxwell McMillan, International Editions, 1992
GESTION DE MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 17
TLB (Translation Lookaside Buffer)
@lógica
@física
p d
t d
. . .
. . .
MEMORIA
TLB
n página
CPU
n. trama val. TLBhit
TLBmiss
TABLAde
PÁGINAS
desplazamiento
GESTION DE MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 18
Segmentación
• El EL del programa se construye en bloques• El tamaño máximo
de un bloque es fijo, definido por la arquitectura• Cada bloque se
llamasegmento
• El número de bloques que conforman el programa lo determina el
usuario• Cada trozo puede tener una semántica asociada (código,
datos,...)
• Se asocia memoria física a segmentos lógicos (segmentos
físicos)
• Cargar un programa en memoria significa encontrar un sitio
para cada segmento• Aparecefragmentación externa.
• Esta división en segmentos es competencia del programador• Se
definen en la construcción del ejecutable (programador,
compilador,...)
• El espacio de direcciones es de dos dimensiones, disperso.
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 19
Segmentación
. . .
0
2n-1
CÓDIGO
DATOS
PILA
0000000001101100
ESPACIO LÓGICO @lógica
segmentodesplazamiento
. . .
. . .
ESPACIO FÍSICO
Reg. reubicación +
0000010000000000
segmentodesplazamiento
0000000001101101
0000001111111111
... no existen
seg. de datos
seg. de código
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 20
Segmentación
2s-1
@lógica
@física
s d
MEMORIA
TABLA de SEGMENTOS
. . .
. . .
seg. de datos
seg. de código
@inicio segmento longitud
<
no
error+
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 21
A tener en cuenta
• Se elimina la fragmentación interna• Se soporta el crecimiento
dinámico de los segmentos• Protección/uso compartido• Desarrollo
modular de programación: entidades menores de programa
relaciona-
das lógicamenteMilan Milenkovic “Sistemas Operativos. Conceptos
y diseño”
McGraw Hill
• Es más costoso buscar espacio libre para cargar un programa•
Reaparece la fragmentación externa• Se gestiona la traducción a
partir de registros especiales (ej: DS, SS,...)• MMU cara
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 22
Modelos mixtos (I):Paginación segmentada
• El espacio lógico de un programa lo forman todas las posibles
direcciones• El tamaño real de un programa es generalmente mucho
más pequeño
• Muchas páginas no llegan a utilizarse
• Sólo un pequeño número de entradas de la tabla de páginas se
accede
IDEA: Mantener sólo los grupos de páginas utilizadas por un
programa,dividiendo la tabla de páginas en segmentos.
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 23
Paginación segmentada
GESTION DE LA MEMORIA
@lógica
@física
. . .
. . .
MEMORIA
T. de PÁGINAS
vvv
ii
trama
en qué tabla de páginas?
stp dtp
@tabla
+
T. de PÁGINAS
vvv
i
trama
T. DE SEGMENTOS
-
Marisa Gil
Introducció als Sistemes Operatius 24
Modelos mixtos (II):Segmentación paginada
• Los segmentos son de tamaño variable y generan fragmentación
externa• Cargar los segmentos en memoria es una operación
“costosa”
• Puede no haber espacio contiguo para un segmento
• De todos los trozos de memoria libre hay que buscar el
“adecuado”
IDEA: Los segmentos son conjuntos de páginas y cargar un
segmento esbuscar tantas tramas libres como páginas lo
componen.
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 25
Segmentación paginada
@lógica
@física
. . .
. . .
MEMORIA
T. de PÁGINAS
vvv
ii
trama
en qué página?
ps ds
@tablaT. de PÁGINAS
vvv
i
trama
T. DE SEGMENTOS
+
GESTION DE LA MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 26
Memoria Virtual
Definición:Conjunto de mecanismos y técnicas, hardware y
software, que permiten la ejecu-
ción de programas que no están enteramente cargados en
memoria.
• Basta que éste en memoria la parte (código datos, pila) con la
que se está traba-jando actualmente.
• Hay que tener localizable y directamente accesible el resto
del programa, paracargarlo cuando sea referenciado:MEMORIA
SECUNDARIA .
VentajasPermite aumentar el grado de multiprogramaciónReduce el
tiempo de carga de los programas
GESTION DE MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 27
Implementación de la memoria virtual
• Modelo de memoria no contiguo (paginación o segmentación)•
Mecanismos hardware para detectar que una dirección lógica no está
presente
• Bit de presencia
• Mecanismos software y hardaware para gestionar la E/S del
programa• FALLO DE PÁGINA (interrupción)
• Almacenamiento secundario donde está el programa íntegro•
Memoria secundaria (disco, generalmente): ÁREA DE PAGINACIÓN
GESTION DE MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 28
A tener en cuenta....
• Carga inicial del programa• Paginación bajo demanda
• Prefetch
• Número de páginas que se asigna a cada programa• Reemplazo de
páginas si la memoria física ya está toda llena• Hiperpaginación
(THRASHING)
utilizaciónde la CPU
Grado de multiprogramación
thrashing
GESTION DE MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 29
Principio de localidad
Localidad espacial:Alta probabilidad de referenciar una
dirección cercana a la actual
Localidad temporalAlta probabilidad de referenciar la dirección
actual en un intervalo corto de tiempo
GESTION DE MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 30
A tener en cuenta ...
• El área de paginación es aconsejable que sea tres veces la
memoria física• Programar con una buena localidad:
• datos locales,
• organización rutinas,
• bucles...
• Tamaño de la página: compromiso entre tiempo E/S y frecuencia
FP• TLBs
Tacceso efectivo = (1 - p) x ma + p x tfp , 0
-
Marisa Gil
Introducció als Sistemes Operatius 31
Otros tipos de gestión de memoria: Javadynamic link
class loader
execution engine
bytecodes
JVM
SISTEMA OPERATIVO
ficheros class de la APIJAVA (sólo los que se
necesitan)ficheros class
del programador
llamadas a métodos nativos del SO
GESTION DE MEMORIA
-
Marisa Gil
Introducció als Sistemes Operatius 32
Otros tipos de gestión de memoria: Javadynamic link
El orden en que se realizan estas tareas es estricto:1. Cargar:
buscar e importar los datos binarios de un tipo.2. Linkar :
realizar la verificación, preparación y (opcionalmente)
resolución
a.Verificación: asegurar la correctitud del tipo importadob.
Preparación: asignar memoria para clases variables e inicializar
la
memoria a los valores por defectoc. Resolución: transformar las
referencias simbólicas del tipo en referen-
cias directas.3. Inicialización: llamar al código JAVA que
inicializa estas variables a sus pro-
pios valores iniciales.
GESTION DE MEMORIA
Multiprogramación• Cuánta memoria asignar a cada proceso•
Equiparticiones• Cantidad fija• Cantidad variable
• Dónde ubicar a cada proceso• Momento de vincular la dirección
lógica a la física• Vínculo estático/variable en ejecución
• Grado de multiprogramación• Número máximo de procesos que se
pueden cargar en memoria
GESTION DE LA MEMORIA
A tener en cuenta ...• Existe una tabla de páginas por proceso•
Sólo está activa la del proceso que se está ejecutando
• Si el tamaño de la página es pequeño:• Habrá poca
fragmentación interna• El número de páginas será grande (=> la
TP será grande)• La TP estará en memoria, no en la MMU (=> 2
accesos por traducción)• la MMU será barata: sólo mantiene la
dirección de la TP (RBTP)
• Si el tamaño de la página es grande:• Habrá mucha
fragmentación interna• El número de páginas será pequeño (=> la
TP será pequeña)• Si la TP cabe en la MMU, la traducción de
direcciones será rápida (1 acceso)• la MMU será cara: mantiene la
TP
• Tamaños comunes de páginas: 2K, 4K.
Gestión del espacio (I)• Buscar espacio libre para un programa
en memoria física.• Fragmentación: hay memoria suficiente, pero no
un trozo de tamaño adecuado.• Compactación: reorganizar la memoria
libre agrupando todo el espacio libre.• Sólo es posible si hay
reubicación dinámica.• Costoso en tiempo: ver qué procesos son los
más adecuados, dónde hacer el hueco, parar los proc...
PaginaciónGESTION DE LA MEMORIA
MMUAlguien se ha de encargar de:• direcciones lógicas iguales
convivan en el espacio físico sin problemas,• exista protección
entre procesos y para el SO,• la gestión del espacio físico (libre
y ocupado) sea eficiente
GESTION DE LA MEMORIA
Registro de reubicación• Fijo: lo inicializamos al principio y
ya no se modifica en toda la ejecución del programa. REUB...•
Variable: puede modificarse su valor durante la ejecución de un
programa: un programa puede mov...GESTION DE LA MEMORIA
Protección• Controlar por hardware que no se supere la zona de
memoria asignadaGESTION DE LA MEMORIAGESTION DE LA MEMORIA
Gestión del espacio (II): SWAPPING• Utilizar un dispositivo de
almacenamiento secundario (disco) para aumentar el espacio físico.•
Aumenta, por tanto, el grado de multiprogramación.• Sólo se pueden
ejecutar los procesos en memoria física.• Dependiendo del tipo de
reubicación es más o menos eficiente y útil.
GESTION DE LA MEMORIA
Gestión del espacio (y III): Modelos no contiguos• ¿Podemos
trocear un programa e ir metiendo los fragmentos en los sitios
libres que encontremos?• Cada fragmento necesita un registro de
reubicación• Permite aprovechar el espacio sin necesidad de
compactación
• Modelos básicos:• Paginación• Segmentación
GESTION DE LA MEMORIA
Paginación• Se divide el EL del programa en bloques de igual
tamaño• El tamaño es fijo, definido por la arquitectura• Cada
bloque se llama página (o página lógica)• La última página tendrá
una parte no ocupada (fragmentación interna)
• La memoria física también se divide en trozos de igual tamaño•
Cada trozo se llama trama (o página física)• Por simplicidad es del
mismo tamaño que la página (a veces, múltiplo)
• Cargar un programa en memoria significa encontrar un sitio
para cada página• En general, encontrar tantas tramas libres como
páginas ocupe
• Esta división en páginas es automática para la MMU• No existe
ninguna modificación en el espacio de direcciones lineal• Es
transparente al usuario, a los programas de traducción y a la
CPU
GESTION DE LA MEMORIA
Segmentación• El EL del programa se construye en bloques• El
tamaño máximo de un bloque es fijo, definido por la arquitectura•
Cada bloque se llama segmento
• El número de bloques que conforman el programa lo determina el
usuario• Cada trozo puede tener una semántica asociada (código,
datos,...)• Se asocia memoria física a segmentos lógicos (segmentos
físicos)
• Cargar un programa en memoria significa encontrar un sitio
para cada segmento• Aparece fragmentación externa.
• Esta división en segmentos es competencia del programador• Se
definen en la construcción del ejecutable (programador,
compilador,...)• El espacio de direcciones es de dos dimensiones,
disperso.
GESTION DE LA MEMORIA
SegmentaciónGESTION DE LA MEMORIA
SegmentaciónGESTION DE LA MEMORIA
PaginaciónIdeas a recapitular• Todo lo que se ejecuta ha de
estar en memoria principal• Multiprogramación => varios procesos
en memoria física• Todos los procesos comparten el mismo espacio
físico =>• el SO ha de garantizar protección• después de la CPU,
la memoria es el recurso más importante para gestionar
GESTION DE LA MEMORIAGESTION DE LA MEMORIA
Modelos mixtos (I): Paginación segmentada• El espacio lógico de
un programa lo forman todas las posibles direcciones• El tamaño
real de un programa es generalmente mucho más pequeño• Muchas
páginas no llegan a utilizarse• Sólo un pequeño número de entradas
de la tabla de páginas se accede
IDEA: Mantener sólo los grupos de páginas utilizadas por un
programa, dividiendo la tabla de pági...GESTION DE LA MEMORIA
Paginación segmentadaGESTION DE LA MEMORIA
Modelos mixtos (II): Segmentación paginada• Los segmentos son de
tamaño variable y generan fragmentación externa• Cargar los
segmentos en memoria es una operación “costosa”• Puede no haber
espacio contiguo para un segmento• De todos los trozos de memoria
libre hay que buscar el “adecuado”
IDEA: Los segmentos son conjuntos de páginas y cargar un
segmento es buscar tantas tramas libres ...GESTION DE LA
MEMORIA
Segmentación paginadaRegistro de reubicación• También se conoce
como Registro Base:• Contiene la dirección a partir de la cual está
cargado el programa
• El Sistema Operativo tiene su propio Registro de Reubicación
(RR)• Además, el SO pude saltarse si quiere el RR y generar
direcciones físicas• utilizar el RR del programa de usuario•
generar directamente direcciones físicas
GESTION DE LA MEMORIAGESTION DE LA MEMORIAGESTION DE LA
MEMORIA
A tener en cuenta• Se elimina la fragmentación interna• Se
soporta el crecimiento dinámico de los segmentos• Protección/uso
compartido• Desarrollo modular de programación: entidades menores
de programa relacionadas lógicamenteMilan Milenkovic “Sistemas
Operativos. Conceptos y diseño” McGraw Hill
• Es más costoso buscar espacio libre para cargar un programa•
Reaparece la fragmentación externa• Se gestiona la traducción a
partir de registros especiales (ej: DS, SS,...)• MMU caraGESTION DE
LA MEMORIA
TLB (Translation Lookaside Buffer)GESTION DE MEMORIA
Gestión de la Memoria1. Introducción2. Modelos de gestión del
espacio físico3. Memoria Virtual4. Otros
modelosBibliografíaSilberschat and Galvin Sistemas Operativos.
Conceptos fundamentales. Parte III: Administración
de...Introducción a los Sistemas Operativos
Memoria VirtualDefinición:Conjunto de mecanismos y técnicas,
hardware y software, que permiten la ejecución de programas qu...•
Basta que éste en memoria la parte (código datos, pila) con la que
se está trabajando actualmente.• Hay que tener localizable y
directamente accesible el resto del programa, para cargarlo cuando
...
VentajasPermite aumentar el grado de multiprogramaciónReduce el
tiempo de carga de los programasGESTION DE MEMORIA
TLB (Translation Lookaside Buffer)Objetivo: mejorar el
rendimiento del acceso a memoria en paginación• Memoria cache con
las PTE últimamente referenciadas.• Asociativa:• contiene la página
lógica referenciada• el procesador pregunta al mismo tiempo a todas
las entradas (hardware)
• 32, 48 entradas son valores habitualesWilliam Stallings
“Operating Systems” Cap. 5.3 Virtual Memory Maxwell McMillan,
International Edi...
GESTION DE MEMORIA
Implementación de la memoria virtual• Modelo de memoria no
contiguo (paginación o segmentación)• Mecanismos hardware para
detectar que una dirección lógica no está presente• Bit de
presencia
• Mecanismos software y hardaware para gestionar la E/S del
programa• FALLO DE PÁGINA (interrupción)
• Almacenamiento secundario donde está el programa íntegro•
Memoria secundaria (disco, generalmente): ÁREA DE PAGINACIÓN
GESTION DE MEMORIA
A tener en cuenta....• Carga inicial del programa• Paginación
bajo demanda• Prefetch
• Número de páginas que se asigna a cada programa• Reemplazo de
páginas si la memoria física ya está toda llena• Hiperpaginación
(THRASHING)GESTION DE MEMORIA
Principio de localidadLocalidad espacial:Alta probabilidad de
referenciar una dirección cercana a la actual
Localidad temporalAlta probabilidad de referenciar la dirección
actual en un intervalo corto de tiempoGESTION DE MEMORIA
A tener en cuenta ...• El área de paginación es aconsejable que
sea tres veces la memoria física• Programar con una buena
localidad:• datos locales,• organización rutinas,• bucles...
• Tamaño de la página: compromiso entre tiempo E/S y frecuencia
FP• TLBsGESTION DE MEMORIA
Montaje de un fichero ejecutableGESTION DE LA MEMORIA
Otros tipos de gestión de memoria: Java dynamic linkGESTION DE
MEMORIA
Otros tipos de gestión de memoria: Java dynamic linkEl orden en
que se realizan estas tareas es estricto:1. Cargar: buscar e
importar los datos binarios de un tipo.2. Linkar: realizar la
verificación, preparación y (opcionalmente) resolucióna.
Verificación: asegurar la correctitud del tipo importadob.
Preparación: asignar memoria para clases variables e inicializar la
memoria a los valores por ...c. Resolución: transformar las
referencias simbólicas del tipo en referencias directas.
3. Inicialización: llamar al código JAVA que inicializa estas
variables a sus propios valores ini...GESTION DE MEMORIA