Professional Documents
Culture Documents
TALLER PRESENCIAL # 2
4. ADMINISTRACIN DE MEMORIA
4.1. PANORAMA GENERAL.
La memoria es uno de los principales recursos de la computadora, la cual debe de administrarse con mucho cuidado. Aunque actualmente la mayora de los sistemas de cmputo cuentan con una alta capacidad de memoria, de igual manera las aplicaciones actuales tienen tambin altos requerimientos de memoria, lo que sigue generando escasez de memoria en los sistemas multitarea y/o multiusuario. La parte del sistema operativo que administra la memoria se llama administrador de memoria y su labor consiste en llevar un registro de las partes de memoria que se estn utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando stos la necesiten y liberndola cuando terminen, as como administrar el intercambio entre la memoria principal y el disco en los casos en los que la memoria principal no le pueda dar capacidad a todos los procesos que tienen necesidad de ella. Los sistemas de administracin de memoria se pueden clasificar en dos tipos: los que desplazan los procesos de la memoria principal al disco y viceversa durante la ejecucin y los que no. 4.2. Manejo de memoria en sistemas monousuario o sin intercambio. Bajo este esquema, la memoria real es tomada para almacenar el programa que se est ejecutando en un momento dado, con la visible desventaja de que si se est limitado a la cantidad de RAM disponible nicamente. El sistema operativo se ubica en las localidades superiores o inferiores de la memoria, seguido por algunos manejadores de dispositivos.
4.3. Multiprogramacin en memoria real:
Consiste en la idea de poner en la memoria fsica ms de un proceso al mismo tiempo, de manera que si el que se est ejecutando en este momento entraba en un periodo de entrada/salida La memoria fsica se divide en secciones de tamao suficiente para contener a varios programas.
4.4. Multiprogramacin en memoria virtual: Es un mtodo mediante el cual, un sistema operativo simula tener ms memoria principal que la que existe fsicamente. Para implementar la memoria virtual se utiliza un medio de almacenamiento secundario de alta velocidad de acceso, generalmente en disco duro de la mquina. Un sistema de memoria virtual se implementa utilizando paginacin como mtodo de administracin de memoria bsica y algn mecanismo de intercambio (para descargar pginas de la memoria principal hacia el disco duro y para cargar esas pginas de nuevo a la memoria).
V. Administracion de Procesos
5.1. Planificacin del procesador:
En un sistema multiprogramado, la memoria principal contiene varios procesos. Cada proceso alterna entre usar el procesador y esperar que se realice una operacin de E/S o que ocurra algn otro suceso. El procesador o los procesadores se mantienen ocupados ejecutando un proceso mientras los dems esperan.
c. Planificacin de bajo nivel: Determina a qu proceso listo se le asigna la CPU cuando esta queda disponible y asigna la CPU al mismo, es decir que despacha la CPU al proceso. La efecta el Despachador del Sistema Operativo, el que opera muchas veces por segundo y reside siempre en el almacenamiento primario. 5.3. Objetivos de la Planificacin: 5.3.1. Ser justa: Todos los procesos son tratados de igual manera. Ningn proceso es postergado indefinidamente. 5.3.2. Maximizar la capacidad de ejecucin: Maximizar el nmero de procesos servidos por unidad de tiempo. Maximizar el nmero de usuarios interactivos que reciban unos tiempos de respuesta aceptables: En un mximo de unos segundos. 5.3.3. Ser predecible: Un trabajo dado debe ejecutarse aproximadamente en la misma cantidad de tiempo independientemente de la carga del sistema. 5.3.4. Minimizar la sobrecarga: No suele considerarse un objetivo muy importante. 5.3.5. Equilibrar el uso de recursos: Favorecer a los procesos que utilizarn recursos infrautilizados. 5.3.6. Equilibrar respuesta y utilizacin. 5.3.7. Evitar la postergacin indefinida.
5.4. Caractersticas a Considerar Cantidad de Entrada/Salida: Existen procesos que realizan una gran cantidad de operaciones de entrada y salida (aplicaciones de bases de datos, por ejemplo). Cantidad de Uso de CPU: Existen procesos que no realizan muchas operaciones de entrada y salida, sino que usan intensivamente la unidad central de procesamiento. Por ejemplo, operaciones con matrices. Procesos de Lote o Interactivos: Un proceso de lote es ms eficiente en cuanto a la lectura de datos, ya que generalmente lo hace de archivos, mientras que un programa interactivo espera mucho tiempo (no es lo mismo el tiempo de lectura de un archivo que la velocidad en que una persona teclea datos) por las respuestas de los usuarios. Procesos en Tiempo Real: Si los procesos deben dar respuesta en tiempo real se requiere que tengan prioridad para los turnos de ejecucin. Longevidad de los Procesos: Existen procesos que que solo necesitan algunos segundos tpicamente requerirn varias horas para finalizar su labor, mientras que existen otros
Logra hacer ms predecibles los tiempos de respuesta puesto que los trabajos nuevos de prioridad alta no pueden desplazar a los trabajos en espera.