Anda di halaman 1dari 116

Sistemas Operativos

Administrar los recursos del sistema computacional


*Procesadores
*Memoria
*Dispositivos E/S
*Información (Archivo Base de Datos)
Procesadores
*Cpu Operaciones matematicas
*Cpu E/S Solamente actividades entrad salida lectura y escritura
Memoria
Lugar fisico donde sea almacena información finita
Ram (Memoria Fisica/Real/Primaria/Principal )
Memoria Secundaria (Discos/Cintas/Cd-Rom/diskettes/etc)Infinita
Memoria CACHE información que es utilizada con mayor frecuencia
*Primaria
*Secundaria
•Registro
•Memoria cache primaria
•Ram (memoria fisica/real primaria/principal)
•Memoria cache secundaria
•Memoria secundaria
Registros
Memoria
Ram Secundaria

Cache Cache
Primaria Secundaria
Dispositivos de E/S : Escaner, Teclado, Mouse, L.Optico de entrada
De salida Terminal, Impresora
De Entrada/ Salida : D. drive, D. duros, Cartuchos
Flujo de caracteres :Flujos continuos de BitsMouse , impresora etc
Lectura/escritura: Se hace bajo un flujo continuo de bits
Bloques lectura/escritura: Se realiza a través de bloques, types,
Backup, Diskdrives, etc
Otros : Reloj Permite la asignacion de Cpus una secuencia o señales
Determinadas para su función
Información (archivos/base de datos)
•Secuencuiales •Relacional
•Indexadas •Jerarquica
•Aleatorias
•Directos
Nivel de archivos B de Datos
Usuarios
Servicios

Adm. de
Dispositivos
Adm. de
Información

Adm. de memoria Adm. de Procesadores


Administrador de Recursos La memoria es
Funciones Un recurso critico
Llevar el registro y control de volumen
Definir la politica de asignación del recurso
• A quien ?
• Cuando ?
• Cuanto ?
Asignar el Recurso
Desasignar el Recurso
Dentro de la planificacion vemos algoritmos
El PERS: Asigna el recurso de menor tiempo
La CONCURRENCIA: Demanda concurrente el problema es mas
Critico (crea conflictos) en el mismo instante ante recursos escasos
Concepcion del modelo de estados y eventos

Suspensión
CPU
Resultado

Ejecución
Entrega P FIN
Solicitud
Retiene P Listos P E/S
Programa

Termina E/S Bloqueado


Cpu E/S
Z
Solicita
Recursos
•Memoria Cpu E/S
•Dispositivos E/S
•Informacion

Sistema Monoprocesador 1cpu y N cpus e/s


Sistema Operativos
Multiprogramación o Multitarea
Se define cuando 2 o mas trabajos (programas, aplicaciones, Sistemas,
Software, etc) Se procesan simultaneamente; pero solo 1 se esta
Ejecutandose en un instante dado
Simbologia
T. Ejecución = Tcpu+Te/s+Tacceso
CPU

E/S Rendimiento de Cpu = Tcpu *100%


Ttotal de
Ejecución
Cpu E/S Cpu E/S
P1
2 3 1 4
T. Ejecucion p1= 10 = 3 + 7 Rcpu p1 = 3 * 100% = 30%
10
P1 P2
Cpu E/S Cpu E/S Cpu E/S Cpu E/S

2 3 1 4 2 3 1 4
20

6 *100% = 30% R cpu p1 p2 = Tcpu * 100%


20 T Total
Multiprogramación

P1
2 3 1 4
P2
2 3 1 4
12
6 *100% = 50% R cpu p1 p2 = Tcpu * 100%
12 T Total
Mayor ventaja eleva el rendimiento de la Cpu
Ejercicio
T1 Cpu E/S Cpu E/S
3 4 1 2
T2 Cpu
4
T3 E/S
8
T1 = 10 = 4 + 6 Rcpu T1 = 40 %
T2 = 4 = 4 + 6 Rcpu T2 = 100 %
T3 = 8 = 0 + 8 Rcpu T3 = 0 %

Tejecución

Cpu E/S Cpu E/S


T1
3 4 1 2
T2 Cpu
4
T3 E/S
8

10
Administrador de procesadores
Modulos
Controlador de trafico: modulo que efectua la sincronización
y comunicación entre los procesos
T1P1
Programa T1P2
Software T1P3
Trabajos = N procesos
Aplicaciones
Sistema, etc
T1Pn
Planeador de trabajo:
Modulo responsable de realizar las siguientes actividades
A)Llevar el registro y control de todos los trabajos existentes
en el sistema
B)Coordina con los administradores de memoria de dispositivos
de E/S a fin de solicitarle los recursos requeridos por los trabajos
C) Realiza la planeación del procesamiento de los trabajos.
D) Crea los procesos correspondiente a cada trabajoy los coloca
en el estado de listos.

Retiene Listos
Trabajos Procesos
Solicita
Recursos
•Memoria
•Dispositivos
•Información
De acuerdo a recursos asignados realiza la planeación del
procesamiento de los trabajos
Modelos
Planeación de trabajos con multiprogramación y con traslape E/S
se define cuando las operaciones de entrada y salida interfieren
con las operaciones de entrada y salida lo que generalmente va a
Producir que exista CPU ociosa
Cpu E/S Cpu E/S Rcpu = 50%
T1
2 3 3 2
E/S Cpu E/S Rcpu = 40%
T2
4 4 2
E/S Cpu E/S Cpu Rcpu = 20%
T3
5 1 3 1
2 3 3 2
T1

4 4 2
T2
5 1 3 1
T3

0 2 4 8 12 14

Cpu Cpu
Ociosa Ociosa
Modelo : Planeación de trabajos con multiprogramación y con
Traslape de E/S
Condiciones
• Recursos Ilimitados
• Generalmente existe Cpu ociosa, es decir
Rendimiento menor de 100%
Metodos:
Probabilisticos: Cuando se conoce el detalle y la secuencia de
las operaciones de CPU y de entrada y salida de los trabajos
durante su procesamiento.
Programación Gráfica
Metodo probabilistico: Formulas
Tiempo de retorno = Tiempo fin - Tiempo llegada
n
Tiempo promedio retorno TPR = T retorno
i=1

n
%Cpu ocupada = 1-(%Cpu ociosaT1)(%Cpu ociosaT2)..(%Cpu OciosaTn)

TcpuTx = (%Cpu ocupada T1,T2..Tn ) * Treloj * % Cpu ocupada Tx


% Cpu ocupada

