miércoles, 14 de enero de 2015

VENTAJAS Y DESVENTAJAS

Ventajas y desventajas de la memoria virtual
Ventajas:
  • Permite optimizar uso de memoria
  • Mantiene más procesos en memoria principal
  • Mantiene en disco partes del proceso poco usadas (rutinas de atención a errores poco frecuentes, funciones de uso esporádico, datos no usados, …) .
  • Permite que un proceso sea más grande que toda la memoria principal
  • Se encarga el Sistema Operativo: evita al usuario la preocupación por programar con superposición.
  • Con respecto a la performance del sistema: Se cuenta con una memoria virtualmente más extensa con la misma memoria real. Se utiliza mucho más eficientemente la memoria real.
  • Con respecto al desarrollo de aplicaciones: Al eliminar las restricciones de memoria permite diseñar los sistemas más fácilmente, en menor tiempo y a menos costo. Hace más sencillo el mantenimiento y la ampliación de los programas. Hace más justificable el diseño e implementación de algunas aplicaciones, cuyos requerimientos de memora varíen bastante en su ejecución de acuerdo al volumen y complejidad de las transacciones. con respecto a la operación del computador: Permite que un equipo de una memoria real menor pueda ser usado sin dificultad como back-up en caso de necesidad. Hace innecesario efectuar ciertos procedimientos cuyo único propósito es un mejor aprovechamiento de la memoria real. Simplifica las actividades de planificación
Desventajas
  • Sobrecarga por gestión compleja de memoria
  • Costo asociado a la transformación de direcciones;
  • Memoria adicional que requiere para almacenar las tablas que debe mantener el sistema operativo (memoria real de la parte residente del sistema operativo)para indicar: la cantidad de memoria real implementada, las secciones que están presente en la memoria real y sus direcciones de ubicación, y elementos de juicio para determinar qué secciones se tratarán de dejar en memoria real y cuáles no, o que sección será desplazada cuando otra sección de memoria virtual deba ser llevada a memoria real; pequeño desperdicio de memoria que se produce en la última página de un programa (ya que rara vez el tamaño del programa es múltiplo del tamaño de las páginas); merma en el rendimiento del computador si es incorrectamente utilizada; posible incremento del tiempo de ejecución de cada programa como consecuencia de la paginación (operaciones de entrada/salida que demorarán la ejecución del programa).
  • La memoria virtual puede ser una herramienta poderosa para incrementar la performance del computador. Pero ello depende de ciertos factores, tales como:
  • Velocidad de los dispositivos que contendrán la memoria virtual: La actividad de paginación afecta adversamente a la performance del equipo cuando el procesador real está frecuentemente esperando que termine una operación de entrada/salida de paginación; por tanto se debe procurar que los requerimientos de operaciones de paginación estén por debajo de lo necesario para aprovechar convenientemente la multiprogramación. En caso contrario se incrementarán los tiempos ociosos del órgano de comando. Velocidad del procesador: Una relación desbalanceada entre la velocidad del procesador y la del dispositivo de paginación puede alterar el rendimiento. Tamaño de la memoria real y virtual: La cantidad de memoria real de la CPU (en relación con el tamaño de la memoria virtual) afectará el número de páginas faltantes que deberán ser traídas del dispositivo de paginación. Si el tamaño de la memoria real es igual al de la virtual que están usando los programas en ejecución no habrá páginas faltantes ya que todas estarán en memoria real. En cambio cuando la memoria real sea menor, la cantidad de páginas faltantes estará dada por la razón de la memoria virtual usada por la memoria real disponible. Estructura de los programas: La cantidad de memoria virtual que usa un programa no es un factor tan significativo en la performance del equipo como la forma en que la usa. Algunas formas para incrementar el rendimiento del equipo son:
  • Usar áreas de entrada/salida más largas: Reduce el tiempo en que las páginas del programa estarán en memoria real. Sin embargo un aumento muy significativo podría afectar negativamente el rendimiento en equipos con poca memoria real.
  • Aumentar la capacidad de manejo de páginas faltantes cuando la actividad de paginación causa frecuentes desactivaciones de programas: Esto puede ser realizado:
  • Usando un dispositivo de mayor velocidad; estableciendo más dispositivos de paginación; reduciendo o eliminado archivos del dispositivo de paginación; reduciendo la actividad del canal que corresponde al dispositivo de paginación; o aumentando un poco la memoria real.

