Sie sind auf Seite 1von 23

La Administracin de Memoria de un Sistema Operativo

1 INTRODUCCION

A travs de los aos se ha elaborado el concepto de jerarqua de memoria, de


acuerdo con el cual, las computadoras tienen unos cuantos megabytes de
memoria cach, muy rpida, costosa y voltil, unos cuantos gigabytes de
memoria principal, de mediana velocidad, a precio mediano y voltil, unos
cuantos terabytes de almacenamiento en disco lento, econmico y no voltil. El
trabajo del sistema operativo es abstraer esta jerarqua en un modelo til y
despus administrarla. La parte del sistema operativo que administra la
jerarqua de memoria se conoce como administrador de memoria. Su trabajo
es: llevar el registro de cules partes de la memoria estn en uso, asignar
memoria a los procesos cuando la necesiten y desasignarla cuando terminen.
Cuatro de los problemas ms comunes que debe administar un MMU son: -
Reubicacin - Proteccin - Fragmentacin externa - Intercambio Como dato
extra a esta introduccin ofrecemos una tabla con el alcance del
direccionamiento para cada arquitectura, adems de recordar el espacio de
memoria de un proceso: Arquitectura Direccionamiento 16 bits 64 KB 20 bits 1
MB 24 bits 16 MB 32 bits 4 GB 64 bits 16 EB Seccin de texto: imagen en
memoria de las instrucciones a ser ejecutadas. Seccin de datos: espacio fijo
preasignado para las variables globales y datos inicializados, este espacio es
fijado en tiempo de compilacin, y no puede cambiar. Espacio de libres:
espacio de memoria que se emplea para la asignacin dinmica de memoria
durante la ejecucin del proceso y crece hacia arriba. Pila de llamadas:
consiste en un espacio de memoria que se usa para almacenar la secuencia de
funciones que han sido llamadas dentro del proceso, con sus parmetros,
direcciones de retorno, variables locales, y crece hacia abajo.

3Trabajos Relacionados
4 Metodologa

4.1 SIN ABSTRACCION DE MEMORIA


En las primeras computadoras no tenan abstraccin de memoria. Es decir que
los programas venan de la memoria fsica en estas condiciones era imposible
que tengan dos programas ejecutndose al mismo tiempo; es asi que solo se
poda ejecutar uno a la vez.

Teniendo en cuenta que la abstraccin simple de memoria no es ninguna en la


poca de las primeras computadoras, minicomputadoras y primeras
computadoras no posean la abstraccin de memoria.

4.1.1Ejecucin de mltiple programas sin una abstraccin de memoria

Para la ejecucin de mltiple programas sin una abstraccin de memoria es


posible realizar la ejecucin de varios programas en un mismo tiempo aunque
no haya abstraccin de memoria, la manera en que se lo realiza es guardando
todo el contenido de la memoria en un archivo en disco siendo as que despus
de realizar la siguiente tarea se puede traer y ejecutar el siguiente programa,
siempre y cuando exista un solo programa en la memoria no proporcionara
ningn problema.
4.2 UNAABSTRACCION DEMEMORIA: ESPACIOS DE DIRECCIONES
Al momento de exponer lo que llamamos la memoria fsica los procesos tienen
varias desventajas, al momento en el que los programas de usuario direccionan
los byte de memoria daan al sistema operativo con mucha facilidad, otro caso
tenemos que en demasiado difcil tener varios programas ejecutndose a la vez
debido a que no hay un abstraccin fsica de la memoria.

4.2.1 La nocin de un espacio de direcciones


Para poder tener una nocin de un espacio de direcciones deberamos resolver
dos problemas para poder permitir que en la memoria puedan ejecutarse dos
aplicaciones en un mismo tiempo sin que interfiera una de otra clase cuales
son proteccin y reubicacin

4.2.1.1 Registros base y lmite

En esta solucin permite equiparara cada CPU con registros hardware


(registros base y limite) .el registro base es el encargado de dela direccin
fsica en el cual empieza l programa y el registro limite es el encargado de la
longitud del programa .el hardware se encargue de que cuando un proceso
hace referencia a la memoria sume de manera automtica el valor base a la
direccin generada por el proceso antes de enviar al bis de memoria ,estos
registros estn protegidos de tal forma que solo el sistema operativo puede
acceder para modificarlos

