miércoles, 22 de mayo de 2013
Segmentacion y Paginacion
PAGINACIÓN Y SEGMENTACIÓN
La paginación y la
segmentación puras son métodos de manejo de memoria bastante efectivos, aunque
la mayoría de los sistemas operativos modernos implantan esquemas combinados,
es decir, combinan la paginación y la segmentación.
La idea de
combinar estos esquemas se debe a que de esta forma se aprovechan los conceptos
de la división lógica de los programas (segmentos) con la granularidad de las
páginas. De esta forma, un proceso estará repartido en la memoria real en
pequeñas unidades (paginas) cuya liga son los segmentos. También es factible
así el compartir segmentos a medida que las partes necesitadas de los mismos se
van reverenciando (paginas).
Para comprender
este esquema, nuevamente se verá cómo se traduce una dirección virtual en una
localidad de memoria real. Para la paginación y segmentación puras se puede
decir que el direccionamiento es `bidimensional' porque se necesitan dos
valores para hallar la dirección real.
Para el caso
combinado, se puede decir que se tiene un direccionamiento
`tridimensional'.
El sistema debe
contar con una tabla de procesos (TP). Por cada renglón de esa tabla se tiene
un número de proceso y una dirección a una tabla de segmentos. Es decir, cada
proceso tiene una tabla de segmentos. Cuando un proceso hace alguna referencia
a memoria, se consulta TP para encontrar la tabla de segmentos de ese proceso.
En cada tabla de segmentos de proceso (TSP) se tienen los números de los
segmentos que componen a ese proceso.
Por cada segmento
se tiene una dirección a una tabla de páginas. Cada tabla de páginas tiene las
direcciones de las páginas que componen a un solo segmento. Por ejemplo, el
segmento `A' puede estar formado por las paginas reales `a','b','c','p' y `x'.
El segmento `B' puede estar compuesto de las paginas `f','g','j','w' y
`z'. Otro aspecto importante es la
estrategia para cargar páginas (o segmentos) a la memoria RAM.
Se usan más
comúnmente dos estrategias: cargado de páginas por demanda y cargado de páginas
anticipada. La estrategia de cargado por demanda consiste en que las páginas
solamente son llevadas a RAM si fueron solicitadas, es decir, si se hizo
referencia a una dirección que cae dentro de ellas.
La carga
anticipada consiste en tratar de adivinar que paginas serán solicitadas en el
futuro inmediato y cargarlas de antemano, para que cuando se pidan ya no
ocurran fallos de página.
Ese `adivinar'
puede ser que se aproveche el fenómeno de localidad y que las páginas que se
cargan por anticipado sean aquellas que contienen direcciones contiguas a la
dirección que se acaba de referenciar. De hecho, el sistema operativo VMS usa
un esquema combinado para cargar páginas: cuando se hace referencia a una
dirección cuya página no está en RAM, se provoca un fallo de página y se carga
esa página junto con algunas páginas adyacentes. En este caso la página
solicitada se cargó por demanda y las adyacentes se cargaron por anticipación.
Administracion de memoria
ADMINISTRACIÓN DE MEMORIA
La administración de memoria se refiere a los
distintos métodos y operaciones que se encargan de obtener la máxima utilidad
de la memoria, organizando los procesos y programas que se ejecutan de manera
tal que se aproveche de la mejor manera posible el espacio disponible.
Para poder lograrlo, la operación principal que
realiza es la de trasladar la información que deberá ser ejecutada por el
procesador, a la memoria principal. Actualmente esta administración se conoce
como Memoria Virtual ya que no es la memoria física del procesador sino una
memoria virtual que la representa. Entre algunas ventajas, esta memoria permite
que el sistema cuente con una memoria más extensa teniendo la misma memoria
real, con lo que esta se puede utilizar de manera más eficiente. Y por
supuesto, que los programas que son utilizados no ocupen lugar innecesario.
Las técnicas que existen para la carga de programas en
la memoria son: partición fija, que es la división de la memoria libre en
varias partes (de igual o distinto tamaño) y la partición dinámica, que son las
particiones de la memoria en tamaños que pueden ser variables, según la
cantidad de memoria que necesita cada proceso.
Entre las principales operaciones que desarrolla la
administración de memoria se encuentran la reubicación, que consiste en
trasladar procesos activos dentro y fuera e la memoria principal para maximizar
la utilización del procesador; la protección, mecanismos que protegen los
procesos que se ejecutan de interferencias de otros procesos; uso compartido de
códigos y datos, con lo que el mecanismo de protección permite que ciertos
procesos de un mismo programa que comparten una tarea tengan memoria en común.
Suscribirse a:
Comentarios (Atom)