Sea
Trabajo Llegada Tcpu Te/s cp Tfin Tretorno
T1 0’ 4’ 6’ 40/60 18.97 18.97
T2 2’ 3’ 3’ 50/50 14.85 12.82
T3 4’ 8’ 2’ 80/20 23.59 19.59
T4 5’ 6’ 1.5’ 80/20 21.64 16.64
TPR = ?
%Cpu ocup T1 T2 =1-(0.6)(0.5)=0.7
Tcpu T1= 0.7*2* 40 = 0.62
40+50
Tcpu T2= 0.7*2* 40 = 0.78
40+50
%Cpu ocup T1 T2 T3 =1-(0.6)(0.5)(0.2)=0.94
Tcpu T1= 0.94*1* 40 = 0.22
40+50+80
Tcpu T2= 0.94*1* 40 = 0.28
170
Tcpu T3= 0.94*1* 80 = 0.44
170
%Cpu ocup T1 T2 T3 T4=1-(0.6)(0.5)(0.2)(0.2)=0.988
Tcpu T2=> 1.94=0.988*T reloj* 50
40+50+80+80
Treloj = 14.82
Tcpu T3 = T4 = 0.988 *9.82*80 =3.1
Tcpu T1 = 0.988*9.82* 40 = 1.55
250
TcpuT1 3.1 1.62 1.28

TcpuT1 0.44 3.1 1.62 1.28 1.56

TcpuT1 0.78 0.28 1.94

0.8 0.62 0.22 1.55 0.81


TcpuT1

0 2 4 5 14.82 18.97 21.64 23.59


T1= 4-0.8 = 3.2-0.62 = 2.58-0.22 = 2.36-1.55 = 0.81-0.81 = 0
T2= 3-0.78 = 2.22-0.28 = 1.94-1.94 = 0
T3= 8-0.44 = 7.56-3.1 = 4.46-1.62 = 2.84-1.28 = 1.56-1.56 = 0
T4= 6-3.1= 2.9-1.62 = 1.28-1.28 = 0
METODO PROGRAMACION GRAFICA

Problema:
En un determinado centro de computo se procesan los sgtes. Trabajos:
T1: calcula 2’ , solicita cinta, calcula 1’, solicita cinta y 2 discos, calcula
1’, solicita disco.
T2: solicita 2 discos, calcula 2’, solicita disco, calcula 1’, solicita disco,
calcula 2’.
T3: solicita 2 cintas, calcula 2’, solicita cinta, calcula1’, solicita cinta,
calcula 1’.
Las solicitudes de entrada y salida requieren 2’ para ejecutarse. Considere
el tiempo de llegada, para los 3 trabajos mencionados en 0’. Las
prioridades de los trabajos estan dadas po: solo disco(A), solo cinta(B) y
ambos(C), donde A>B y B>C.
Determinar el tiempo promedio retorno de los 3 trabajos mencionados y el
rendimiento de las CPU’s.
Solucion:
T1: calcula 3’, E/S 2’, calcula 2’, E/S 3’.
T2: E/S 2’, calcula 3’, E/S 4’, calcula 3’.
T3: calcula 3’, E/S 5’, calcula 2’, E/S 3’.

Trabajos Memoria Discos Cintas Prioridad


T1 80 kb 3 2 B
T2 50 kb 2 1 A
T3 80 kb 2 2 A
150 kb 5 5
Recursos Apropiativos, prioridad: A>B
TPR3= ??
Metodo Programacion Grafica

Trabajos Tllegada prioridad Tcpu TE/S CP memoria discos cintas Tfin Tretorno

T1 0’ B 5’ 5’ 80 kb 3 2 23 23
T2 2’ A 6’ 6’ 50 kb 2 1 17 15
T3 4’ A 5’ 8’ 80 kb 2 2 17 13
Recursos Apropiativos Sistema 150 kb 5 5 51

Prioridad: A>B
Trabajos Memoria Discos Cintas
T1 80 3
Control de recursos : T1 T2 130 5
T2 T3 130 4
T1 80 3

Trabajos
3 5 2 3
T3

2 3 4 3
T2

3 1 1 2 3
T1

2 4 6 8 10 12 14 16 18 20 22 23

tiempo
Planeador de Procesos
Modulo responsable de realizar la planeacion de la ejecucion de los procesos
para lo cual toma un proceso del estado de listos y de acuerdo a la politica
definida le asigna el procesador.

Quantum(q).- unidad de tiempo, cantidad fija predeterminada de asigancion


del proceso para su ejecucion. Generalmente su rango varia de 50 a 800 ms.

CPU
Ejecucion
q Px
Listos
Pn....P3P2P1 Fin
Solicitud
E/S
Procesos Bloqueado
Termina Pz....PbPa
E/S

** Proceso: es la parte indivisible de un trabajo.


Algoritmos de Planificacion

1. Torneo Mutuo / Turno Rotativo / Robin Round


2. Prioridad
3. PEPS (Primero que entra, primero que sale)
4. Primer Trabajo Mas Corto
5. Menor Tiempo Restante
6. Por Niveles
Algoritmos de Planificacion

1. Torneo Mutuo / Turno Rotativo / Robin Round

• Todos los procesos son identicos.


• Los procesos estan clasificados por tiempo de llegada.
• A cada proceso se le asigna en procesador un Quantum de tiempo.
• El recurso procesador es no apropiativo.
• Algoritmo utilizado en los sistemas de tiempo real, tiempo
compartido y sistemas interactivos.

Cola de Procesos Procesador


Ingreso

D C B A A q=100ms

Tiempo de llegada

Bloqueado Fin
Agota q
Ejemplo 1:

Torneo mutuo, q = 100 ms


Procesos Tllegada TCPU Tfin Tretorno Control Tcpu
P1 0 130 430 430 P1 = 130 –100 = 30 – 30 = 0
P2 0 210 740 740 P2 = 210 –100 =110-100=10-10=0
P3 0 260 800 800 P3 = 260-100=160-100=60-60=0
P4 0 370 970 970 P4 = 370-100=270-100=170-100=70-70=0
2940
TPR = ?? 2940 = 735 ms
4

Procesos
P4 100 100 100 70

P3 100 100 60
100 100 10
P2
100 30
P1

430 740 800 970 tiempo


Ejemplo 2:

Torneo mutuo, q = 100 ms


Procesos Tllegada TCPU Tfin Tretorno Control Tcpu
P1 0 260 560 560 P1 = 260-100=160-100=60-60=0
P2 70 240 690 620 P2 = 240-100=140-100=40-40=0
P3 200 120 650 450 P3 = 120-100=20-20=0
P4 305 70 630 325 P4 = 70-70=0
1925
TPR = ?? 1925 = 488.75 ms
4

Procesos
P4 70

P3 100 20
100 100 40
P2
100 100 60
P1

560 630 650 690


tiempo
Algoritmos de Planificacion

2.- Prioridad

• La ejecucion de los procesos de un mismo nivel de prioridad


se ejecutan como torneo mutuo.
• Los procesos de menor prioridad se ejecutan siempre y
cuando no existan procesos de mayor prioridad.
• Existen q diferenciales entre los niveles de prioridad con el
fin de compensar la espera de la asignacion del procesador
hacia los procesos de menor prioridad.
• El recurso procesador puede ser no apropiativo o apropiativo.
Algoritmos utilizados en los sistemas de tiempo real, tiempo compartido
y sistemas interactivos

COLA DE PROCESOS

Ingreso Tiempo de llegada PROCESADOR


JERARQUIA

A A4 A3 A2 A1
NIVEL

qA=100ms
B qB=300ms
B5 B4 B3 B2 B1
qC=800ms