4.2.1.2 Fragmentacin

La fragmentacin empieza aparecer cuando ms procesos terminan su


ejecucin en la cual el sistemas operativo libera memoria que fue
asignada a cada uno de ellos ,as tambin a manera que finalizan
empiezan aparecer registros de memoria disponible que son
interrumpidas por regiones de memoria usada por los procesos que an
se encuentran activos .en el caso que no posea la maquina hardware el
sistema operativo no puede reasignar los bloques existentes ,ms bien
al momento de crear un proceso nuevo hace referencia de tres
estrategias las cuales son : primer ajuste, mejor ajuste y el pero ajuste.

4.2.2 Intercambio
Cuando la memoria de la computadora en especial la memoria fsica es
bastante grande como para soportar todos los procesos sus esquemas puedes
funcionar de una manera correcta, en general a lo largo del tiempo se ha
generado dos esquemas para poder indicar la sobrecarga de memoria como el
intercambio o que lleva cada proceso completo a memoria y lo ejecuta en cierto
tiempo luego lo regresa al disco y la otra es tambin conocida como memoria
virtual que permite que se ejecuten programa aun cuando se encuentre en
memoria parcial

Si un proceso no puede crecer en memoria y el rea de intercambio en el disco


est llena, el proceso tendr que suspenderse hasta que se libere algo de
espacio (o se puede eliminar).

2.2.3 Administracin de Memoria Libre


Cundo la memoria es asignada de forma dinmica el sistema operativo lo debe
administrar en el cual hay dos formas de llevar el registro al uso de memoria:
mapas de bits y listas libres.
2.2.3.1 Administracin de memoria con mapas de bits
Se asigna un bit que corresponde al mapa de bits que es 0 para cada unidad
de asignacin, su tamao es de diseo en el cual mientras ms sea pequeo
mayor ser el mapa del bit
2.2.3.2 Administracin de memoria con listas ligadas
La otra forma es llevar el registro de memoria en una lista que es ligada de
segmentos de memoria y que son libres, en donde los segmentos contienen un
proceso que al momento de ordenarlo adquirimos la ventaja el proceso de
actualizar sea simple

4.3 MEMORIA VIRTUAL


En la memoria virtual existe la necesidad de ejecutar programas que son
demasiado grandes como para caber en la memoria y sin duda existe tambin
la necesidad de tener sistemas que puedan soportar varios programas
ejecutndose al mismo tiempo, cada uno de los cuales cabe en memoria, pero
que en forma colectiva exceden el tamao de la misma, como idea principal
tenemos que cada programa tiene su propio espacio de direcciones en los
cuales a su vez se dividen en trozos llamados paginas estas se asocian a la
memoria fsica, pero no todas tienen que estar en la memoria fsica para poder
ejecutar el programa.
4.3.1 Paginacin
En cualquier computadora, los programas hacen referencia a un conjunto de
direcciones de memoria.
En el hardware real, un bit de presente/ausente lleva el registro de cules
pginas estn fsicamente presentes en la memoria. El sistema operativo
selecciona un marco de pgina que se utilice poco y escribe su contenido de
vuelta al disco si no es que ya est ah.

4.3.2 Tablas de Pginas


Las tablas de pgina son una simple implementacin de direcciones virtuales a
direcciones fsicas las cuales resumimos as: la direccin virtual se divide en un
nmero de pgina virtual (bits de mayor orden) y en un desplazamiento (bits de
menor orden).Utilizando el resultado de esta funcin, el campo de la pgina
virtual en una direccin virtual se puede reemplazar por un campo de marco de
pgina, formando as una direccin de memoria fsica.

4.3.3 Aceleracion de la paginacin


Acabamos de ver los fundamentos de la memoria virtual y la paginacin. Ahora
es tiempo de entrar
en ms detalle acerca de las posibles implementaciones. En cualquier sistema
de paginacin hay
que abordar dos cuestiones principales:

