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

Comparación En La Administración De Memoria RAM Entre Windows, Linux Y Mac OS


Enviado por   •  16 de Febrero de 2014  •  4.860 Palabras (20 Páginas)  •  596 Visitas

Página 1 de 20

Comparación en la Administración de Memoria RAM

entre Windows, Linux y Mac OS

Gestión de Memoria en Linux

Memoria Virtual

Direccionamiento de la memoria virtual: Linux utiliza una tabla de página de 3 niveles, cada tabla en particular tiene el tamaño de una página:

● Directorio de páginas: Los procesos activos tienen un directorio de páginas único que tiene el tamaño de página. El directorio de páginas debe residir en la memoria principal para todo proceso activo.

● Directorio intermedio de páginas: Este directorio se expande a múltiples páginas. Cada entrada en la tabla de páginas apunta a una página que contiene una tabla de páginas.

● Tabla de páginas: Cada entrada en la tabla hace referencia a una página virtual del proceso.

Para aumentar la eficiencia al cargar y descargar estas páginas desde o hacia la memoria, utiliza un mecanismo llamado Sistema de Colegas, en donde las páginas son agrupadas en marcos de tamaño fijo y para reemplazar páginas se utiliza el algoritmo del reloj en donde las páginas tienen una especie de variable de edad.

El algoritmo de reloj consiste en asociar un bit de usado y otro de modificado con cada una de las paginas, el usado se reemplaza por una variable de 8 bits, cada vez que se accede a una página esta variable se incrementa, después Linux recorre periódicamente la lista completa de páginas y decrementa la variable de edad de cada página a medida que va rotando por todas ellas en memoria principal. Una página que tiene un 0 es una página vieja ya que no se ha hecho referencia a ella desde hace ya algún tiempo y es el mejor candidato para el reemplazo.

Algoritmo de Reemplazo de Páginas

Linux se basa en el algoritmo de Reloj, como ya expliqué este algoritmo consiste en asociar un bit de usado y otro de modificado con cada una de las páginas de memoria principal. En Linux el usado se reemplaza por una variable de 8 bits. Cada vez que se accede a la página la variable se incrementa. Después Linux recorre periódicamente la lista completa de páginas y decrementa la variable de edad de cada página a medida que va rotando por todas ellas en memoria principal.

Una página que tiene un 0 es una "página vieja" es decir no se ha hecho referencia a ella desde hace ya algún tiempo y es el mejor candidato para el reemplazo. Cuando el valor de edad es más alto, la frecuencia con la que se ha accedido a la página recientemente es mayor y por lo tanto tiene un a posibilidad menor de elegirse para el reemplazo. Este algoritmo es una variante de la política LRU.

Reserva de Memoria del Núcleo

La gestión de memoria del núcleo se realiza en base a los marcos de página de la memoria principal. Su función básica es asignar y liberar marcos para los distintos usos.

Los fundamentos de la reserva de memoria en Linux son los mecanismos de reservas de páginas ya usados para le gestión de memoria virtual de usuario. Como se utiliza el algoritmo buddy, se puede reservar y liberar unidades de una o más páginas. Debido a que el tamaño mínimo de memoria que se puede reservar es de una página, la reserva de páginas no sería muy adecuada ya que el núcleo requiere pequeños fragmentos que se utilizarán por poco tiempo y que son de distintos tamaños. Es por eso que Linux utiliza un esquema conocido como "asignación de láminas". En una máquina Pentium/x64, el tamaño de página es de 4 Kbytes y los fragmentos dentro de una página se pueden asignar en tamaños de 32, 64, 128, 252, 508, 2040 y 4080 bytes.

Gestión de Memoria en Windows

El gestor de memoria está diseñado para trabajar con páginas que van desde los 4 Kbytes hasta 64Kbytes. Las plataformas Intel, PowerPC, y MIPS tienen 4096 bytes por página y las plataformas DEC Alpha tienen 8192 bytes por página.

Mapa de Direcciones Virtuales en Windows

Los procesos de usuario en Windows pueden ver un espacio de direcciones independientemente de 32 bits, permitiendo 4Gbytes de memoria por proceso. Por defecto una parte de esta memoria se reserva para el SO de manera que cada usuario dispone de 2Gbytes de espacio de direcciones posibles y todos los procesos lo comparten.

Se puede modificar esto restringiendo al SO a solo 1Gbyte y 3Gbytes para el usuario, esto viene explicado en la documentación de Windows.

Espacios de direcciones en Windows:

● 0x00000000 a 0x0000FFFF: reservada para ayudar a los programadores a capturar asignaciones de punteros Nulos.

● 0x00010000 a 0x7FFEFFFF: espacio de direcciones disponible para el usuario. Este espacio de encuentra dividido en páginas que se pueden cargar a la memoria principal.

● 0x7FFF0000 a 0x7FFFFFFF: una página de guarda, no accesible para el usuario. Lo que hace es verificar referencias a punteros fuera del rango.

● 0x80000000 a 0xFFFFFFFF: espacio de direcciones del sistema. Esta área es de 2Gbytes se utiliza por parte del ejecutivo de Windows, el micronúcleo y los manejadores de dispositivos.

Paginación (o swap)

Cuando se crea un proceso, puede, en principio utilizar todo el espacio de usuario de 2Gbytes (menos 128 Kbytes). Este espacio se encuentra dividido en páginas de tamaño fijo, cualquiera de las cuales se puede cargar en la memoria principal. Estados de las páginas:

● Disponible: Páginas que no están actualmente usadas por este proceso.

● Reservada: Conjunto de páginas contiguas que el gestor de memoria virtual separa para un proceso pero que no se cuentan para la cuota

● Asignada: Las páginas para las cuales el gestor de la memoria virtual ha reservado espacio en el fichero de paginación.

La distinción entre memoria reservada y asignada es muy útil debido a que minimiza la cantidad de espacio de disco que debe guardarse para un proceso en particular, manteniendo espacio libre en disco para otros procesos; y permite que un hilo o un proceso declare una petición de una cantidad de memoria que puede proporcionarse rápidamente si se necesita.

En Windows cuando se activa

...

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