C C3 C2 C1

Agota q Fin
Bloqueado

•A los procesos de < prioridad se le asigna > q


•Para que el proceso B, se pueda ejecutar no deben ejecutarse los procesos A y C.
Ejemplo 1:

Prioridad: qA=100 ms, qB=200ms A>B

Procesos Tllegada TCPU Prioridad


(ms) (ms)
P1 0 320 B

P2 50 210 A

NO APROPIATIVO APROPIATIVO

Procesos Procesos
100 100 10 100 100 10
P2 x P2
200 120 50 200 70
P1 P1
0 50 0 50
Ejemplo 2:

Procesos Tllegada TCPU Prioridad Tfin Tretorno


(ms) (ms)
P1 0 510 B 1390 1390 APROPIATIVO
P2 70 430 B 1420 1350 A>B
P3 400 210 A 810 410 qA=100 ms
P4 430 270 A 880 450 qB=200 ms
1420 3600

Control Tcpu
P1 = 510-200=310-200=110-110=0
P2 = 430-200=230-200=30-30=0
P3 = 210-100=110-100=10-10=0
P4 = 270-100=170-100=70-70=0
Ejemplo 2:

TPR = 3600 = 900 ms


4

Procesos
P4 100 100 70

100 100 10
P3
200 200 30
P2
200 200 110
P1

0 200 400 810 880 1390 1420


Ejemplo 3:

PRIORIDAD :

Procesos Tllegada TCPU Prioridad Tfin Tretorno


(min) (min) C >B >A
P1 0 7 A 19 19
P2 2 3 B 10 8
P3 2 4 B 11 9
P4 4 3 A 17 13
P5 6 2 C 8 2
19 51
Ejemplo 3:
Control Tcpu
P1 = 7-2=5-3=2-2=0
P2 = 3-1=2-1=1-1=0
P3 = 4-1=3-1=2-1=1-1=0
P4 = 3-3=0
P5 = 2-2=0
Procesos
2
P5 x
3
P4 x
1 1 1 1
P3 x TPR = 51 = 10.2 min
1 1 1 5
P2 x
2 3 2
P1 x
0 2 4 6 8 10 11 17 19
Algoritmos de Planificacion

3.- PEPS (Primero que entra, primero que sale)


• Los procesos estan asignados por tiempo de llegada.
• La asignacion del procesador hacia los procesos es un q infinito,
esto quiere decir hasta que finalice la ejecucion del proceso u
ocurra una interrupcion .
• El recurso procesador es “no apropiativo”.
• Generalmente la ejecucion de los procesos se realiza en forma
secuencial.
• Es el algoritmo mas simple de implementar y es utilizado en los
sistemas por lotes (BATCH)
Procesador
Cola de Procesos
Ingreso
q= ∝
D C B A

Tiempo de llegada

Bloqueado Fin
Algoritmos de Planificacion

4.- Primer trabajo mas corto


Los procesos estan clasificados por tiempo de llegada y por su requerimiento de
CPU
en orden ascendente.
Esto quiere decir cuando un proceso llega al estado de listos, automaticamente los
procesos se reordenan por requerimeinto de CPU en orden ascendente.
La asignacion del procesador hacia los procesos es un quantum ∝.
El recurso procesador es no apropiativo, algoritmo tambien uutilizado en los
sistemas por lotes o tipo BATCH.
La desventaja de este algoritmo es que aquellos procesos que requieren > utilizacion
de CPU sufran desplazamientos por procesos de < requerimiento y esto puede
ocasionar la inanicion del proceso.
Algoritmos de Planificacion

5.- Menor tiempo restante

Es una variante del algoritmo Primer trabajo mas corto, en la que el recurso
procesador es apropiativo.
En este algoritmo el planeador del proceso toma el proceso que requiera menor
tiempo de CPU de la cola de procesos.
Cuando llega un nuevo proceso a la cola de procesos (estado de listos) y requiera
un tiempo de CPU < que el proceso que se esta ejecutando en ese momento, dicho
proceso expropia o quita el procesador e inicia su ejecucion.
Ejemplo 1:

Determinar el TPR para los sgtes. Algoritmos de planificacion PEPS.


Procesos Tllegada TCPU Tfin Tretorno
(ms) (ms)
P1 0 6 6 6
P2 2 3 9 7
P3 4 3 12 8
P4 8 4 16 8
P5 9 2 18 9
PEPS q= ∝
18 38
Procesos
2
P5 x
4
P4 x
TPR = 38 = 7.6 ms 3
5 P3 x
3
P2 x
6
P1 x

0 6 9 12 16 18
Ejemplo 2:

Procesos Tllegada TCPU Tfin Tretorno


(ms) (ms)
P1 0 6 6 6
P2 2 3 9 7
P3 4 3 14 10
P4 8 4 18 10
P5 9 2 11 2
Primer trabajo mas corto q= ∝
18 35
Procesos
2
P5 x
4
P4 x
TPR = 35 = 7 ms 3
5 P3 x
3
P2 x
6
P1 x

0 6 9 11 14 18
Ejemplo 3:

Procesos Tllegada TCPU Tfin Tretorno


(ms) (ms)
P1 0 6 14 14
P2 2 3 5 3
P3 4 3 8 4
P4 8 4 18 10
P5 9 2 11 2
18 33 Menor Tiempo Restante q= ∝

Procesos
2
P5
4
P4
TPR = 33 = 6.6 ms 3
5 P3 x
2 1
P2 x
2 1 3
P1 x

0 2 4 5 8 9 11 14 18
Algoritmos de Planificacion

6.- Algoritmos Por Niveles

• Es una mezcla de los algoritmos de torneo mutuo, prioridad y peps.


• Normalmente existen 3 o 4 niveles. Los niveles tienen prioridad.
• La clasificacion u ordenamiento de los procesos en cada nivel se realiza por
tiempo de llegada.
• La ejecucion de los procesos de un mismo nivel se realiza como torneo
mutuo.
• La ejecucion de los procesos de un nivel inferior se ejecutan siempre y
cuando no existan en los niveles superiores.
• Todos los procesos ingresan al 1er nivel; si un proceso requiere mayor
tiempo de cpu del q asignado en ese nivel, el proceso automaticamente pasa al
sgte. Nivel y asi sucesivamente hasta finalizar.
6.- Algoritmos Por Niveles

• El Quantum asignado a un nivel inferior es el doble del inmediato superior.


• El recurso procesador es no apropiativo.
• La ventaja de este algoritmo es que reduce el tiempo ocasionado por los
procesos administrativos.
• Algoritmo normalmente utilizado en los sistemas de tiempo real tiempo
compartido ocasionalmente en sistemas de bloques.

COLA DE PROCESOS

Ingreso Tiempo de llegada PROCESADOR


JERARQUIA

1° P O N N
NIVEL

q1N = q
q2N = q
2° G E D
q3N = q

3° B A

Agota q Fin
Bloqueado
Ejemplo

Por Niveles, 3 Niveles, q1N = 100ms

Procesos Tllegada TCPU Prioridad


P1 0 400 B
P2 50 220 A
P3 150 180 B
P4 300 80 A
80
P4

