administración de memorias actuales

17
ADMINISTRACIÓN DE LA MEMORIA SISTEMAS ACTUALES Ing. Walter Cubilla FP - UNA - Sistemas Operativos 1

Upload: wcubi

Post on 10-Aug-2015

1.165 views

Category:

Education


10 download

TRANSCRIPT

Page 1: Administración de memorias actuales

ADMINISTRACIÓN DE LA MEMORIA

SISTEMAS ACTUALES

Ing. Walter Cubilla FP - UNA - Sistemas Operativos 1

Page 2: Administración de memorias actuales

FP - UNA - Sistemas Operativos 2

Introducción

Las técnicas de administración de memoria actuales o más recientes tienen la característica principal que eliminan la necesidad de almacenar los programas de manera contigua y de que todo el programa resida en la memoria durante su ejecución.

Ing. Walter Cubilla

Page 3: Administración de memorias actuales

FP - UNA - Sistemas Operativos 3

Introducción

Ing. Walter Cubilla

Asignación de la memoria en páginas

Asignación de memoriaen segmentos

Asignación de memoriaen paginación por demanda

Asignación de memoriapor segmentación con

paginación por demanda

Page 4: Administración de memorias actuales

FP - UNA - Sistemas Operativos 4

Tipos de esquemas de asignación de memoria

Paginación Paginación por demanda Segmentación Segmentación con paginación por

demanda

Ing. Walter Cubilla

Page 5: Administración de memorias actuales

FP - UNA - Sistemas Operativos 5

Paginación

El administrador de memoria utiliza tablas para llevar el control.

En esencia hay tres tablas: Tabla de tareas (JT) Tabla de mapa de páginas (PMT) Tabla de mapa de memoria (MMT)

Ing. Walter Cubilla

Page 6: Administración de memorias actuales

FP - UNA - Sistemas Operativos 6

Paginación

Antes de ejecutar un programa, el administrador de la memoria realiza: La determinación del número de páginas del

programa. La ubicación de suficientes marcos de páginas

vacíos en la memoria principal. La carga de todas las páginas del programa

en los mismos.

Ing. Walter Cubilla

Page 7: Administración de memorias actuales

FP - UNA - Sistemas Operativos 7

Asignación de la memoria en páginas

Ing. Walter Cubilla

Primeras 100 líneas

Segundas 100 líneas

Terceras 100 líneas

50 líneas restantesEspacio desperdiciado

Sistema OperativoPágina 0

Página 1

Página 2

Página 3

Tarea 1- Página 2

Tarea 1- Página 0

Tarea 1- Página 1

Tarea 1- Página 3

0

1

2

3

4

5

6

7

8

9

10

11

12

Tarea 1 Memoria principal

Número deMarco depágina

Page 8: Administración de memorias actuales

FP - UNA - Sistemas Operativos 8

Paginación por demandaCaracterísticas generales

Introdujo la idea de cargar nada más una porción del programa en la memoria para su procesamiento.

Fue el primer esquema que eliminó la necesidad de colocar toda la tarea en la memoria desde el principio hasta el final de su proceso.

Las tareas siguen divididas en páginas del mismo tamaño, que inicialmente residen en almacenamiento secundario. Una vez iniciada la ejecución, estas páginas pasan a la memoria conforme se necesitan.

Aprovecha que los programas se escriben de manera secuencial, mientras un módulo está en proceso, los demás están ociosos.

Así como el anterior esquema, utiliza tablas para controlar cómo y con qué frecuencia las páginas entran o salen de la memoria.

Ing. Walter Cubilla

Page 9: Administración de memorias actuales

FP - UNA - Sistemas Operativos 9

Paginación por demanda

Tarea 3 - P0

Tarea 1 - P0

Tarea 4 - P0

Tarea 1 – P2

Tarea 3 – P1

0

1

2

3

4

5

6

7

8

9

Memoria principal

Sistema Operativo

Tarea 1 – P1

Tarea 2 - P0 10

11

12

13

14

15

Tarea 3 – P2

Tarea 1 – P3

Tarea 4 – P1

Tarea 2 – P1

Tarea 4 – P2

Pagina 0

Pagina 1

Pagina 2

Pagina 3

Tarea 1 Tarea 1 PMT

P0 S 5

P1 S 9

P2 S 7

P3 S 12

Nro de marco de página

referenciamodificación

estado

Pagina 0

Pagina 1

Tarea 2 Tarea 2 PMT

P0 S 10

P1 S 14

Pagina 0

Pagina 1

Pagina 2

Tarea 3 Tarea 3 PMT

P0 S 4

P1 S 8

P2 S 11

Pagina 0

Pagina 1

Pagina 2

Tarea 4 Tarea 4 PMT

P0 S 6

P1 S 13

P2 S 15

Pagina 3

Pagina 4

P3 N

P4 N

Pagina 5 P5 N

Ing. Walter Cubilla

Page 10: Administración de memorias actuales

FP - UNA - Sistemas Operativos 10

SegmentaciónCaracterísticas generales

