Memoria particionada
Clasificado en Informática
Escrito el en español con un tamaño de 4,51 KB
PARTICIONES CONTINUAS DE TAMAÑO FIJO
Fragmentación Externa:
Sistema Operativo
Programa 1 Zona 1
Zona 2
PARTICIONES CONTIGUAS DE TAMAÑO VARIABLE (REUBICABLES)
En vez de utilizar registros HW para Indicar el principio y el fin de las zonas de memoria, se utiliza una tabla Interna del SO. Donde se registran las zonas de memoria libres o los huecos. (su inicio y tamaño).
Zona 1 2500 250 (kb) // àZona 2 3000 250 (kb) // àZona 3 4250 500 (kb)
PARTICIONES CONTIGUAS DE TAMAÑO VARIABLE (REUBICABLES)
Cuando existen numerosos huecos de Pequeño tamaño cada uno, pero que en conjunto suponen una gran extensión, se Hace necesario la compactación de la memoria para poder agrupar esos huecos un una Sola área de gran tamaño.
Zona 1 2500 500 (kb)//à Zona 3 4250 500 (kb).
Paginación
El principal problema De gestión de la memoria es el poder asignar cantidades contiguas de la misma a Cada uno de los programas para su ejecución.//-> La Paginación permite asignar memoria de forma discontinua y que los programas Continúen funcionando. //à Se Divide la memoria física en trozos de tamaño fijo llamados “Armazones” o “Frames”// à La Memoria lógica (los programas) en bloques de igual longitud llamadas “Paginas”.
Páginas 1-5 frames 1-10
El SO. Mantiene una tabla de páginas En donde se relaciona cada “Página” cargada en memoria con el “Frame” que la Contiene en la memoria física.
Frame 1 al 3 página 1 frame 5 página Del 2 al frame 9 página 5
Cada dirección que genera el procesador sera interceptada y dividida en 2 Componentes, numero de página (P) y desplazamiento en la página (d). // El Sistema mantiene la tabla de páginas en memoria, apuntando a su origen con un registro especial llamado // Registro base.// Cuando se obtiene una Dirección de una instrucción a ejecutar o un dato, el sistema accede a la tabla Y averigua el frame donde está esta página cargada (registro base + P).
Posteriormente Accede a la dirección real yendo al Frame correspondiente y desplazándose Dentro de él lo que le indique el desplazamiento (Frame + d).// Cada Dirección de memoria provoca dos accesos a memoria, lo que implica que se Duplica el tiempo de ejecución.
Obtenemos Una mejor gestión de la memoria a cambio de una mayor duración de los Procesos.// Para solventar, en la medida de lo posible este problema se recurre Al uso de memorias cache en donde se precargan las páginas que se están Ejecutando y las siguientes.
Esta Forma de gestionar la memoria permite la asignación de direcciones de manera Dinámica.// En sistemas pequeños, la tabla de páginas, en vez de ser una estructura De datos en memoria, se puede implementar mediante el usa de registros HW, Estos registros se conocen con el nombre de Registros asociativos. // Con Esta técnica podemos prácticamente eliminar la fragmentación externa, aunque la Interna es prácticamente imposible.
Segmentación
Técnica De gestión de memoria que pretende acercarse más al punto de vista del usuario.
Los Programas generalmente constan de 2 partes:
Núcleo Central. // Rutinas (llamadas por ese núcleo central). // Desde un punto de Vista lógico, un programa es un conjunto de componentes lógicos de tamaño variable, Es decir, un conjunto de segmentos, cada uno definido por su tamaño y su número. //
La Segmentación de un programa la realiza el compilador (siguiendo las órdenes del Programador) y en ella cada dirección lógica se expresa mediante 2 valores: Numero de segmento (S) y desplazamiento dentro del segmento (d). // Puesto Que la memoria física se direcciona linealmente, se necesita transformar cada Dirección lógica (S, d) en una dirección real (r), esta conversión la realiza Un dispositivo especial HW consultando la Tabla de segmentos. // Esta técnica Permite reducir la fragmentación interna provocada por la Paginación ya que se Le asigna a cada programa y segmento la cantidad de memoria que necesita.