Tfin Tretorno
P3 100 80
880 880

700 650
P2
100 120 780 630

380 80
P1
100 200 100

0 100 200 300 380 580 700 780 880


1°Nivel Q=100
CONTROL DE CPU P4 P3 P2 P1
P1= 400 -100=300 -200=100 -100=0
2°Nivel Q=200
P2= 220 -100=120 -120=0
P3 P2 P1
P3= 180 -100=80 -80=0 TPR = 880+650+630+80 = 560
P4= 80 -80=0 4 3°Nivel Q=400
P1
Procesos Administrativos

q Ejecucion

Listas Agota q Fin


Solicitud E/S

Termina E/S Bloqueado

TEjecucion = TCPU + TE/S + Tpa


Torneo Mutuo q

n
Σ TCPU P
i=1 i
Tpa = tpa
*
q

Por Niveles

n
Σ TCPU P
i=1 i
tpa
Tpa = * N° Niveles *
m
Σ qNj
j=1
Prioridad

n n n
Σ TCPU P Σ TCPU P Σ TCPU P
i=1 Ai i=1 Bi i=1 Ni
Tpa = + + . . . + * tpa
qA qB qN
Ejemplo :

Procesos Tllegada TCPU Prioridad


(min) (min)
P1 0 6 B
P2 1 7 B
P3 2 4 A
P4 4 5 B
tpa = 20 ms
P5 5 3 A
25

• Torneo Mutuo q = 100ms


• Prioridad (No Apropiativo) qA= 100ms, qB= 250ms
• Por Niveles, 3 Niveles, q1N = 100ms
a) Torneo Mutuo q = 100ms

n
Σ TCPU P
i=1 i
Tpa = tpa
q *

Tpa = (6+7+4+5+3)min * 20ms


100ms

Tpa = 5min
b) Prioridad (No Apropiativo) qA= 100ms, qB= 250ms

n n n
Σ TCPU P Σ TCPU P Σ TCPU P
i=1 Ai i=1 Bi i=1 Ni
Tpa = + + . . . + * tpa
qA qB qN

(4+3)min + (6+7+5)
Tpa = * 20ms
100ms 250ms

Tpa = (0.07 + 0.072) * 20 min

Tpa = 2.84 min


c) Por Niveles, 3 Niveles, q1N = 100ms

n
Σ TCPU P
i=1 i
* tpa
Tpa = N° Niveles
*
m
Σ qNj
j=1

Tpa = (6+7+4+5+3)min * 3 * 20ms


(100 + 200 + 400)ms

Tpa = 214 min


Torneo Mutuo

TEjecucion = TCPU + TE/S + Tpa

TEjecucion = 25 + 0 + 5 = 30 min
P1P2P3P4P5
Ultimo proceso P2

Prioridad
TEjecucion = 25 + 0 + 2.84 = 27.84 min
P1P2P3P4P5
Ultimo proceso P2

Por Niveles
TEjecucion = 25 + 0 + 2.14 = 27.14 min
P1P2P3P4P5
Ultimo proceso P2
Problema :
Se tiene la sgte. Informacion:

Procesos Tllegada TCPU Prioridad


(min) (min)
P1 0 3 B
P2 1 3 B
P3 3 2 A
P4 6 1 B
tpa = 40 ms
P5 10 2 A

Determinar el Tfin del ultimo proceso y cual proceso considerando el algoritmo


de planificacion. Prioridad (no apropiativa)
Si el tiempo por proceso administrativo (cambio de evento) es de 40 ms.
Prioridad (no apropiativa) qA= 100ms, qB= 250ms A>B

Procesos
2
P5
0.5 0.5
P4
2
P3
1 0.5 0.5 0.5 0.5
P2
1 1 0.5 0.5
P1
0 1 3 5 6 7.5 8.5 9 10 12
Tpa = (3+3+1) * 40 ms
= 1.12 min
P1P2P4 250 ms

2 * 40 ms
Tpa = = 0.80 min
P3 100 ms

1.92 min

2 * 40 ms
Tpa = = 0.80 min
P5 100 ms

Tfin
Ultimo = 12+ 1.92 + 0.8 – 1 = 13.72 min
proceso

TEjecucion = 11 + 1.92 + 0.8 = 13.72 min


P1P2P3P4P5
PEPS q= ∝ Tllegada

P1 : calcula 3’, E/S 4’, calcula 2’, E/S 5’, calcula 1’. 0”
2”
P2 : E/S 5’, calcula 5’, E/S 5’.

1 5 1 1 5 1 5 1
P2
1 3 1 4 1 1 2 1 5 1 1 11

P1
0 4 26 28
Ejecucion
P1P2 P1P1
q

Fin
Total Listos Solicitud P1P2
TEjecucion 28 “ P1P2 P1P2 P1 E/S
P1P2 Bloqueado
Termina P2 P1P2 P1
E/S
Bloqueos
mutuos/Interbloques/Estancamientos
Definición : Un bloqueo mutuo es la ocurrencia
de la espera de un evento que nunca a ocurrir.

P1 Impresora

P2 Cinta
Simbologia:

Proceso P P P1 P2

Recurso
R R Imp Cin
Flujo
Condiciones:
• Exclusión mutua
• Retención y
espera
• No apropiación
• Espera circular

Exclusión mutua: Los preocesos tienen control exclusivo


del recurso asiganado
Retencipon y espera:Los preoceso tienen recursos
retenidos asignados y estan a la espera de recursos
adicionales.
No apropiacón:Los recursos asignados a un proceso no
pueden ser expropiados por otro proceso
Espera circular:Existe un flujo o cadena circular de procesos y
recursos ,de tal forma que el recurso asignado a un proceso es
demandado por el sgte proceso
De la cadena.

METODOS PARA EVITAR LOS BLOQUEOS MUTUOS

Prevención
Evitación o predicción
Detección y recuperación
Prevención: Es el metodo mas simple de implementar.
Los procesos o trbajos antes de iniciar su procesmiento
tienen que tener asignado todos los recursos requeridos
En este metodo existe una sub_utilización de los recursos
por los trabajos o procesos ,asi mismo no hay una
optimización de los recursos por el sistema
Evitación o predicción: En este metodo los recursos
asiganados a los procesos o trabajos en el momento que los
requiera,antes de asignar el recurso requerido se evalua si el
proceso o trabajo esta en condiciones de devolver liberar el
recurso.
En este metodo tambien es conocido como el algoritmo del
banquero .
La evaluación consiste en determinar si el sistema se
encuentra en un estado seguro o inseguro.
Estado inseguro: Significa que se ha producido el bloqueo mutuo
Detección y recuperación: En este metodo se permite que se
produzca
El bloqueo mutuo. Los recursos son asignados libremente a los
procesos o trabajos .
El metodo busca constantemente el bloqueo mutuo producido.Una
vez detectado tratara de eliminarlo bajo las sgtes alternativas.
a.-Expresar recursos a una o mas procesos o trabajos bajo la
politica del que haya consumido menos tiempo de CPU o el que
tenga asiganado menos recursos.
b.-Eliminar procesos o trabajos teniendo en cuenta laq misma
politica descrita anteriormente .
Evitación o predicción:
Procesos Demanda Asignados adicional