1. La asociacin de una direccin virtual a una direccin fsica debe ser rpida.
2. Si el espacio de direcciones virtuales es grande, la tabla de pginas ser
grande.
El primer punto es una consecuencia del hecho de que la asociacin virtual-a-
fsica debe realizarse
en cada referencia de memoria. Todas las instrucciones deben provenir
finalmente de la memoria
y muchas de ellas hacen referencias a operandos en memoria tambin. En
consecuencia, es
necesario hacer una, dos o algunas veces ms referencias a la tabla de
pginas por instruccin. Si
la ejecucin de una instruccin tarda, por ejemplo 1 nseg, la bsqueda en la
tabla de pginas debe
realizarse en menos de 0.2 nseg para evitar que la asociacin se convierta en
un cuello de botella
importante.
El segundo punto se deriva del hecho de que todas las computadoras
modernas utilizan direcciones
virtuales de por lo menos 32 bits, donde 64 bits se vuelven cada vez ms
comunes. Por decir,
con un tamao de pgina de 4 KB, un espacio de direcciones de 32 bits tiene 1
milln de pginas
y un espacio de direcciones de 64 bits tiene ms de las que desearamos
contemplar. Con 1 milln
de pginas en el espacio de direcciones virtual, la tabla de pginas debe tener
1 milln de entradas.
Y recuerde que cada proceso necesita su propia tabla de pginas (debido a
que tiene su propio espacio
de direcciones virtuales).
La necesidad de una asociacin de pginas extensa y rpida es una restriccin
considerable en
cuanto a la manera en que se construyen las computadoras. El diseo ms
simple (por lo menos
en concepto) es tener una sola tabla de pginas que consista en un arreglo de
registros de hardware
veloces, con una entrada para cada pgina virtual, indexada por nmero de
pgina virtual, como
se muestra en la figura 3-10. Cuando se inicia un proceso, el sistema operativo
carga los registros
con la tabla de pginas del proceso, tomada de una copia que se mantiene en
la memoria principal.
Durante la ejecucin del proceso no se necesitan ms referencias a memoria
para la tabla de pginas.
Las ventajas de este mtodo son que es simple y no requiere referencias a
memoria durante la
asociacin. Una desventaja es que es extremadamente costoso que la tabla de
pginas sea extensa;
otra es que tener que cargar la tabla de pginas completa en cada conmutacin
de contexto ve afectado
el rendimiento.
En el otro extremo, toda la tabla de pginas puede estar en la memoria
principal. As, todo lo
que el hardware necesita es un solo registro que apunte al inicio de la tabla de
pginas. Este diseo
permite cambiar la asociacin de direcciones virtuales a direcciones fsicas al
momento de una conmutacin
de contexto con slo recargar un registro. Desde luego, tiene la desventaja de
requerir una
o ms referencias a memoria para leer las entradas en la tabla de pginas
durante la ejecucin de
cada instruccin, con lo cual se hace muy lenta.

4.3.4 Tablas de pginas para memorias extensas


Estas tablas pueden ser utilizadas para el aceleramiento de traducciones
virtuales a direcciones fsicas uno de los problemas de estas pginas como
lidiar con espacios de direcciones virtuales muy extensas para lo cual existen
dos maneras de realizarlo

4.3.4.1 Tablas de pginas multinivel

El secreto del mtodo de la tabla de pginas multinivel es evitar mantenerlas en


memoria todo el tiempo, y en especial, aquellas que no se necesitan.
4.3.4.2Tablas de pginas invertidas

Una de esas soluciones es la tabla de pginas invertida. En este diseo hay


una entrada por cada marco de pgina en la memoria real, en vez de tener una
entrada por pgina de espacio de direcciones virtuales. Las tablas de pginas
invertidas son comunes en las mquinas de 64 bits ya que incluso con un
tamao de pgina muy grande, el nmero de entradas en la tabla de pginas
es enorme.
4.4 ALGORITMOS DE REEMPLAZO DE PGINA

SE da cuando ocurre un fallo de pgina el sistema operativo debe de elegir una


pgina para desocuparla eliminarla de memoria y poder hacer espacio para la
pgina naque va a entrar Si se elimina una pgina de uso frecuente, tal vez
tenga que traerse de vuelta rpidamente, lo cual produce una sobrecarga
adicional.

4.4.1 El algoritmo de reemplazo de pginas: ptimo OPT

Este algoritmo es fcil de describir , pero imposible de implementar: al


