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

Gestión de memoria

C3s4rHdzTarea1 de Febrero de 2023

2.983 Palabras (12 Páginas)97 Visitas

Página 1 de 12

[pic 1][pic 2][pic 3]

[pic 4][pic 5]

Gestión de la memoria.

CÉSAR HERNÁNDEZ HERNÁNDEZ

MATRICULA: 012798

DOCENTE: MTRO. JABEL RESENDIZ GONZALEZ

MATERIA: SISTEMAS OPERATIVOS

CURSO INTENSIVO VIRTUAL SISTEMAS LISSIS-1A

1.        Introducción        3

2.        Direcciones virtuales y físicas        3

3.        Esta lección…        5

4.        Particiones estáticas        6

5.        Particiones dinámicas        6

6.        Reubicación de procesos        8

7.        Segmentación        8

8.        Gestión de la segmentación        9

9.        Paginación        10

9.1        Gestión de la paginación        10

9.2        Direcciones virtuales y físicas en paginación        11

10.        Memoria Virtual        13

10.1        La memoria virtual se basa en los principios de localidad espacial y temporal.        13

10.2        Implementación de la memoria virtual (paginada)        13

10.3        Ejemplo1.- El proceso P6 hace referencia a una instrucción o dato de la página 0.        15

10.4        Ejemplo 2. El proceso P6 hace referencia a una instrucción o dato de la página 2.        16

11.        ¿Qué paginas deben estar en memoria?        16

12.        Algoritmos de remplazo.        17

12.1        FIFO (First In First Out):        17

12.2        LRU (Least Recently Used):        17

12.3        NRU(Not Recently Used):        17

12.4        Algoritmo de reloj (similar a FIFO, pero se tiene en cuenta si ha sido referenciada):        17

13.        Conclusión        18

14.        Bibliografía        18

  1. Introducción

En este tema se vera como gestiona el sistema operativo la memoria en cada uno de sus procesos y de qué forma le saca el máximo a la memoria para un mejor rendimiento.

  1. Direcciones virtuales y físicas

Un programa maquina es un conjunto ordenado de instrucciones en código máquina, que encajaran en n palabras de memoria, pudiéndose numerarse correlativamente de la 0 a la n-1. Las direcciones del programa se denomina direcciones virtuales o lógicas o relativas (dv).

[pic 6]

Los programas se cargan en la MP a partir de una determinada posición de memoria, en función de las zonas libres, que se denomina dirección base (DB). Las direcciones reales donde se carga el programa se denomina dirección física (df),

[pic 7]

Se puede transformar fácilmente una dirección virtual a física:

[pic 8][pic 9]

Las transformaciones de direcciones virtuales a físicas

Se suelen realizar con ayuda de un registro base (que se carga previamente con la dirección base) que se encuentra en la propia CPU o en unos cuantos. Específicos denominados Unidades de gestión de Memoria (MMU).

[pic 10]

En la actualidad, la MMU suele incluirse en el mismo chip del microprocesador, y realiza transformaciones entre direcciones virtuales y físicas que antiguamente se hacían por software.

[pic 11]

  1. Esta lección…

Trata de responder la pregunta de como ubicar los procesos en la MP de forma tal:

-Que quepa el mayor número de ellos.

-Que se aproveche al máximo (no queden zonas libres).

En multiprogramación

-El SO asigna espacio de memoria a los programas o procesos, de acuerdo con las zonas libres de memoria existen eren cada momento.

-Dependiendo de las posibilidades del SO, la asignación puede realizarse de distintas formas:

        -Particiones estáticas

        -Particiones dinámicas

        -Segmentación

        -asignación

        -Memoria virtual

  1. Particiones estáticas

-La memoria se divide en ciertos números de particiones por zonas, cada una de las cuales contendrá un proceso.

-La dirección base de cada proceso es la dirección de inicio de cada partición.

-El tamaño de las particiones (que puede ser no uniformes) es un para metro del SO.

        -Ejemplo: Memoria de 2MB, con particiones de 256KB.

-El SO mantiene una tabla de particiones (procesos) en la que cada fila corresponde a una partición, contiendo información tal como:

-Identificación de procesos, si esta libre o no, estado y dirección en memoria del bloque de control del proceso (BCP).

-Para transformar las direcciones virtuales a físicas en cada acceso de memoria la MMU consulta la table de particiones para la partición en que se encuentra el proceso y calcula su dirección base.

-El planificador de trabajos, una vez una partición esta libre, se hace que se introduzca el programa de máxima prioridad que haya en la cola de espera.

[pic 12][pic 13]

  1. Particiones dinámicas

Los programas son introducidos por el SO inicialmente en posiciones consecutivas de memoria, no existiendo por tanto peticiones predefinida.

[pic 14]

Gestión:

-Table de procesos, en la que cada línea contiene el identificativo del proceso, dirección base, capacidad que ocupa, estado, dirección de su BCP, etc.

-Tabla de fragmentos libre

-El planificador de trabajos, consultando esta tabla, introduce en la MP los programas que quepan en los fragmentos libres; y actualiza las dos tables.

[pic 16][pic 15]

Para transformar las direcciones virtuales a físicas en cada acceso de memoria, la MMU consulta la tabla procesos para obtener la dirección base correspondiente.

  1. Reubicación de procesos

Cuando acaba un proceso deja un fragmento libre que solo puede ser ocupado por otro de igual o capacidad de menor. Al ir acabando de ejecutarse los programas, el numero de fragmentos libres crecerá, llegando un momento en que el porcentaje de memoria aprovechado es muy reducido.

El problema se resuelve haciendo una computación que agrupa todos los fragmentos, reubicando los programas en ejecución.

Una vez unidos todos los fragmentos libres, existe la posibilidad de introducir nuevos procesos.

[pic 17]

  1. Segmentación

La memoria se aprovecha tanto mejor cuanto mas pequeños fuesen los procesos o hebras o unidades a almacenar en ella.

Un proceso está compuesto por unidades que denominamos segmentos:

        -Segmento de código (programa y subprogramas en lenguaje maquina).

        -Segmento de pila.

        -Segmentos de datos (conjunto de datos, vectores, etc.,).

La gestión de memoria con segmentación consiste en considerar como unidades de almacenamiento segmentos, en lugar de procesos o hebras.

La segmenta nación permite que ciertos procesos puedan compartir código (rutias, etc.) o datos comunes sin necesidad de estar duplicados en MP (segmentos reentrantes).

...

Descargar como (para miembros actualizados) txt (17 Kb) pdf (1 Mb) docx (1 Mb)
Leer 11 páginas más »
Disponible sólo en Clubensayos.com