Cada tarea se divide en varios segmentos de tamaños diferentes.

Cuando se compila un programa, los segmentos se conforman de acuerdo con los módulos estructurales del programa. Por ejemplo: el programa principal, la subrutina A, la subrutina B.

Cada segmento está numerado y para cada tarea se genera una tabla de mapa de segmentos (SMT) que contiene: número de segmento, longitud y localización en la misma.

Para controlar los segmentos, utiliza tres tablas que combinan aspectos de particiones dinámicas y de paginación por demanda.

Igual que en la paginación por demanda, las instrucciones dentro de cada segmento están ordenadas en secuencia, pero los segmentos no necesitan almacenarse juntos en la memoria.

Ing. Walter Cubilla

Page 11: Administración de memorias actuales

FP - UNA - Sistemas Operativos 11

Asignación en segmentos

Segmento 0

0 Programa principal

349

Segmento 1

0 Subrutina A

199

Segmento 2

0 Subrutina B

99

Asignación de memoria en segmentos

Ing. Walter Cubilla

Page 12: Administración de memorias actuales

FP - UNA - Sistemas Operativos 12

Asignación en segmentos

0 Programa principal

349

0 Subrutina A

199

0Subrutina B

99

Número de segmento

Tamaño Estado AccesoDirección

de lamemoria

0

1

2

350

200

100

S

S

N

E

E

E

4000

7000Sistema

Operativo

0

3000

Vacío

Programaprincipal

Otrosprogramas

Subrutina A

Otrosprogramas

4000

7000

Tabla de mapa de segmentos para la tarea 1

Memoria principal

S = sí (en memoria)

N = no ( no en memoria)

S = sólo ejecutar

Ing. Walter Cubilla

Page 13: Administración de memorias actuales

FP - UNA - Sistemas Operativos 13

Segmentación con paginación por demanda – Características generales

Es una combinación de la segmentación y de la paginación por demanda.

Ofrece los beneficios lógicos de la segmentación y las ventajas físicas de la paginación.

No conserva cada segmento en una unidad única contigua, sino que lo subdivide en páginas de igual tamaño, más pequeñas que la mayor parte de los segmentos y más fáciles de manipular.

Requiere de cuatro tablas: la tabla de tareas (JT) la tabla de mapa de segmentos (SMT) la tabla de mapa de páginas (PMT) la tabla de mapa de memoria (MMT)

Ing. Walter Cubilla

Page 14: Administración de memorias actuales

FP - UNA - Sistemas Operativos 14

Segmentación con paginación por demanda

Númerodetarea

Puntero a tabla demapa de segmentos

0

1

2

.

.

.

.

N

Númerodesegmento

Puntero a tabla demapa de páginas

0

1

2

0

1

2

3

Tarea 1

Tarea 0

0

1

2

3

Tarea N

Tabla de tareas activas Tabla de mapa de segmentos Tabla de mapa de páginas

Númerodepágina

Número demarco de página

0

1

7

4

Tarea 0/segmento 0

0

1

2

3

11

-

Tarea 0/segmento 1

0

1

8

13

Tarea 0/segmento 2

0

1

2

Tarea 1/segmento 0

0

1

Tarea 1/segmento 1

0

1

2

Tarea 1/segmento 3

Sistemaoperativo

0

1

2

Tarea0/seg1/pag0

Tarea0/seg0/pag1

3

4

5

Tarea0/seg0/pag0

Tarea0/seg2/pag0

Tarea0/seg1/pag1

6

7

8

9

10

11

12

13 Tarea0/seg2/pag1

14

Memoria principal

Ing. Walter Cubilla

Page 15: Administración de memorias actuales

FP - UNA - Sistemas Operativos 15

Memoria Virtual

La capacidad de mover a voluntad las páginas de un programa entre la memoria principal y el almacenamiento secundario dio entrada a un nuevo concepto, bien llamado memoria virtual.

A partir de la paginación por demanda se hizo posible que un programa se ejecutara, aún cuando sólo parte del mismo estuviera en la memoria principal, eliminando la restricción impuesta al tamaño máximo de programa.

Ing. Walter Cubilla

Page 16: Administración de memorias actuales

FP - UNA - Sistemas Operativos 16

Memoria VirtualPaginación y Segmentación

Memoria virtual con paginación Memoria virtual con segmentación

Permite la fragmentación interna dentro de los marcos de página

No permite la fragmentación externa

Los programas se dividen en páginasde tamaño igual

La dirección absoluta se calcula utilizando el número de página y el desplazamiento

Requiere PMT

No permite la fragmentación interna

Permite la fragmentación externa

Los programas se dividen en segmentos desiguales

La dirección absoluta se calcula usando el número de segmento y el desplazamiento

Requiere SMT

Ing. Walter Cubilla

Page 17: Administración de memorias actuales

FP - UNA - Sistemas Operativos 17

Administrador de MemoriaConclusión

El administrador de la memoria tiene la tarea de asignar la memoria a cada trabajo que se va ejecutar y recuperarla cuando se haya terminado la ejecución.

Ing. Walter Cubilla