momento en que ocurre un fallo de pgina, hay cierto conjunto de pginas en
memoria y una de stas se referenciar en la siguiente instruccin; otras
pginas tal vez no se referencien sino hasta 10, 100 o tal vez 1000
instrucciones despus. Existe un nico problema con este algoritmo es que no
se puede realizar al momento del fallo de pgina, el sistema operativo no tiene
forma de saber cundo ser la prxima referencia a cada una de las pginas.

4.4.2 El algoritmo de reemplazo de pginas: no usadas recientemente


Cuando el sistema operativo vaya a recolectar estadsticas tiles sobre el uso
de pginas, la mayor parte de las computadoras con memoria virtual tienen dos
bits de estado asociados a cada pgina: R se establece cada vez que se hace
referencia a la pgina y M se establece cuando se escribe en la pgina .Es
importante tener en cuenta que estos bits se deben actualizar en cada
referencia a la memoria, por lo que es imprescindible que se establezcan
mediante el hardware.

4.4.3 El algoritmo de reemplazo de pginas: FIFO (First-In First-Out)


El sistema operativo mantiene una lista de todas las pginas actualmente en
memoria, en donde la llegada ms reciente est en la parte final y la menos
reciente en la parte frontal. En un fallo de pgina, se elimina la pgina que est
en la parte frontal y la nueva pgina se agrega a la parte final de la lista.
Cuando se aplica este algoritmo podra eliminarse una pgina de utilizacin
prxima, por esta razn es raro que se utilice FIFO en su forma pura.

4.4.4 El algoritmo de reemplazo de pginas: FIFO, segundo intento


Es una modificacin simple que se realiz al algoritmo FIFO para evitar el
problema de descartar una pgina de uso frecuente es decir la pgina ms
antigua Despus la bsqueda continua. Lo que el algoritmo de segunda
oportunidad est buscando es una pgina antigua a la que no se haya hecho
referencia en el intervalo de reloj ms reciente.
4.4.5 El algoritmo de reemplazo de pginas: CLOCK

El algoritmo segunda oportunidad no es muy ineficiente debido a que est


moviendo constantemente pginas en su lista. Un mejor mtodo sera
mantener todos los marcos de pgina en una lista circular en forma de reloj, La
manecilla apunta a la pgina ms antigua. Cuando ocurre un fallo de pgina, la
pgina a la que apunta la manecilla se inspecciona.
4.4.6 El algoritmo de reemplazo de pginas: LRU (Least Recently Used)

Una buena aproximacin al algoritmo ptimo se basa en la observacin de que


las pginas que se hayan utilizado con frecuencia en las ltimas instrucciones,
tal vez se volvern a usar con frecuencia en las siguientes. Por el contrario, las
pginas que no se hayan utilizado por mucho tiempo probablemente seguirn
sin utilizarse por mucho tiempo ms, con esta idea, cuando ocurra un fallo de
pgina, hay que descartar la pgina que no se haya utilizado durante la mayor
longitud de tiempo.

4.4.7 El algoritmo de reemplazo de pginas: AGING (envejecimiento)


Es una pequea modificacin de algoritmo NFU que le permite simular el
algoritmo LRU muy bien. La modificacin consta de dos partes. Primero, cada
uno de los contadores se desplaza a la derecha 1 bit antes de agregar el bit R.
Despus, el bit R se agrega al bit de ms a la izquierda, en lugar de sumarse al
bit de ms a la derecha. La figura 3-18 ilustra cmo funciona el algoritmo
modificado

4.4.8 El algoritmo de reemplazo de pginas: conjunto de trabajo

En la forma ms pura de paginacin, los procesos inician sin ninguna de sus


pginas en la memoria. Tan pronto como la CPU trata de obtener la primera
instruccin, recibe un fallo de pgina, causando que el sistema operativo tenga
que traer la pgina que contiene la primera instruccin. Por lo general a este
fallo le siguen otros fallos de pgina por las variables globales y la pila.

4.4.9 El algoritmo de reemplazo de pginas

WSClock Al algoritmo bsico del conjunto de trabajo es incmodo ya que exige


explorar toda la tabla de pginas en cada fallo de pgina hasta localizar un
candidato adecuado. Un algoritmo mejorado, basado en el algoritmo de reloj
pero que tambin utiliza la informacin del conjunto de trabajo, se conoce como
WSClock.