P1 4 2 2
P2 5 2 3
P3 3 22 1 0
Disponible: 1 0
El sistema posee 7 utilidades hay que evaluar si existe:estado seguro
O inseguro(bloqueo mutuo)
Estado seguro:cuando existe 1 o mas cuyos recursos adicionales sean
Menor o igual que lo disponible
Estado inseguro: cuando no existe ningun proceso o trabajo
Asigna
P1 solicita recurso rechaza
adicuional
Asigna
P3 solicita recurso
rechaza
adicuional

Detección: Detecta y elimina el bloqueo mutuo.


Considere un sistema computacional que posee los siguientes
recursos:
5unidades de disco,7impresoras,4 cd-rom y 4 cintas.
Si cada trabajo que se procesa en este sistema requiere 3 dicos ,
2impresoras,1cd y una cinta.
Determinar el maximo numero de trabajos que se puede procesar
simultaneamente sin que se produzca un bloqueo mutuo considerando
los sigtes metodos:
a.- Prevención:
Discos Imp Cd-Rom Cintas
Sist. 8 7 4 4
c/Trab 3 2 1 1

Trab Discos Impresora CD-Rom Cintas


Dem Asig Dem Asig Dem Asig Dem Asig
T1 3 3 2 2 1 1 1 1
T2 3 3 2 2 1 1 1 1
T3 3 2 1 1
Sist

Sistema: 8 5 2 753 432 432


b.- Evitación:
Trabajo Discos Impresora CD-Rom Cintas
Dem Asig Dem Asig Dem Asig Dem Asig
T1 3 1 2
T2 3 1 2
T3 3 1 2
T4 3 1 2
T5 3 1 2
T6 3 1 2

Sistema: 8 7 6 5 4
I.- Recursos
= Recursos + Recursos Sistema
totales Adicionales Disponibles

II.- Demanda
= Recursos + Recursos Proceso o
Maxima Asignados Adicionales Trabajo
Demanda:
Maxima Asignados Adicionales
Proc R1 R2 R3 R1 R2 R3 R1 R2 R3
P1 2 7 0 2 3 0 0 4 0
P2 6 6 6 0 0 4 6 6 2
P3 4 3 6 2 0 4 2 0 2

Disponible:
R1 R2 R3
2 1 2
R1 R2 R3 R1 R2 R3
P3 2 3 4 + P1 2 1 2 -
2 0 6 2 0 2

4 3 6 - 0 1 0 +
P3 1 3 6 P1 4 3 6

0 0 0 4 4 6
Finaliza

P1 2 3 0 +
0 4 0 P1
0 4 0
2 7 0-
4 0 6+
P1 2 7 0
P1 2 7 0
0 0 0
Finaliza 6 7 6
Estado seguro porque todos procesos finalizan.
Detección y Recuperación:

Problema:
En un sistema computacional se cuenta con 7 procesos identificados desde la letra A hasta la G
y 6 recursos identificados desde la R hasta la W
La asignación y demanda de estoy recursos por los procesos es:
1.-Proceso A asignado R y demanda al recurso S
2.-Proceso B demanda T
3.-Proceso C demanda S
4.-Proceso D tiene asignado recurso U y demanda a SyT
5.-Proceso E tiene asignado recurso T y demanda a V
6.-Proceso F tiene asignado recurso W y demanda a S
7.-Proceso G tiene asignado V y demanda a U

Determine si el sistema esta en un estado seguro o inguro en el caso de que estuviera en el estado
inseguro que procesos y recursos estan involucrados y como elimina el bloqueo mutuo
1.- Buscar el proceso con mayor frecuencia
A R 5.- E T
S A R
V
C S D U
2.- B W Flujo circular
6.- F en el mismo
W F T sentido
T S
B E V G
3.- C 7.- G V
Procesos : D, E, G
Recursos: T, V, U
S U
G seria lo mas recomendable por que tiene
4.- D U Asignados ni S ni T que se repiten con mayor
Frecuencia
S T
Eliminar:expropiar el recurso V al proceso G
Administración de memoria :Lugar fisico donde se almacena información
Componentes:Registros,memoria cachesecundaria,RAM .
Dirección (byte)
S.O
1byte 8bits
1KB 1024 byets
1MB 1024 KB

Memoria fisica
La memoria esta compuesta por direcciones de memoria

Modelos de memoria:

S. O S. O S.O
S.O
Inicio
TX-20K TX-5 K
TX-50K

TX-30K
TX-10K TX-10K

M.Fisica
M.Fisica M.Fisica M.Secundaria
1 2 3

Memoria Virtual
Clasificación:

I.- Por dirección *Memoria Virtual


-Memoria de intercambio
*Memoria continua -Paginación
-Asignación de una sola partición -Segmentación Bajo demanda
-Memoria Particionada -Segmentación/Paginación
-Memoria particionada reubicable
-Memoria de intercambio

*Memoria no continua
-Paginación Pura
-Segmentación Bajo demanda
-Segmentación / Paginación Compartida

II.-Por ubicación

*Memoria real
-Asignación de una sola partición
-Memoria particionada
-Memoria particionada reubicable
-Paginación
Pura
-Segmentación
Compartida
Segmentación/Paginación
Memoria contunia de una sola partición:Es el mas Facil de implementar. No existe la multiprogramación
Actualmente se utiliza para para fines de investigación .
Se utilizo hasta fines de la decada del 50 y posteriormente del 80 al 85.

S.O
Tx-60K
Memoria disponible
Restricción
Tx <= Memoria
Sin uso Disponible

Memoria fisica
Memoria Particionada : La memoria fisica se divide en un numero determinado de particiones ,siendo estas
De tamaño fijo o variables
Memoria Particionada fija o estatica: La memoria fisica se divide en numero determinado de particiones siendo
Cada partición de un tamaño fijo.
La determinación del numero de particiones y el tamaño de cada partición se realiza en el momento en que se
Enciende la PC la cual puede ser en forma manual o automatica.
Cada trabajo solamente ingresa en una partición, es factible que un trabajo no ingrese a ninguna partición.
Las particiones son secciones criticas y generalmente en cada partición se genera un desperdicio,memoria que
no puede ser utilizada en ese momento.
La generación de los desperdicios,se denomina el problema de la fracmentación interna .
Las modificaciones del numero de particiones y el tamaño de estas solamente se pueden realizar en el momento
en que se enciende la PC o se reinicie.
El modelo utiliza la tabla de particiones.
La decisión de colocar un trabajo en una partición libre es necesario utilizar los
algoritmos de colocación o almacenamiento.
Secuencia
Tabla de Particiones
0
P0 S.O Nro Dirección Tamaño Uso TA-80K
100K (KB) (KB) TB-30K
P1-60K
160K
TC-110K espera
0 0 100 S.O
P2-40K TD-90K
Memoria 200K 1 100 60 Libre libre Termina TB
disponible P3-100K
300K 2 160 40 Libre TE-70K
P4-75K 3 200 100 Libre TA
375K
P5-75K 4 300 75 Libre TE
450K
P6-50K 5 375 75 Libre
500K
6 450 80 50 libre
Memoria fisica
Memoria particionada,variables dinamicas: Las particiones se crean de acuerdo al
requerimiento del trabajo.
Cuando se enciende el computador existe una sola partición libre del tamaño de la memoria
Disponible;
Los trabajos van ingresando y se generan las particiones en uso por lo cual la partición libre
Va disminuir.
Cuando finaliza un trabajo labera la partición en uso con lo cual queda una partición o area libre
El cual puese ser utilizada por otro.
Particiones o areas libres adyacentes se unen en una sola. Con el trancurso del tiempo se genera
En la memoria disponible una gran cantidad de particiones o areas libres pequeñas dispersas
, a esto se le denomina el problema de la fracmentación externa porque aparentemente existe
Disponibilidad de memoria fisica que no puede ser utilizada en ese momento.
El modelo utiliza 2 tablas:
La tabla de particiones en uso
La tabla de particiones libres

