ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Particiones Fijas


Enviado por   •  9 de Septiembre de 2014  •  1.552 Palabras (7 Páginas)  •  443 Visitas

Página 1 de 7

Particiones fijas:

El primer intento para posibilitar la multiprogramación fue la creación de particiones fijas o estáticas, en la memoria principal, una partición para cada tarea. El tamaño de la partición se especificaba al encender el sistema, cada partición podía reconfigurarse al volver a encender el sistema o reiniciar el sistema.

Este esquema introdujo un factor esencial, la protección del espacio de memoria para la tarea. Una vez asignada una partición a una tarea, no se permitía que ninguna otra tarea entrara en sus fronteras.

Este esquema de partición es mas flexible que la de usuario único, por que permite que varios programas estén en memoria al mismo tiempo.

Consiste en divisiones de memoria que se efectúan en algún momento antes de ejecutar los programas de usuario y permanecen fijas desde entonces. El número de particiones distintas determina el grado de multiprogramación■

Particiones fijas (2/3)

Una vez definidas las particiones, el sistema operativo. necesita llevar la cuenta de sus estados, libre o en uso para propósitos de asignación

El estado y los atributos de las particiones se recogen en una estructura de datos llamada tabla de descripción de particiones (TDP).

Cada partición está descrita por su dirección inicial (base), su tamaño y su estado. Los campos de la base y tamaño son fijos

Particiones fijas (3/3)

Otra organización posible es asignar una cola de tareas a cada partición en memoria y las tareas se incluyen en la cola de la partición de memoria correspondiente a sus exigencias de memoria

Estrategias de asignación de particiones:

Primer ajuste

Mejor ajuste

Particiones dinámicas (1/2)

Cuando se pide que se cargue una imagen de un proceso en memoria, el módulo de gestión intenta crear una partición adecuada que asignar al proceso en cuestión, para ello es preciso localizar un área libre de memoria que sea igual o mayor que el proceso, si es así se fabrica la partición

La gestión de la memoria con particiones libres plantea el problema de mantenimiento de un registro de particiones libres y ocupadas que sea eficiente, tanto en tiempo para la asignación como para el aprovechamiento de la memoria. Formas de mantener este registro:

Mapa de bits

Listas enlazadas para las particiones libres y asignadas

El sistema de los asociados

Los algoritmos más habituales para la selección de un área libre de memoria a la hora de

la creación de una partición son:

Primer ajuste

Siguiente ajuste

Mejor ajuste

Peor ajuste

Problema la fragmentación externa o memoria desaprovechada entre particiones

La diferencia esencial con la gestión estática, es que las entradas a la TDP se utilizan sólo para definición de las particiones creadas y asignadas y las áreas libres se describen en la lista de memoria libre.

Partición fija

Consiste en dividir la memoria libre en varias partes de igual tamaño o de diferentes tamaños. En el caso de la partición fija de partes iguales, se plantean dos dificultades:

Un programa puede ser demasiado grande para caber en la partición. En este caso, el programador debe diseñar el programa mediante superposiciones, para que sólo una parte del programa esté en memoria principal. Cuando se necesita un módulo que no está presente, el programa de usuario debe cargar dicho módulo en la partición del programa, superponiéndose a los programas y datos que se encuentren en ella.

El uso de memoria principal es extremadamente ineficiente. Cualquier programa, sin importar lo pequeño que sea, ocupará una partición completa. Supongamos un programa que ocupa 120 Kb y se carga en una partición de 512 Kb, se malgasta el espacio interno de la partición y ésto se denomina fragmentación interna.

En el caso de particiones de igual tamaño, si todas las particiones estuvieran ocupadas con procesos que no están listos para ejecutar y necesita cargarse un nuevo proceso, debe determinarse qué partición expulsarse de memoria. Esta decisión es una decisión de planificación, que se verá en un capítulo próximo.

Pero en el caso de particiones de distintos tamaños, debe determinarse en que partición (por cuestiones de tamaño) se cargará el nuevo proceso. La forma más simple es asignar cada proceso a la partición más pequeña en que quepa (sin importar si la partición está cargada o no), lo que necesitará de una cola de expulsados para cada partición. Otra forma es asignar el proceso a la partición más pequeña entre aquellas que están libres (usando una única cola para todos los procesos); y si todas las particiones están ocupadas, se debe tomar una decisión de intercambio.

Estamos suponiendo con este método que conocemos la cantidad máxima de memoria que necesitará un proceso, lo que no siempre es cierto.

Partición dinámica

Este método consiste en

...

Descargar como (para miembros actualizados) txt (10 Kb)
Leer 6 páginas más »
Disponible sólo en Clubensayos.com