4.5 CUESTIONES DE DISEO PARA LOS SISTEMAS


DE PAGINACIN
En cuestiones de diseo no basta con conocer la mecnica bsica. Para
disear un sistema hay que saber mucho ms inclusive para hacer que
funcione bien.

4.5.1 Polticas de asignacin local contra las de asignacin global


En las secciones anteriores hemos analizado varios algoritmos para
seleccionar una pgina y sustituirla
al ocurrir un fallo. Una cuestin importante asociada con esta eleccin (que
hemos dejado de
lado cuidadosamente hasta ahora) es cmo se debe asignar la memoria entre
los procesos ejecutables
en competencia.
D un vistazo a la figura 3-23(a). En esta figura, tres procesos (A, B y C)
componen el conjunto
de procesos ejecutables. Suponga que A obtiene un fallo de pgina. Debe el
algoritmo de reemplazo
de pginas tratar de encontrar la pgina de uso menos reciente, considerando
slo las seis
pginas que estn actualmente asignadas a A o debe considerar todas las
pginas en memoria? Si
slo examina las pginas asignadas a A, la pgina con el menor valor de edad
es A5, por lo que obtenemos
la situacin de la figura 3-23(b).
Por otro lado, si se va a eliminar la pgina con el menor valor de edad sin
importar de quin
sea, se elegir la pgina B3 y obtendremos la situacin de la figura 3-23(c). Al
algoritmo de la figura
3-23(b) se le considera de reemplazo de pginas local, mientras que al de la
figura 3-23(c), un
algoritmo global. Los algoritmos locales corresponden de manera efectiva a
asignar a cada proceso
una fraccin fija de la memoria. Los algoritmos globales asignan marcos de
pgina de manera
dinmica entre los procesos ejecutables. As, el nmero de marcos de pgina
asignados a cada proceso
vara en el tiempo.
En general, los algoritmos globales funcionan mejor, en especial cuando el
tamao del conjunto
de trabajo puede variar durante el tiempo de vida de un proceso. Si se utiliza un
algoritmo local
y el conjunto de trabajo crece, se producir una sobrepaginacin, aun cuando
haya muchos marcos
de pgina libres. Si el conjunto de trabajo se reduce, los algoritmos locales
desperdician memoria.
Si se utiliza un algoritmo global, el sistema debe decidir en forma continua
cuntos marcos de pgina
asignar a cada proceso. Una

4.5.2 Control de carga

Los procesos, puede ocurrir que el sistema se sobre pagine. De hecho, cada
vez que los conjuntos de trabajo combinados de todos los procesos exceden a
la capacidad de la memoria, se puede esperar la sobre paginacin
Una buena forma de reducir el nmero de procesos que compiten por la
memoria es intercambiaralgunos de ellos envindolos al disco y liberar todas
las pginas que ellos mantienen

4.5.3 Tamao de pgina

El tamao de pgina es un parmetro que a menudo el sistema operativo


puede elegir. Incluso si el hardware se ha diseado, Como resultado, no hay un
tamao ptimo en general.

4.5.4 Espacios separados de instrucciones y de datos

La mayor parte de las computadoras tienen un solo espacio de direcciones que


contiene tantos programas como datos, Si este espacio de direcciones es lo
bastante grande, todo funciona bien. No obstante, a menudo es demasiado
pequeo, lo cual obliga a los programadores a pararse de cabeza tratando de
ajustar todo en el espacio de direcciones.

4.5.5 Pginas compartidas


En las pginas compartidas es un sistemas de multiprogramacin grande es
comn que varios usuarios ejecuten el mismo programa a la vez.
. Un problema es que no todas las pginas se pueden compartir. En especial,
slo pueden compartirse las pginas que son de slo lectura como el texto del
programa, pero las pginas de datos no.

4.5.6 Bibliotecas compartidas

La comparticin se puede realizar en otros elementos adems de las pginas


individuales. Si un programa se inicia dos veces, la mayor parte de los sistemas
operativos compartirn de manera automtica todas las pginas de texto,
quedando slo una copia en la memoria.

4.5.7 Archivos asociados