También es necesario utilizar los algoritmos de colocación o almacenamiento para


Decidir el almacenamiento fisico de un trabajo.

Memoria particionada variable o dinámica

Tabla de particiones en uso Tabla de particiones libres


0 Nro Dirección Tamaño Uso Nro Dirección Tamaño
S.O (KB) (KB) (KB) (KB)
100K 0 0 100 S.O 0 100 200
TA-120
Memoria 1 100 120 TA 0 220 80
disponible 220K 2 220 75 TB
Libre- 0 295 5
0 0 100 S.O
80K 0 100 120
300K 1 220 75 TB
1 295 5
0 0 100 S.O
1 100 80 TC 0 180 40

2 220 75 TB 1 295 5
0 0 100 S.O 0 210 10
1 100 80 TC
1 295 5
2 180 30 TD
0 210 90
3 220 75 TB
0
Secuencia
0 TA-120K
S.O S.O TB-75K
100 espera
100 TC-80K
TA-120 Libre-120K Termina TA
220
220 TD-30K
TB-75K TB-75K TE-15K
295
295 Termina TB
Libre –5K Libre-5K
300
300

0 0
0 S.O
S.O 100
S.O 100
100 TC-80K
TC-80K
TC-80K 180
180 TD-30K 180
210
Libre-40K TD-30K
Libre-10K
220 Particiones libres 220 210
TB-75K Adyacentes se convierten TB-75K
295 En una sola 295 libre-90
Lire-5K 300
Libre-5K
300 300
Memoria particionada reubicable: (compactación /compresión)
0
0
S.O S.O
100K
100K
Libre-50K T1-50K ( - )
150K 150K
T1-50K
200K T2-80K
230K
T2-80K
280K Reubicación T3-100K 330K
Libre-20K
Tx-200K 300K T4-60K
400K T3-100K
350K
Libre-100K Libre-210K
500K ( + )
T4-60K
560K
Libre-40K
600K Memoria fisica
(despues)
Memoria fisica
(antes)
Fracmentación:Es cuando la memoria en blanco esta esta dispersa,memoria innecesaria cuando hay memoria
Disponible en un momento dado se denomina problema de la desfracmentación externa.

Tipo de compactación : T alto + T transferencia


T alto: N0 trabajos * t alto/trabajo

Ttransferencia: Cantidad de kB a * Ttransferncia/KB


transferir
150K
100K
Registro de reubicación

Move 188000 0000


Move 188000
166615K -512000

222 222
188000
+ 150K
200K 136800

T1 T1
(Antes) (Despues)
Desplazamiento
Dirección fisica real
-50Kb * 1024bytes -51200bytes D.F.R= 188000-
51200
1Kb
136800

Problema:En este modelo se tiene que disminuir el tiempo de co´mpactación consisderando


el modelo de memoria particionada reubicable a continuación el estado actual de la meoria fisica
Inicio
Libre-200K
P4-300K
Libre-500k
P3-200K
Medio Libre-300K
P2-200K
P1-300K
Final
S.O-200K

Memoria fisica

Se ha de efectuar la compactaci[on a fin de que se puede asignar mas trabajos


el modelo evalua 3 Alternativas.
a.-lograr el area libre al inicio
b.-lograr el area libre al medio
c.-lograr el area libre al final

Determinar la mejor alternativa


Inicio
Libre p3 p3
P4
P4
P2
P3
Libre P1
P4 Medio

P2 Final Libre
P2
P1
P1
S.O S.O
S.O
Memoria fisica Memoria fisica Memoria fisica

a.-Inicio

P4 300K

b.-Medio

P3 200K Rpta porque utiliza menos memoria

c.-Final

P3+p2+P1
200K+200K+300K 700K
Problema

Un sistema computacional con 32 bytes de memoria disponible esta dividida en particiones


fijas de 8192 Bytes cada uno. Usted ha ideado una computacion para estas particiones
a fin de eliminar la fracmentacion Interna y lograr recuperar el mayor espacio fisico.

Si por los 1500 particiones se pierde el promedio 20% y las restantes en promedio 30%.
Determinar el tiempo de compactacion ,si el tiempo de alto por trabajo es de 0.02
segundos y el Tiempo de transferencia por KB desplazado es de 5 milesimas de segundo.

Cuantos nuevos trabajos pueden ingresar en el espacio fisico recuperado si las particiones
fijas a crear son del mismo tama;o descrito anteriormente.

S.O S.O

P1 T1
T2
P2
T3
P3
.
P4
compactacion .
Memoria
disponible
. .
. PN-2
. PN-1
PN-2 PN
PN-1
Espacio fisico
PN recuperado
Memoria fisica Memoria fisica
Cada particion 8192 bytes * 1KB 8KB

1024 bytes

Nro de particiones fijas

Tcompactacion T alto + Ttransferencia 81.92seg


4096*0.02 seg\trabajo

Ttransferencia cant KB a trans * Ttransferencia\KB


120.656 seg
24131.2 KB* 0.005 seg\kb

Cantidad de kb a tranferir

1500- desperdico 20%

(4096-1500) desperdicio 30%

(1500-1)*8kb*0.8+(4096-1500)*8kb*0.7
9593.6kb +14537.6kb 24131.2kb
Tcompactacion 81.92+120.656 202.576 seg

Espacio fisico recuperado


1500*8kb*0.2+(4096-1500)*8kb*0.3
2400kb+6230.4kb 8630.4kb

Nro de particiones fijas 8630.4kb 1078


a crear
8Kb
Considerando memoria particionada reubicable a continuecion se
muestra el estado actual de la memoria fisica

S.O
T1-80k
Libre -50K Primer ajuste

T2-80K
Libre-40K Mejor ajuste
T3-50K
TA-35K T4-100K
Libre-90k
T5-60K

Memoria fisica

Se desea ingresar TA-35k empleando los agoritmos de colocacion una vez ingresado el trabajo de
A se realiza La compactacion

Determinar el inicio de su direccion fisica del trabajo A despues de la compactacion


Considerando los algoritmos
a.-Primer ajuste
b.-mejor ajuste
c.-peor ajuste
a)Primer ajuste b)Mejor ajuste c)Peor ajuste