CARACTERISTICAS

Características de la memoria virtual


Ordenadores dependen de numerosos sistemas de memoria para almacenar y recuperar datos. Gestión de la memoria es un sistema utilizado para gestionar el almacenamiento de equipo para una mejor organización del sistema de archivos y el acceso de datos más eficiente . La memoria virtual es una técnica de gestión de la memoria. Definición
memoria virtual virtualiza dispositivos de almacenamiento de memoria en una computadora. Virtualización de hardware oculta las características físicas de una plataforma informática , y en su lugar muestra una abstracción de ese hardware, o un par de conceptos a la vez para reducir el detalle innecesario .
Función

memoria virtual toma la forma de un programa , que gestiona las unidades de almacenamiento en disco y memoria de acceso aleatorio (RAM ) , el principal tipo de almacenamiento de memoria en una computadora. La memoria virtual permite que los nuevos datos que se asignarán en el disco duro una vez que la memoria RAM disponible en el sistema informático se ha llenado . Esto libera espacio de seguridad que considere necesarias en la memoria RAM para cargar nuevas aplicaciones y almacenar nuevos datos según sea necesario .
Características
memoria virtual
utiliza la memoria hardware de manera más eficiente que los sistemas sin la memoria virtual . Cueros fragmentación de memoria virtual , o la dispersión de los archivos , que se produce cuando un sistema ya no puede organizar los datos en un patrón relacionado. La memoria virtual permite que un proceso que se ejecuta en un sistema con menos memoria disponible que la cantidad requerida para el proceso.

MEMORIA VIRTUAL

Memoria virtual

Cómo la memoria virtual se mapea a la memoria física.
La memoria virtual es una técnica de gestión de la memoria que permite que el sistema operativo disponga, tanto para el software de usuario como para sí mismo, de mayor cantidad de memoria que esté disponible físicamente. La mayoría de los ordenadores tienen cuatro tipos de memoria: registros en la CPU, la memoria caché (tanto dentro como fuera del CPU), la memoria RAM y el disco duro. En ese orden, van de menor capacidad y mayor velocidad a mayor capacidad y menor velocidad.
Muchas aplicaciones requieren acceso a más información (código y datos) que la que se puede mantener en memoria física. Esto es así sobre todo cuando el sistema operativo permite múltiples procesos y aplicaciones ejecutándose simultáneamente. Una solución al problema de necesitar mayor cantidad de memoria de la que se posee consiste en que las aplicaciones mantengan parte de su información en disco, moviéndola a la memoria principal cuando sea necesario. Hay varias formas de hacer esto.
Una opción es que la aplicación misma sea responsable de decidir qué información será guardada en cada sitio (segmentación), y de traerla y llevarla. La desventaja de esto, además de la dificultad en el diseño e implementación del programa, es que es muy probable que los intereses sobre la memoria de dos o varios programas generen conflictos entre sí: cada programador podría realizar su diseño teniendo en cuenta que es el único programa ejecutándose en el sistema. La alternativa es usar memoria virtual, donde la combinación entre hardware especial y el sistema operativo hace uso de la memoria principal y la secundaria para hacer parecer que el ordenador tiene mucha más memoria principal (RAM) que la que realmente posee. Este método es invisible a los procesos. La cantidad de memoria máxima que se puede hacer ver que hay tiene que ver con las características del procesador. Por ejemplo, en un sistema de 32 bits, el máximo es 232, lo que da 4096 Megabytes (4 Gigabytes). Todo esto hace el trabajo del programador de aplicaciones mucho más fácil, al poder ignorar completamente la necesidad de mover datos entre los distintos espacios de memoria.
Aunque la memoria virtual podría estar implementada por el software del sistema operativo, en la práctica casi siempre se usa una combinación de hardware y software, dado el esfuerzo extra que implicaría para el procesador.