Asignacion de Memoria Con Paginacion Simple
Click here to load reader
-
Upload
alex-carrasco -
Category
Documents
-
view
2.386 -
download
2
Transcript of Asignacion de Memoria Con Paginacion Simple
ESCUELA SUPERIOR POLITEacuteCNICA DE CHIMBORAZO
FACULTAD DE INFORMAacuteTICA Y ELECTROacuteNICA
TRABAJO DE SISTEMAS OPERATIVOS
ASIGNACIOacuteN DE MEMORIA CON PAGINACIOacuteN SIMPLE
INTEGRANTES
Alex Carrasco
Byron Jimeacutenez
Leonardo Coronado
Edison Bonilla
TERCERO ldquoBrdquo
Objetivos
o Proveer una abstraccioacuten simple de programacioacuten
o Proveer aislamiento entre procesos
o Asignar memoria (limitada) a procesos que la
requieren maximizando el rendimiento
Introduccioacuten
Aadministracioacuten de memoria es seguir la pista de queacute partes
de la memoria estaacuten en uso y cuaacuteles no lo estaacuten con el fin de
poder asignar memoria a los procesos cuando la necesiten y
recuperar esa memoria cuando dejen de necesitarla
Caracteriacutesticas
o Las particiones son variables en nuacutemero y longitud
o Cuando se carga un proceso en la memoria
principal se le asigna exactamente tanta memoria
como necesite
Asignacioacuten de memoria con paginacioacuten simple
Tanto las particiones estaacuteticas como las dinaacutemicas hacen un
uso ineficiente de la memoria las primeras generan
fragmentacioacuten interna mientras que las segundas generan
fragmentacioacuten externa
Supongamos la memoria principal particionada en trozos
iguales de tamantildeo fijo relativamente pequentildeos y que cada
proceso estaacute dividido tambieacuten en pequentildeos trozos de tamantildeo
fijo e igual a los de memoria En tal caso los trozos del
proceso conocidos como
Paginas pueden asignarse a los trozos libres de memoria
conocidos como marcos o marcos de paacutegina
Asignacioacuten de memoria con paginacioacuten simple marcos y palabras
Supongamos que el proceso B termina su ejecucioacuten y libera
sus recursos de memoria
Entonces llega el proceso D que requiere 5 paacuteginas de
memoria No hay ninguacuten problema en asignarle los tres de B
y dos del espacio libre En este esquema la fragmentacioacuten
Interna constaraacute solo de una fraccioacuten del uacuteltimo marco de
paacutegina ocupado por el proceso y ademaacutes no existe
fragmentacioacuten externa puesto que siempre seremos capaces
de aprovechar los huecos
ADMINISTRACIOacuteN DE LA MEMORIA
PAGINACIOacuteN
SEGMENTACIOacuteN
Dividen los programas en pequentildeas paacuteginas y a la memoria en marcos de paacuteginaPermite que el espacio de direcciones loacutegicas de un proceso no sea contiguo
Tanto la memoria fiacutesica como la memoria virtual se dividen en bloques (en general de distinto tamantildeo llamados segmentos) que son las que van a disco a medida que se va llenando la memoria fiacutesica o se recuperan del disco cuando vuelven a ser necesarias
En los esquemas de particioacuten de memoria basados en
particiones fijas las direcciones fiacutesicas se obteniacutean sumando
las virtuales a la direccioacuten de carga del proceso En el
esquema de gestioacuten de memoria con paginacioacuten sin
embargo ya no seraacute suficiente con un simple registroacute para la
traduccioacuten de direcciones En su lugar el SO mantiene una
tabla de paacuteginas para cada proceso Cada una de estas
tablas contiene una entrada por cada paacutegina del proceso por
lo que se uniraacuten de forma faacutecil mediante el numero de
paginas comenzando siempre por la pagina 0 En cada
entrada de la tabla de paacuteginas se encuentra el nuacutemero del
marco de memoria que contiene la paacutegina correspondiente
Ademaacutes el SO mantiene una lista de marcos libres con todos
los marcos de memoria que actualmente estaacuten vaciacuteos y
disponibles para las paacuteginas
Dentro del programa cada direccioacuten loacutegica constara de un
nuacutemero de pagina y un desplazamiento dentro de la pagina y
seraacute tambieacuten el hardware del procesador el que se encargue
de realizar la traduccioacuten de direcciones loacutegicas a direcciones
fiacutesicas
Para aplicar convenientemente este esquema de paginacioacuten
el tamantildeo de pagina y por tanto el tamantildeo de marco deben
ser una potencia de 2En este caso la direccioacuten relativa
definida en relacioacuten a la direccioacuten de carga del proceso y la
direccioacuten loacutegica expresada como un nuacutemero de paacutegina y un
desplazamiento son las mismas
Esquema hardware para la paginacioacuten
Supongamos un sistema donde se emplean direcciones de
16 bits siendo el tamantildeo de paacutegina de 1k palabras Con este
tamantildeo de paacutegina se necesitan 10 bits para el campo de
desplazamiento y los 6 restantes determinan el nuacutemero de
paacutegina De esta forma la capacidad total de la memoria es de
64 k palabras
Las consecuencias de utilizar un tamantildeo de paacutegina potencia
de 2 son las siguientes
1 El esquema de direccionamiento loacutegico es transparente al
programador al montador y al ensamblador Cada direccioacuten
loacutegica de un proceso seraacute asiacute ideacutentica a su direccioacuten relativa
2 Resulta relativamente sencillo realizar una funcioacuten
hardware para llevar a cabo la traduccioacuten de direcciones
dinaacutemicas en tiempo de ejecucioacuten Consideramos una
direccioacuten de d = n +m bits en la que los n bits maacutes
significativos corresponden al nuacutemero de pagina y los m bits
menos significativos corresponden al desplazamiento dentro
de la paacutegina Para la traduccioacuten de direcciones hay que dar
los siguientes pasos
a)Obtener el nuacutemero de paacutegina a partir de los bits de la
direccioacuten loacutegica
b) Emplear ese nuacutemero de paacutegina como iacutendice en la tabla de
paacuteginas del proceso para determinar el marco k en que se
alberga la pagina
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
Objetivos
o Proveer una abstraccioacuten simple de programacioacuten
o Proveer aislamiento entre procesos
o Asignar memoria (limitada) a procesos que la
requieren maximizando el rendimiento
Introduccioacuten
Aadministracioacuten de memoria es seguir la pista de queacute partes
de la memoria estaacuten en uso y cuaacuteles no lo estaacuten con el fin de
poder asignar memoria a los procesos cuando la necesiten y
recuperar esa memoria cuando dejen de necesitarla
Caracteriacutesticas
o Las particiones son variables en nuacutemero y longitud
o Cuando se carga un proceso en la memoria
principal se le asigna exactamente tanta memoria
como necesite
Asignacioacuten de memoria con paginacioacuten simple
Tanto las particiones estaacuteticas como las dinaacutemicas hacen un
uso ineficiente de la memoria las primeras generan
fragmentacioacuten interna mientras que las segundas generan
fragmentacioacuten externa
Supongamos la memoria principal particionada en trozos
iguales de tamantildeo fijo relativamente pequentildeos y que cada
proceso estaacute dividido tambieacuten en pequentildeos trozos de tamantildeo
fijo e igual a los de memoria En tal caso los trozos del
proceso conocidos como
Paginas pueden asignarse a los trozos libres de memoria
conocidos como marcos o marcos de paacutegina
Asignacioacuten de memoria con paginacioacuten simple marcos y palabras
Supongamos que el proceso B termina su ejecucioacuten y libera
sus recursos de memoria
Entonces llega el proceso D que requiere 5 paacuteginas de
memoria No hay ninguacuten problema en asignarle los tres de B
y dos del espacio libre En este esquema la fragmentacioacuten
Interna constaraacute solo de una fraccioacuten del uacuteltimo marco de
paacutegina ocupado por el proceso y ademaacutes no existe
fragmentacioacuten externa puesto que siempre seremos capaces
de aprovechar los huecos
ADMINISTRACIOacuteN DE LA MEMORIA
PAGINACIOacuteN
SEGMENTACIOacuteN
Dividen los programas en pequentildeas paacuteginas y a la memoria en marcos de paacuteginaPermite que el espacio de direcciones loacutegicas de un proceso no sea contiguo
Tanto la memoria fiacutesica como la memoria virtual se dividen en bloques (en general de distinto tamantildeo llamados segmentos) que son las que van a disco a medida que se va llenando la memoria fiacutesica o se recuperan del disco cuando vuelven a ser necesarias
En los esquemas de particioacuten de memoria basados en
particiones fijas las direcciones fiacutesicas se obteniacutean sumando
las virtuales a la direccioacuten de carga del proceso En el
esquema de gestioacuten de memoria con paginacioacuten sin
embargo ya no seraacute suficiente con un simple registroacute para la
traduccioacuten de direcciones En su lugar el SO mantiene una
tabla de paacuteginas para cada proceso Cada una de estas
tablas contiene una entrada por cada paacutegina del proceso por
lo que se uniraacuten de forma faacutecil mediante el numero de
paginas comenzando siempre por la pagina 0 En cada
entrada de la tabla de paacuteginas se encuentra el nuacutemero del
marco de memoria que contiene la paacutegina correspondiente
Ademaacutes el SO mantiene una lista de marcos libres con todos
los marcos de memoria que actualmente estaacuten vaciacuteos y
disponibles para las paacuteginas
Dentro del programa cada direccioacuten loacutegica constara de un
nuacutemero de pagina y un desplazamiento dentro de la pagina y
seraacute tambieacuten el hardware del procesador el que se encargue
de realizar la traduccioacuten de direcciones loacutegicas a direcciones
fiacutesicas
Para aplicar convenientemente este esquema de paginacioacuten
el tamantildeo de pagina y por tanto el tamantildeo de marco deben
ser una potencia de 2En este caso la direccioacuten relativa
definida en relacioacuten a la direccioacuten de carga del proceso y la
direccioacuten loacutegica expresada como un nuacutemero de paacutegina y un
desplazamiento son las mismas
Esquema hardware para la paginacioacuten
Supongamos un sistema donde se emplean direcciones de
16 bits siendo el tamantildeo de paacutegina de 1k palabras Con este
tamantildeo de paacutegina se necesitan 10 bits para el campo de
desplazamiento y los 6 restantes determinan el nuacutemero de
paacutegina De esta forma la capacidad total de la memoria es de
64 k palabras
Las consecuencias de utilizar un tamantildeo de paacutegina potencia
de 2 son las siguientes
1 El esquema de direccionamiento loacutegico es transparente al
programador al montador y al ensamblador Cada direccioacuten
loacutegica de un proceso seraacute asiacute ideacutentica a su direccioacuten relativa
2 Resulta relativamente sencillo realizar una funcioacuten
hardware para llevar a cabo la traduccioacuten de direcciones
dinaacutemicas en tiempo de ejecucioacuten Consideramos una
direccioacuten de d = n +m bits en la que los n bits maacutes
significativos corresponden al nuacutemero de pagina y los m bits
menos significativos corresponden al desplazamiento dentro
de la paacutegina Para la traduccioacuten de direcciones hay que dar
los siguientes pasos
a)Obtener el nuacutemero de paacutegina a partir de los bits de la
direccioacuten loacutegica
b) Emplear ese nuacutemero de paacutegina como iacutendice en la tabla de
paacuteginas del proceso para determinar el marco k en que se
alberga la pagina
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
Asignacioacuten de memoria con paginacioacuten simple
Tanto las particiones estaacuteticas como las dinaacutemicas hacen un
uso ineficiente de la memoria las primeras generan
fragmentacioacuten interna mientras que las segundas generan
fragmentacioacuten externa
Supongamos la memoria principal particionada en trozos
iguales de tamantildeo fijo relativamente pequentildeos y que cada
proceso estaacute dividido tambieacuten en pequentildeos trozos de tamantildeo
fijo e igual a los de memoria En tal caso los trozos del
proceso conocidos como
Paginas pueden asignarse a los trozos libres de memoria
conocidos como marcos o marcos de paacutegina
Asignacioacuten de memoria con paginacioacuten simple marcos y palabras
Supongamos que el proceso B termina su ejecucioacuten y libera
sus recursos de memoria
Entonces llega el proceso D que requiere 5 paacuteginas de
memoria No hay ninguacuten problema en asignarle los tres de B
y dos del espacio libre En este esquema la fragmentacioacuten
Interna constaraacute solo de una fraccioacuten del uacuteltimo marco de
paacutegina ocupado por el proceso y ademaacutes no existe
fragmentacioacuten externa puesto que siempre seremos capaces
de aprovechar los huecos
ADMINISTRACIOacuteN DE LA MEMORIA
PAGINACIOacuteN
SEGMENTACIOacuteN
Dividen los programas en pequentildeas paacuteginas y a la memoria en marcos de paacuteginaPermite que el espacio de direcciones loacutegicas de un proceso no sea contiguo
Tanto la memoria fiacutesica como la memoria virtual se dividen en bloques (en general de distinto tamantildeo llamados segmentos) que son las que van a disco a medida que se va llenando la memoria fiacutesica o se recuperan del disco cuando vuelven a ser necesarias
En los esquemas de particioacuten de memoria basados en
particiones fijas las direcciones fiacutesicas se obteniacutean sumando
las virtuales a la direccioacuten de carga del proceso En el
esquema de gestioacuten de memoria con paginacioacuten sin
embargo ya no seraacute suficiente con un simple registroacute para la
traduccioacuten de direcciones En su lugar el SO mantiene una
tabla de paacuteginas para cada proceso Cada una de estas
tablas contiene una entrada por cada paacutegina del proceso por
lo que se uniraacuten de forma faacutecil mediante el numero de
paginas comenzando siempre por la pagina 0 En cada
entrada de la tabla de paacuteginas se encuentra el nuacutemero del
marco de memoria que contiene la paacutegina correspondiente
Ademaacutes el SO mantiene una lista de marcos libres con todos
los marcos de memoria que actualmente estaacuten vaciacuteos y
disponibles para las paacuteginas
Dentro del programa cada direccioacuten loacutegica constara de un
nuacutemero de pagina y un desplazamiento dentro de la pagina y
seraacute tambieacuten el hardware del procesador el que se encargue
de realizar la traduccioacuten de direcciones loacutegicas a direcciones
fiacutesicas
Para aplicar convenientemente este esquema de paginacioacuten
el tamantildeo de pagina y por tanto el tamantildeo de marco deben
ser una potencia de 2En este caso la direccioacuten relativa
definida en relacioacuten a la direccioacuten de carga del proceso y la
direccioacuten loacutegica expresada como un nuacutemero de paacutegina y un
desplazamiento son las mismas
Esquema hardware para la paginacioacuten
Supongamos un sistema donde se emplean direcciones de
16 bits siendo el tamantildeo de paacutegina de 1k palabras Con este
tamantildeo de paacutegina se necesitan 10 bits para el campo de
desplazamiento y los 6 restantes determinan el nuacutemero de
paacutegina De esta forma la capacidad total de la memoria es de
64 k palabras
Las consecuencias de utilizar un tamantildeo de paacutegina potencia
de 2 son las siguientes
1 El esquema de direccionamiento loacutegico es transparente al
programador al montador y al ensamblador Cada direccioacuten
loacutegica de un proceso seraacute asiacute ideacutentica a su direccioacuten relativa
2 Resulta relativamente sencillo realizar una funcioacuten
hardware para llevar a cabo la traduccioacuten de direcciones
dinaacutemicas en tiempo de ejecucioacuten Consideramos una
direccioacuten de d = n +m bits en la que los n bits maacutes
significativos corresponden al nuacutemero de pagina y los m bits
menos significativos corresponden al desplazamiento dentro
de la paacutegina Para la traduccioacuten de direcciones hay que dar
los siguientes pasos
a)Obtener el nuacutemero de paacutegina a partir de los bits de la
direccioacuten loacutegica
b) Emplear ese nuacutemero de paacutegina como iacutendice en la tabla de
paacuteginas del proceso para determinar el marco k en que se
alberga la pagina
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
Supongamos que el proceso B termina su ejecucioacuten y libera
sus recursos de memoria
Entonces llega el proceso D que requiere 5 paacuteginas de
memoria No hay ninguacuten problema en asignarle los tres de B
y dos del espacio libre En este esquema la fragmentacioacuten
Interna constaraacute solo de una fraccioacuten del uacuteltimo marco de
paacutegina ocupado por el proceso y ademaacutes no existe
fragmentacioacuten externa puesto que siempre seremos capaces
de aprovechar los huecos
ADMINISTRACIOacuteN DE LA MEMORIA
PAGINACIOacuteN
SEGMENTACIOacuteN
Dividen los programas en pequentildeas paacuteginas y a la memoria en marcos de paacuteginaPermite que el espacio de direcciones loacutegicas de un proceso no sea contiguo
Tanto la memoria fiacutesica como la memoria virtual se dividen en bloques (en general de distinto tamantildeo llamados segmentos) que son las que van a disco a medida que se va llenando la memoria fiacutesica o se recuperan del disco cuando vuelven a ser necesarias
En los esquemas de particioacuten de memoria basados en
particiones fijas las direcciones fiacutesicas se obteniacutean sumando
las virtuales a la direccioacuten de carga del proceso En el
esquema de gestioacuten de memoria con paginacioacuten sin
embargo ya no seraacute suficiente con un simple registroacute para la
traduccioacuten de direcciones En su lugar el SO mantiene una
tabla de paacuteginas para cada proceso Cada una de estas
tablas contiene una entrada por cada paacutegina del proceso por
lo que se uniraacuten de forma faacutecil mediante el numero de
paginas comenzando siempre por la pagina 0 En cada
entrada de la tabla de paacuteginas se encuentra el nuacutemero del
marco de memoria que contiene la paacutegina correspondiente
Ademaacutes el SO mantiene una lista de marcos libres con todos
los marcos de memoria que actualmente estaacuten vaciacuteos y
disponibles para las paacuteginas
Dentro del programa cada direccioacuten loacutegica constara de un
nuacutemero de pagina y un desplazamiento dentro de la pagina y
seraacute tambieacuten el hardware del procesador el que se encargue
de realizar la traduccioacuten de direcciones loacutegicas a direcciones
fiacutesicas
Para aplicar convenientemente este esquema de paginacioacuten
el tamantildeo de pagina y por tanto el tamantildeo de marco deben
ser una potencia de 2En este caso la direccioacuten relativa
definida en relacioacuten a la direccioacuten de carga del proceso y la
direccioacuten loacutegica expresada como un nuacutemero de paacutegina y un
desplazamiento son las mismas
Esquema hardware para la paginacioacuten
Supongamos un sistema donde se emplean direcciones de
16 bits siendo el tamantildeo de paacutegina de 1k palabras Con este
tamantildeo de paacutegina se necesitan 10 bits para el campo de
desplazamiento y los 6 restantes determinan el nuacutemero de
paacutegina De esta forma la capacidad total de la memoria es de
64 k palabras
Las consecuencias de utilizar un tamantildeo de paacutegina potencia
de 2 son las siguientes
1 El esquema de direccionamiento loacutegico es transparente al
programador al montador y al ensamblador Cada direccioacuten
loacutegica de un proceso seraacute asiacute ideacutentica a su direccioacuten relativa
2 Resulta relativamente sencillo realizar una funcioacuten
hardware para llevar a cabo la traduccioacuten de direcciones
dinaacutemicas en tiempo de ejecucioacuten Consideramos una
direccioacuten de d = n +m bits en la que los n bits maacutes
significativos corresponden al nuacutemero de pagina y los m bits
menos significativos corresponden al desplazamiento dentro
de la paacutegina Para la traduccioacuten de direcciones hay que dar
los siguientes pasos
a)Obtener el nuacutemero de paacutegina a partir de los bits de la
direccioacuten loacutegica
b) Emplear ese nuacutemero de paacutegina como iacutendice en la tabla de
paacuteginas del proceso para determinar el marco k en que se
alberga la pagina
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
En los esquemas de particioacuten de memoria basados en
particiones fijas las direcciones fiacutesicas se obteniacutean sumando
las virtuales a la direccioacuten de carga del proceso En el
esquema de gestioacuten de memoria con paginacioacuten sin
embargo ya no seraacute suficiente con un simple registroacute para la
traduccioacuten de direcciones En su lugar el SO mantiene una
tabla de paacuteginas para cada proceso Cada una de estas
tablas contiene una entrada por cada paacutegina del proceso por
lo que se uniraacuten de forma faacutecil mediante el numero de
paginas comenzando siempre por la pagina 0 En cada
entrada de la tabla de paacuteginas se encuentra el nuacutemero del
marco de memoria que contiene la paacutegina correspondiente
Ademaacutes el SO mantiene una lista de marcos libres con todos
los marcos de memoria que actualmente estaacuten vaciacuteos y
disponibles para las paacuteginas
Dentro del programa cada direccioacuten loacutegica constara de un
nuacutemero de pagina y un desplazamiento dentro de la pagina y
seraacute tambieacuten el hardware del procesador el que se encargue
de realizar la traduccioacuten de direcciones loacutegicas a direcciones
fiacutesicas
Para aplicar convenientemente este esquema de paginacioacuten
el tamantildeo de pagina y por tanto el tamantildeo de marco deben
ser una potencia de 2En este caso la direccioacuten relativa
definida en relacioacuten a la direccioacuten de carga del proceso y la
direccioacuten loacutegica expresada como un nuacutemero de paacutegina y un
desplazamiento son las mismas
Esquema hardware para la paginacioacuten
Supongamos un sistema donde se emplean direcciones de
16 bits siendo el tamantildeo de paacutegina de 1k palabras Con este
tamantildeo de paacutegina se necesitan 10 bits para el campo de
desplazamiento y los 6 restantes determinan el nuacutemero de
paacutegina De esta forma la capacidad total de la memoria es de
64 k palabras
Las consecuencias de utilizar un tamantildeo de paacutegina potencia
de 2 son las siguientes
1 El esquema de direccionamiento loacutegico es transparente al
programador al montador y al ensamblador Cada direccioacuten
loacutegica de un proceso seraacute asiacute ideacutentica a su direccioacuten relativa
2 Resulta relativamente sencillo realizar una funcioacuten
hardware para llevar a cabo la traduccioacuten de direcciones
dinaacutemicas en tiempo de ejecucioacuten Consideramos una
direccioacuten de d = n +m bits en la que los n bits maacutes
significativos corresponden al nuacutemero de pagina y los m bits
menos significativos corresponden al desplazamiento dentro
de la paacutegina Para la traduccioacuten de direcciones hay que dar
los siguientes pasos
a)Obtener el nuacutemero de paacutegina a partir de los bits de la
direccioacuten loacutegica
b) Emplear ese nuacutemero de paacutegina como iacutendice en la tabla de
paacuteginas del proceso para determinar el marco k en que se
alberga la pagina
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
definida en relacioacuten a la direccioacuten de carga del proceso y la
direccioacuten loacutegica expresada como un nuacutemero de paacutegina y un
desplazamiento son las mismas
Esquema hardware para la paginacioacuten
Supongamos un sistema donde se emplean direcciones de
16 bits siendo el tamantildeo de paacutegina de 1k palabras Con este
tamantildeo de paacutegina se necesitan 10 bits para el campo de
desplazamiento y los 6 restantes determinan el nuacutemero de
paacutegina De esta forma la capacidad total de la memoria es de
64 k palabras
Las consecuencias de utilizar un tamantildeo de paacutegina potencia
de 2 son las siguientes
1 El esquema de direccionamiento loacutegico es transparente al
programador al montador y al ensamblador Cada direccioacuten
loacutegica de un proceso seraacute asiacute ideacutentica a su direccioacuten relativa
2 Resulta relativamente sencillo realizar una funcioacuten
hardware para llevar a cabo la traduccioacuten de direcciones
dinaacutemicas en tiempo de ejecucioacuten Consideramos una
direccioacuten de d = n +m bits en la que los n bits maacutes
significativos corresponden al nuacutemero de pagina y los m bits
menos significativos corresponden al desplazamiento dentro
de la paacutegina Para la traduccioacuten de direcciones hay que dar
los siguientes pasos
a)Obtener el nuacutemero de paacutegina a partir de los bits de la
direccioacuten loacutegica
b) Emplear ese nuacutemero de paacutegina como iacutendice en la tabla de
paacuteginas del proceso para determinar el marco k en que se
alberga la pagina
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
Las consecuencias de utilizar un tamantildeo de paacutegina potencia
de 2 son las siguientes
1 El esquema de direccionamiento loacutegico es transparente al
programador al montador y al ensamblador Cada direccioacuten
loacutegica de un proceso seraacute asiacute ideacutentica a su direccioacuten relativa
2 Resulta relativamente sencillo realizar una funcioacuten
hardware para llevar a cabo la traduccioacuten de direcciones
dinaacutemicas en tiempo de ejecucioacuten Consideramos una
direccioacuten de d = n +m bits en la que los n bits maacutes
significativos corresponden al nuacutemero de pagina y los m bits
menos significativos corresponden al desplazamiento dentro
de la paacutegina Para la traduccioacuten de direcciones hay que dar
los siguientes pasos
a)Obtener el nuacutemero de paacutegina a partir de los bits de la
direccioacuten loacutegica
b) Emplear ese nuacutemero de paacutegina como iacutendice en la tabla de
paacuteginas del proceso para determinar el marco k en que se
alberga la pagina
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
c) El comienzo de la direccioacuten fiacutesica del marco k seraacute k middot 2m y
la direccioacuten fiacutesica de la palabra referenciada seraacute este
nuacutemero maacutes el desplazamiento determinado por los m bits
menos significativos de la direccioacuten loacutegica
Asiacute pues la paginacioacuten simple tal como se ha descrito es
similar a la utilizacioacuten de particiones fijas de ideacutentico tamantildeo
con la diferencia de que las particiones son maacutes pequentildeas
un proceso puede ocupar maacutes de una particioacuten y las
particiones correspondientes a un proceso no tienen por queacute
estar contiguas A modo de resumen mediante la paginacioacuten
simple la memoria principal se divide en pequentildeos marcos
del mismo tamantildeo Cada proceso se divide en paacuteginas del
tamantildeo del marco Cuando un proceso se carga en memoria
se cargan todas sus paacuteginas en marcos libres y se rellena su
tabla de paacuteginas
A continuacioacuten veremos el esquema hardware que permite
realizar la traduccioacuten de direcciones virtuales a fiacutesicas
Asignacioacuten de memoria con segmentacioacuten simple
En segmentacioacuten un programa y sus datos asociados se
dividen en un conjunto de segmentos
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
No se impone que todos los segmentos de todos los
programas tengan la misma longitud aunque sı existe una
longitud maacutexima de segmento Como en paginacioacuten una
direccioacuten loacutegica segmentada consta de dos partes nuacutemero de
segmento y desplazamiento dentro del segmento Como
consecuencia del empleo de segmentos de distinto tamantildeo
la segmentacioacuten resulta similar al esquema de asignacioacuten de
memoria con particiones dinaacutemicas La diferencia con este
radica en que con segmentacioacuten un programa puede ocupar
maacutes de una particioacuten y estas no tiene por queacute estar contiguas
La segmentacioacuten elimina la fragmentacioacuten interna pero sufre
de fragmentacioacuten externa sin embargo debido a que los
procesos se dividen en un conjunto de partes maacutes pequentildeas
la fragmentacioacuten externa seraacute menor Mientras que la
paginacioacuten es transparente al programador la segmentacioacuten
es generalmente visible y se proporciona como una
comodidad para la organizacioacuten de programas y datos
Normalmente el programador asigna los programas y datos a
distintos segmentos
Otra consecuencia del tamantildeo desigual de los segmentos es
que no hay una correspondencia simple entre direcciones
loacutegicas y direcciones fiacutesicas Un esquema de segmentacioacuten
haraacute uso de una tabla de segmentos para cada proceso y una
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
lista de bloques libres en memoria principal Cada entrada de
la tabla de segmento deber lsquoa contener la direccioacuten de
comienzo del segmento correspondiente en memoria principal
y tambieacuten la longitud del mismo para asegurar el uso de
direcciones validas Cuando un proceso pasa al estado de
ejecucioacuten se carga la direccioacuten de su tabla de segmentos en
un registro especial del hardware de gestioacuten de memoria
Considerando una direccioacuten loacutegica formada por n + m bits los
n bits maacutes significativos indican el nuacutemero de segmento
mientras que los m bits restantes indicariacutean el
desplazamiento Para la traduccioacuten de direcciones hay que
dar los siguientes pasos
1 Extraer el nuacutemero de segmento de la n bits maacutes
significativos de la direccioacuten loacutegica
2 Emplear ese nuacutemero de segmento como iacutendice en la tabla
de segmentos del proceso para determinar la direccioacuten fiacutesica
de comienzo del segmento
3 Comparar el desplazamiento expresado por los m bits
menos significativos con la longitud del segmento Si el
desplazamiento es mayor que la longitud la direccioacuten no es
vaacutelida
4 La direccioacuten fiacutesica final seraacute la suma de la direccioacuten fiacutesica
de comienzo de segmento maacutes el desplazamiento
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
1048576_1048576_1048576_1048576_1048576_1048576_1048576_1048576
Asignacioacuten de memoria con segmentacioacuten simple
En este caso habraacute que sumar ya que cada segmento tendraacute
tamantildeo variable no seraacute obligatorio que comience en una
potencia de 2
bull Ventajas de la Paginacioacuten simple
o Faacutecil para asignar memoria fiacutesica
o Memoria fiacutesica se administra usando una lista de marcos
de paacuteginas libres
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores
o Para asignar un marco de paacutegina se saca de la lista
bull Desventajas de Paginacioacuten simple
o Expone Fragmentacioacuten interna
o El proceso no puede usar memoria de marco de paacutegina
que le sobra a otro proceso
Conclusioacuten
Administrar la memoria es una de las tareas maacutes complejas
que lleva a cabo el sistema operativo La memoria es un
recurso importante que debe ser cuidadosamente gestionado
Seriacutea excelente contar con una memoria infinitamente
grande raacutepida y que ademaacutes no perdiese su contenido en
ausencia de energiacutea eleacutectrica es decir que no fuese volaacutetil
Pero ya que el ser humano auacuten no puede contar con algunas
de estas caracteriacutesticas se ha generado teacutecnicas capaces de
administrar de una forma eficiente la memoria de nuestros
ordenadores