0 0 s.o.-100
s.o.-100
s.o.-100 0
100k
T1-80k 100k 100k T1-80k
180k=rpta T1-80k 180k 180k
TA-35k
: T2-80k
T2-80k
T2-80k 260k=rpta 260k
TA-35k T3-50k
310k
T3-50k T4-100k
410k=rpta
TA-35k
T5-60k
MEMORIA NO CONTINUA

MEMORIA PAGINADA:
En este modelo la memoria física se divide en
particiones fijas de tamaño constante,
generalmente múltiplos de 2 denominados :
bloques físicos.
Los trabajos o procesos también se dividen en
forma lógica o virtual del mismo tamaño q los
bloques físicos pero denominados paginas .La
identificación de los físicos y de las paginas de
los trabajos o procesos simples se inician 0.
Todo trabajo o procesos tienen una numero
entero de paginas por lo cual se presentan
generalmente un desperdicio en aquel bloque
físico donde esta almacenado la ultima pagina
Todos los trabajos o procesos tienen direcciones
lógicas o virtuales en dirección continua pero se
almacenan físico no necesariamente esta
continua. Con lo descrito anteriormente será
necesario el mecanismo para traducir las
direcciones lógicas o virtuales del trabajo o
proceso
TA en direcciones
Pag 0
0 TB físicas
Pag 0 reales
0
todo
trabajo tiene un 4k
numero entero
1
de
4k paginas
Tamaño .
d 7777bytes 1
8k Pagina=4kB=2²
8k 2
2 12k
3
9k 14k
TC
Pag 0
1 DIRECCIONES LOGICAS CONTINUAS
2
3
4
N° paginas = 9K =2.2
3 Ξ
TA 4k

N° paginas = 17K =4.2


5 Ξ
TB 4k

N° paginas = 17K =3.5


4 Ξ
TC 4k

Numero de bloque físicos ,memoria física:


N° = 256K =64
4k
TMP (TA)
pagina bloque
15
M.Fisica
0
0
1 40 1
2 59 2
S.O.
14
TMP (TB) Pag0-TA 15

pagina bloque
0 47
1 48
2 49
3 50 Pag1-TA 40
4 51

TMP (TC)
pagina bloque
0 16
1 17
Pag1-TA 59
2 61
3 62
El desperdicio ocasiona un problema : la
fragmentación interna.
El desperdicio se presenta en el ultimo bloque
donde esta almacenada la ultima pagina.
Mecanismo de traducción de lógicas o
virtualesDIRECCION
a direcciones físicas=reales
VIRTUAL : (p, d)
d.,v. =
Dirección base
O LOGICA p= N° de paginas donde
TMP(Tx)
b encuentra la dirección l
b d=desplazan con respecto a
p
+ p d inicio de la pagina.
B'=N° de bloque fisico.
b+p
: B'
B'
+ B' * (tamaño +d
:
:: Bloque
Bloque físico
fisico)
D.V.= 7777 bytes (TA)
=(p,d) = (1,3681)
Se toma la parte entera
Cuando queremos saber la
Dirección
P = dirección lógica =7777 =1.89
tamaño pagina 4*1024

D= 7777-1*4096=3681

D.F:R = 40*4096+3681 =167521 bytes


Problema 1 : Considerando el modelo de
memoria paginada el cual emplea el siguiente
formato de direcciones virtuales notación
Hexadecimal.
Pág. = 2 bits, desplaza = 3 bits
Un trabajo se requiere 260 KB representa la
siguiente dirección virtual de 167666 bytes en
el formato descrito.
PAGINA DESPLAZAMIENTO

2 8 E F 2
Notación
2 3
Hexadecimal
EJM:
TA
0
Pag 0
0
tamaño = 4kb =4096 bytes
d
4096 4 pagina
1
8192 8
P = 4096 =1
2
4096
9

D.V. =4095 bytes


=(0,4095)
Max. +1 =
tamaño P = 4096 = 0.99
Desplaza- 4096
pagina
miento D = 4095-
0*4096=4095
Maximo + = fff +
1 1
1000(16) =16³=4096 bytes

Tx =260KB
D.V = 167666 bytes =(p,d)=(40,3826)
P= direccion =167666 bytes = 40.93
tam.pag. 4096 bytes
D=16766-40*4096=3826
Ejemplo 2
pagina desplazamiento

Notación
Hexadecim
al 2 3

a)Direccion =A2F0C D.F.R= pagina bloque


00 BB2
01 C43
Logica 02 D15
:
9E
b)Direccion = 43F1CB D.F.R 9F
43F
5CD

Fisica :

F4C
a)D.V. = AC =(p,d)= (A2;F0C) A1
A2 DD2
A3 C45
D=AF0C-A2*1000=F0C
D:F:R:=DD2*1000+F0C=DD2FOC
b)D.F.R= 43F1CB
N°bloque =43F1CB = 43F.1CB
físico 1000

D= 43F1CB – 43F*1000=1CB

D. logica= 9E*100+ 1CB= 9E1CB


MODELO DE MEMORIA PAGINADA
*M. PAGINADA PURA:
En este modelo todas las paginas requeridas y
procesos obligatoriamente deben estar
localizadas en la memoria fisica.
*M. PAGINADA BAJO DEMANDA:
En este modelo las paginas requeridas de un
trabajo estan localizadas en forma parcial en
la memoria fisica. La localizacion de dichas
paginas dependen de tres parametros.
*trazos de pagina (P).-es
(P la secuencia de
la demanda d las paginas de un trabajo
*marco de pagina (M).-numero
(M de bloque
fisicos asignados al trabajo para su
prosesamiento.
*fallo de pagina (f).-se
(f denomina cuando
se demanda una pagina y esta no se
encuentra en la memoria fisica por lo que se e
necesario realizar su transferencia de la
memoria secundaria hacia la mmoria fisica. En
este modelo es necesario utilizar los
algoritmos de reemplazo de pagina.
MEMORIA PAGINADA COMPARTIDA:
En este momento se identifica aquellas
paginas q son identificadas o comunes de 2 o
mas trabajos identificados dichas paginas son
T

m.secunda m.
ria fisica
PROBLEMA:
Se tiene 3 trabajos q solicitan las sgtes
requerimientos de memoria 210k,150k,130k,
respectivamente. Que memoria física se
requiere en los sgtes modelos de m. Paginada
si el tamaño de pagina es de 4 kb
a)Pura
c)Compartida teniendo la sgte información :
T1,t2 y t3 tienen 10 paginas idénticas
T1 y t2 tienen 5 paginas idénticas
T1 y t3 tienen 10 paginas idénticas
T2 y t3 tienen 5 paginas idénticas
t1
Npaginas=210k=52.2=53
240k t1 4k

t2

150k Npaginas=150k=37.5=38
t2 4k
t3
Npaginas=130k=32.5=33
t3 4k
a)Pura
Memoria=
(53+38+33)*4kb=124*4=496k
Física