La idea aqu es que un proceso puede emitir una llamada al sistema para
asociar un archivo a una porcin de su espacio de direcciones virtuales. En la
mayor parte de las implementaciones no se traen pginas al momento de la
asociacin, sino que a medida que se usan las pginas, se paginan bajo
demanda una a la vez, usando el archivo de disco como el almacn de
respaldo.

4.5.8 Poltica de limpieza


La paginacin funciona cuando hay muchos marcos de pgina libres que se
pueden reclamar al momento en que ocurran fallos de pgina. Si cada marco
de pgina est lleno y adems modificado, antes de que se pueda traer una
nueva pgina se debe escribir una pgina anterior en el disco.

4.5.9 Interfaz de memoria virtual

Una razn por la que se otorga a los programadores el control sobre su mapa
de memoria es para permitir que dos o ms procesos compartan la misma
memoria. Si los programadores pueden nombrar regiones de su memoria, tal
vez sea posible para un proceso dar a otro proceso el nombre de una regin de
memoria, de manera que el proceso tambin pueda asociarla. Con dos (o ms)
procesos compartiendo las mismas pginas, la comparticin con mucho ancho
de banda se hace posible: un proceso escribe en la memoria compartida y otro
proceso lee de ella.

4.6 CUESTIONES DE IMPLEMENTACIN

En cuestin de implementacin los sistemas de memoria virtual tienen que


elegir entre los principales algoritmos tericos: entre el algoritmo de segunda
oportunidad y el de envejecimiento, entre la asignacin de pginas local o
global, y entre la paginacin bajo demanda o la pre paginacin.

4.6.1 Participacin del sistema operativo en la paginacin

Cuando el sistema operativo participa en la paginacin existen cuatro formas :


al crear un proceso, al ejecutar un proceso, al ocurrir un fallo de pgina y al
terminar

4.6.2 Manejo de fallos de pgina

Cuando ocurren los fallos de pgina procedemos un nmero de eventos que


son:

1. El hardware hace un trap al kernel, guardando el contador de programa en la


pila.
2. Se inicia una rutina en cdigo ensamblador para guardar los registros
generales y dems informacin voltil.
.
3. El sistema operativo trata de descubrir cul pgina virtual se necesita.
4. El sistema comprueba si esta direccin es vlida y si la proteccin es
consistente con el acceso.
5. Si el marco de pgina seleccionado est sucio, la pgina se planifica para
transferirla al disco
6. Tan pronto como el marco de pgina est limpio el sistema operativo busca
la direccin de disco en donde se encuentra
7. Las tablas de pginas se actualizan para reflejar su posicin y el marco se
marca como en estado normal.
8. La instruccin fallida se respalda al estado en que tena cuando empez
9. El proceso fallido se planifica y el sistema operativo regresa a la rutina (en
lenguaje ensamblador)
10. Esta rutina recarga los registros y dems informacin de estado.

4.6.3 Respaldo de instruccin

Cuando un programa hace referencia a una pgina que no est en memoria, la


instruccin que produjo el fallo se detiene parcialmente y ocurre un trap al
sistema operativo. Una vez que el sistema operativo obtiene la pgina
necesaria, debe reiniciar la instruccin que produjo el trap. Es ms fcil decir
esto que hacerlo.

4.6.4 Bloqueo de pginas en memoria

Una solucin a este problema es bloquear las pginas involucradas en


operaciones de E/S en memoria, de manera que no se eliminen. Bloquear una
pgina se conoce a menudo como fijada (pinning) en la memoria. Otra solucin
es enviar todas las operaciones de E/S a bferes del kernel y despus copiar
los datos a las pginas de usuario.

4.6.5 Almacn de respaldo

El algoritmo ms simple para asignar espacio de pgina en el disco es tener


una particin de
intercambio especial en el disco o an mejor es tenerla en un disco separado
del sistema operativo
(para balancear la carga de E/S). La mayor parte de los sistemas UNIX
funcionan as. Esta particin
no tiene un sistema de archivos normal, lo cual elimina la sobrecarga de
convertir desplazamientos
en archivos a direcciones de bloque. En vez de ello, se utilizan nmeros de
bloque relativos
al inicio de la particin.
Cuando se inicia el sistema, esta particin de intercambio est vaca y se
representa en memoria
como una sola entrada que proporciona su origen y tamao. En el esquema
ms simple, cuando
se inicia el primer proceso, se reserva un trozo del rea de la particin del
tamao del primer proceso
y se reduce el rea restante por esa cantidad. A medida que se inician nuevos
procesos, se les
asigna trozos de la particin de intercambio con un tamao equivalente al de
sus imgenes de ncleo.
Al terminar, se libera su espacio en disco. La particin de intercambio se
administra como una
lista de trozos libres. En el captulo 10 analizaremos mejores algoritmos.