b)Bajo Demanda
Memoria= 3*10*4kb=120kb
Física

c)Compartida

T1 T2 Memoria =28+18+8+10+10+5+5
Fisica
28 5 18
= 84*4 kb
10
10 5
= 33.6 kb
8
T3
a) PEPS
0
Pag 0
80
1
140
2 P = 1,7,0,4,3,4,2,1,1,2,7,1,0,4
210
3
280 P = 170 = 2.7
4
330 70
5
420
6
480
7
548
1 7 0 4 3 4 2 1 1 2 7 1 0 4
p
1 7 0 4 3 3 2 1 1 1 7 7 0 4

1 7 0 4 4 3 2 2 2 1 1 7 0

M= 4 1 7 0 0 4 3 3 3 2 2 1 7

1 7 7 0 4 4 4 3 3 2 1

x x x x x x x x x x
f

f = 10 280 bytes
M= =4
70 bytes
b) LRU (Menos usado recientemente)

1 7 0 4 3 4 2 1 1 2 7 1 0 4
p
1 7 0 4 3 4 2 1 1 2 7 1 0 4

1 7 0 4 3 4 2 2 1 2 7 1 0

M= 4 1 7 0 0 3 4 4 4 1 2 7 1

1 7 7 0 3 3 3 4 4 2 7

x x x x x x x x x
f

f = 10
Numero Modelo Instante de Bit de
Pagina Referencia demanda Modificacion
0 23 60,161 1

1 20 130,160 0

2 18 26,163 0

3 42 29,162 1
T
T

p 3 2 0 1 1 0 3 2 4

3 2 0 1 1 1 1 1 Pag = 3
3 2 0 0 0 0 0
M= 4 Marco = 42
3 2 2 2 2 2
Transferencia = 51
3 3 3 3 3
f x x x x

f =4
MODELO DE MEMORIA SEGMENTADA
En este modelo los trabajo o procesos se
dividen logicamente en segmentos logicos de
tamaño variable y cada segmento logico es
almacenado en la memoria fisica según su
diseño,en en particiones del mismo
requerimiento que el segmento logico
denominado segmento fisico o particiones
variables todo trabajo o proceso tienen un
numero entero de segmentos logicas y la
identificacion de estos segmentos logicos del
trabajo o procesos siempre se inician en 0.
cada trabajo o proceso genera una tabla de
mapas de segmentos en la cual esta descrito el
numero de segmentos la direccion fisica donde
acceso que posee el segmento y su estado
del segmento en la memoria fisica todos los
trabajos o procesos tienen direcciones logicas
o verticales en forma continua pero su
almacenamiento fisico no
necesariamenteestan con pilas por lo descrito
es necesario utilizar el mecanismo de
traduccion de direcciones logicas o virtuales
hacia las direcciones fisicas o reales. Una
direccion fisica o virtual puede estar
exprocesada con respecto al trabajo o
proceso o algún segmento lógico especifico,
la pontecialidad de este modelo radica en que
los segmentos fisicos deol trabajo procesa
durante su ejecucion tienden al crecimiento
MEMORIA SEGMENTADA PAGINADA:
La memoria fisica se divide en bloques de
tamaños constante generalmente multiplos
de 2 denominados bloque fisicos.Los trabajos
tambien se dividen en forma logiaca o virtual
de la sgte manera:
1.-Se divide en segmentos
2.-Cada segmento de trabajo se divide a su
vez en paginas del mismo tamaño q los
bloques fisicos.
Por cada trabajo existe un tabla de mapa de
segmentos (TNS) y por cada segmento del W
se genera 1 tabla de mapas de pagina (TNP)
en la cual esta descrita el numero de paginas
La identificación de los bloques físicos con los
segmentos y las paginas de c/segmento del
trabajo correspondiente siempre se inician con 0.
También es necesaria tener un mecanismo de
traducción de direcciones lógicas o virtuales del
trabajo hacia sus direcciones físicas reales.
Cada segmento de W tiene un numero entero de
paginas, generalmente se presenta un
desperdicio en la ultima pagina del segmento en
su localización física.
Este modelo toma las fortalezas de la paginación
y la segmentación.
TMP(S0)
TABLA DE 0 60 S.O
PROCESOS O 1 120
TMS(TA)
TRABAJOS
2 200
0 PAG0-SO-TA
A 1
B TMP(S8)
:
C 0 121
8
: 1 122
PAG1-SO-TA

N TMS(TB)
0 TMP(S0)
1 0 61
PAG2-SO-TA
: 1 62
10 2 250
3 251
TMS(TN
)0
TMP(S6)
1
0 201
: 202
1
6
2 203
M.FISICA
MECANISMO DE TRADUCCION DE
DIRECCIONES LOGICAS LOGICAS O
VIRTUALES A DIRECCIONES FISICAS
REALES

S = N° de segmento logico donde se encuentra


la direccion logica.

P = N° de pagina del segmento logico donde se


encuentra la direccion logica.

D = desplazamiento con respecto al inicio de la


pagina del segmento logico.

B‘ = N° de bloque fisico donde se encuentra


Dirección base
TMS(Tx)
b
b
S
S P d
+
TMS(tx)
p
:
S'
S' +
TMP(Sx)
:

B' B' + B' • (tam.bloq. + d


fisico
:
PROBLEMA:
Un sistema computacinal utiliza el modelo de
memoria segmentada paginada. Un programa
determinado se puede dividir en los sgtes
segmentos:
Texto 120450, datos 64900 bytes y pila 28651
bytes
El sistema operativo requiere 120Kb de memoria
para lo cual le han asignado 12 bloques fisicos.
Determinar las direcciones fisicas de las sgtes
direcciones virtuales:
a)199999
a) bytes
b)55555 bytes (datos)
Considere el almacenamiento fisico en el orden
de pila, texto y datos asignadole un max. De 3
tx
a) dv= 199999 bytes
Texto
b) Dv=55555 bytes (datos)
So-120450
120450
Datos
S1-67900 188250

Pila 199999
S2-28651
217001
pagina1
a) dv= 199999 bytes =(s,p,d) =(2,1,1409)
P =199999-188850 =11649 =1.13
tamaño pagina 10kb*1024
s.o = 120kb = 10kb tamaño pagina
12
d= 11649-1*10240=1409
N° paginas = 120450 =11.76 Ξ 12
seg0 10240

N° paginas = 67900 =6.63 Ξ 7


seg1 10240

N° paginas = 28651 =2.79 Ξ 3


seg2 10240
DFR =13*10240+1409 = 134529bytes

b)DV = 55555bytes =(s,p,d)=(1,5,4355)


P =55555=5.42
10240
D =55555-5*10240=4355
Dfr =(26*10240+4355)=270595 bytes
c) D.Fisica =280480 bytes
pag bloque
Orden 0 15
Pila ,texto ,datos 1 16
2 17
pag bloque
3 21
0 18 4 22
1 19 5 23
2 20 6 27
3 24 7 28
4 25 8 29
5 26 9 31
6 0 12 32
30 10
1 13 11 33
2 14

Anda mungkin juga menyukai