3.6.6 Separacin de poltica y mecanismo

Una importante herramienta para administrar la complejidad de cualquier


sistema es separar la poltica del mecanismo, Este principio se puede aplicar a
la administracin de la memoria, al hacer que la mayor parte del administrador
de memoria se ejecute como un proceso a nivel usuario. Dicha separacin se
realiz por primera vez en Mach (Young y colaboradores, 1987).

4.7 SEGMENTACIN

La memoria tiene segmentos, que cada una de ellos tiene una variable definida
intrnsecamente por su tamao que contiene el programa.
La administracin de memoria tiene su segmentacin la cual le ayuda a tener
un mejor manejo al programa que tiene como su reflejo la divisin lgica. La
memoria es una matriz de palabra o bytes que tienen un acceso directo hacia
el CPU. Cada uno de los procesos son representados de modos muy diferentes
que tienen un programa usado por el usuario que comnmente se utiliza como
por ejemplo:
Compilacin
Cargar
Ejecucin

4.7.1 La funcin de la administracin de memoria de segmentos es:


El ncleo de la administracin de memoria que crea y a la vez destruye
segmentos al momento de crear y terminar dicho proceso en ejecucin o
cuando carga un nmero binario. Tenemos en cuenta que el ncleo administra
la memoria llamada heap (monton) se encarga de una mejor administracin la
memoria del proceso.
El ncleo heap tiene 2 procesos independientes como:
La administracin de segmentos para su memoria
La administracin de memoria para sus propias estructuras que crean un
proceso de entrada y salida.
4.7.2 Segmentacin con paginacin:
Es el manejo de memoria que divide en secciones del mismo tamao,
denominados marcos de pgina. De esta forma se puede cargar una
informacin de cualquier marco de pgina.
Las pginas:
Sirven para el almacenamiento de informacin y transferir a la memoria
principal y memoria secundaria. Los mecanismos de paginacin permite la
informacin correcta entre las direcciones virtuales dadas por el programa y las
direcciones reales de la memoria.
Las funciones de paginacin de la memoria son:
Llevar a cabo la transformacin de una direccin virtual a fsica a la
determinacin de la pgina a la que corresponde.
Transferir cuando haga falta pginas de la memoria secundaria a la
memoria principal y viceversa cuando ya no sea necesaria.
Paginas compartidas:
La paginacin permite que muchos procesos puedan compartir pginas en
memoria.
Segmentacin:
Es una tcnica distinta para gestin de memoria que pretende el mejor uso del
usuario. Los programas generalmente se desarrollan en torno a un programa
principal. Desde otro punto de vista un programa es un conjunto de
componentes lgicos de las que varan el tamao o un conjunto de segmentos
que son definidos por su tamao y numero.
La segmentacin de un programa realiza un programa llamado compilador y en
ella una direccin lgica que se expresa mediante 2 valores:
1.- nmero de segmentos (S)
2.-desplazamiento dentro del segmento (D)
Esto tiene como ayuda el reducir la fragmentacin interno de la memoria
provocada por la paginacin ya que asigna a cada programa la cantidad de
memoria que requiera
5 Resultados

6 Conclusiones
7 Apendice

5.-encierre la definicin correcta de paginacin compartida?


a) La paginacin permite que muchos procesos puedan compartir paginas
en memoria
b) Trasferir cuando haga falta pginas de memoria secundarias a
principales.
c) Almacenan informacin y trasfieren a la memoria principal y secundaria.
Respuesta a

6.-encierre la definicin de segmentacin?


a) Permite que la informacin correcta entre a las direcciones virtuales del
programa
b) una tcnica distinta para gestin de memoria que pretenda el mejor uso del
usuario.
c) Permite que muchos procesos puedan compartir en las memorias.
Respuesta b

Referencias