Upload
xitofu
View
1.680
Download
8
Embed Size (px)
Citation preview
Sistemas OperativosAdministrar 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 escrituraMemoriaLugar fisico donde sea almacena información finita Ram (Memoria Fisica/Real/Primaria/Principal )Memoria Secundaria (Discos/Cintas/Cd-Rom/diskettes/etc)InfinitaMemoria 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
RamMemoria
Secundaria
Cache Primaria
CacheSecundaria
Registros
Dispositivos de E/S : Escaner, Teclado, Mouse, L.Optico de entradaDe salida Terminal, ImpresoraDe Entrada/ Salida : D. drive, D. duros, CartuchosFlujo de caracteres :Flujos continuos de BitsMouse , impresora etcLectura/escritura: Se hace bajo un flujo continuo de bitsBloques lectura/escritura: Se realiza a través de bloques, types,Backup, Diskdrives, etcOtros : Reloj Permite la asignacion de Cpus una secuencia o señalesDeterminadas para su función Información (archivos/base de datos)•Secuencuiales•Indexadas•Aleatorias•Directos Nivel de archivos
•Relacional•Jerarquica
B de Datos
Usuarios Servicios
Adm. de memoria Adm. de Procesadores
Adm. de Información
Adm. de Dispositivos
Administrador de RecursosFuncionesLlevar el registro y control de volumenDefinir la politica de asignación del recurso• A quien ?• Cuando ?• Cuanto ?Asignar el RecursoDesasignar el RecursoDentro de la planificacion vemos algoritmosEl 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
La memoria esUn recurso critico
Entrega
ProgramaRetiene P
FIN
Suspensión
EjecuciónP
Bloqueado Z
Listos P
SolicitaRecursos•Memoria•Dispositivos E/S•Informacion
SolicitudE/S
Termina E/S
CPUResultado
Cpu E/S
Cpu E/S
Concepcion del modelo de estados y eventos
Sistema Monoprocesador 1cpu y N cpus e/s
Sistema Operativos Multiprogramación o MultitareaSe define cuando 2 o mas trabajos (programas, aplicaciones, Sistemas, Software, etc) Se procesan simultaneamente; pero solo 1 se esta Ejecutandose en un instante dado
CPU
E/S
T. Ejecución = Tcpu+Te/s+Tacceso
Rendimiento de Cpu = Tcpu *100% Ttotal de Ejecución
P1Cpu CpuE/S E/S
2 13 4
T. Ejecucion p1= 10 = 3 + 7 Rcpu p1 = 3 * 100% = 30% 10
Simbologia
Cpu CpuCpuCpuE/S E/SE/SE/S
2 32413 41
20
P1 P2
6 *100% = 30% R cpu p1 p2 = Tcpu * 100% 20 T Total
Multiprogramación
P1
P2
12132
132
4
4
6 *100% = 50% R cpu p1 p2 = Tcpu * 100% 12 T TotalMayor ventaja eleva el rendimiento de la Cpu
Cpu E/S Cpu E/S
2143T1
T2
T3
Cpu
4E/S
8
Ejercicio
Tejecución
Cpu E/S Cpu E/S
2143T1
T2
T3
Cpu
4E/S
8
10
T1 = 10 = 4 + 6 Rcpu T1 = 40 %T2 = 4 = 4 + 6 Rcpu T2 = 100 %T3 = 8 = 0 + 8 Rcpu T3 = 0 %
Administrador de procesadoresModulosControlador de trafico: modulo que efectua la sincronización y comunicación entre los procesos
Trabajos =
Programa SoftwareAplicacionesSistema, etc
T1P1T1P2T1P3
T1Pn
N procesos
Planeador de trabajo:Modulo responsable de realizar las siguientes actividadesA)Llevar el registro y control de todos los trabajos existentes en el sistemaB)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.
ListosProcesos
RetieneTrabajos
Solicita Recursos•Memoria•Dispositivos•Información
De acuerdo a recursos asignados realiza la planeación del procesamiento de los trabajos
ModelosPlaneación de trabajos con multiprogramación y con traslape E/Sse 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
T1
T2
E/SCpu E/S
E/S E/S
Cpu
Cpu
2 3 3 2
4 4 2
T3E/S E/SCpu
5 1 3
Cpu
1
Rcpu = 50%
Rcpu = 40%
Rcpu = 20%
5 1 3
244
32 2
1
3T1
T2
T3
0 8 141242
CpuOciosa
CpuOciosa
Modelo : Planeación de trabajos con multiprogramación y con Traslape de E/SCondiciones• 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 trabajosdurante su procesamiento.Programación GráficaMetodo probabilistico: FormulasTiempo de retorno = Tiempo fin - Tiempo llegada
Tiempo promedio retorno TPR = T retorno
n
n
i=1
%Cpu ocupada = 1-(%Cpu ociosaT1)(%Cpu ociosaT2)..(%Cpu OciosaTn)
TcpuTx = (%Cpu ocupada T1,T2..Tn ) * Treloj * % Cpu ocupada Tx
% Cpu ocupada
SeaTrabajo 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.7Tcpu T1= 0.7*2* 40 = 0.62 40+50Tcpu T2= 0.7*2* 40 = 0.78 40+50%Cpu ocup T1 T2 T3 =1-(0.6)(0.5)(0.2)=0.94Tcpu T1= 0.94*1* 40 = 0.22 40+50+80Tcpu T2= 0.94*1* 40 = 0.28 170Tcpu T3= 0.94*1* 80 = 0.44 170%Cpu ocup T1 T2 T3 T4=1-(0.6)(0.5)(0.2)(0.2)=0.988Tcpu T2=> 1.94=0.988*T reloj* 50 40+50+80+80Treloj = 14.82Tcpu T3 = T4 = 0.988 *9.82*80 =3.1Tcpu T1 = 0.988*9.82* 40 = 1.55 250
0.8
0.44
0.280.78
0.62 0.22
1.94
3.1
3.1
0.811.55
1.62
1.62 1.28
1.28 1.56
0 4 21.6418.9714.8252 23.59
TcpuT1
TcpuT1
TcpuT1
TcpuT1
T1= 4-0.8 = 3.2-0.62 = 2.58-0.22 = 2.36-1.55 = 0.81-0.81 = 0T2= 3-0.78 = 2.22-0.28 = 1.94-1.94 = 0T3= 8-0.44 = 7.56-3.1 = 4.46-1.62 = 2.84-1.28 = 1.56-1.56 = 0T4= 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
T3
T2
T1
2 4 6 8 10 12 14 16 18 20 22 23
tiempo
3
1
2
3 5 2 3
3 3
321
4
Trabajos Memoria Discos Cintas T1 80 3
Control de recursos : T1 T2 130 5
T2 T3 130 4
T1 80 3
Planeador de Procesos
Modulo responsable de realizar la planeacion de la ejecucion de los procesospara 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.
EjecucionPx
ListosPn....P3P2P1
BloqueadoPz....PbPa
Fin
CPU
q
Procesos
Solicitud E/S
Termina 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.
D C B A A
ProcesadorCola de Procesos
Agota qBloqueado Fin
Ingreso
q=100ms
Tiempo de llegada
Torneo mutuo, q = 100 msProcesos Tllegada TCPU Tfin Tretorno
P1 0 130 430 430
P2 0 210 740 740
P3 0 260 800 800
P4 0 370 970 970
2940
TPR = ?? 2940 = 735 ms4
Control Tcpu
P1 = 130 –100 = 30 – 30 = 0
P2 = 210 –100 =110-100=10-10=0
P3 = 260-100=160-100=60-60=0
P4 = 370-100=270-100=170-100=70-70=0
Procesos
P4
P3
P2
P1
tiempo430 970800740
100
100
100
100
100
100
100 100
30
10
60
70
Ejemplo 1:
Torneo mutuo, q = 100 msProcesos Tllegada TCPU Tfin Tretorno
P1 0 260 560 560
P2 70 240 690 620
P3 200 120 650 450
P4 305 70 630 325
1925
TPR = ?? 1925 = 488.75 ms4
Control Tcpu
P1 = 260-100=160-100=60-60=0
P2 = 240-100=140-100=40-40=0
P3 = 120-100=20-20=0
P4 = 70-70=0
Procesos
P4
P3
P2
P1
tiempo560 690650630
100
100
100
100
100
60
70
Ejemplo 2:
2040
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
A4 A3 A2 A1
B5 B4 B3 B2
C2C3
B1
C1
Ingreso
COLA DE PROCESOS
PROCESADOR
qA=100msqB=300msqC=800ms
Agota q
Bloqueado
Fin
Tiempo de llegada
A
B
C
JER
AR
QU
IA
NIV
EL
•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
P1 0 320 B
P2 50 210 A
(ms)(ms)
Procesos
P2
P1
Procesos
P2
P1
NO APROPIATIVO APROPIATIVO
200
100 100 10
120
x
500
50
100 100 10
200 70
500
Ejemplo 2:
A > B qA=100 ms qB=200 ms
Procesos Tllegada TCPU Prioridad Tfin Tretorno
P1 0 510 B 1390 1390
P2 70 430 B 1420 1350
P3 400 210 A 810 410
P4 430 270 A 880 450
(ms)(ms)APROPIATIVO
1420 3600
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
Control Tcpu
Ejemplo 2:
200
100
100
30
100
100
10
200
70
0
Procesos
P4
P3
P2
P1 200
200
110
880810400200 1390 1420
TPR = 3600 = 900 ms
4
Ejemplo 3:
C >B >A
Procesos Tllegada TCPU Prioridad Tfin Tretorno
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
(min)(min)
PRIORIDAD :
19 51
Ejemplo 3:
0
Procesos
P5
P4
P3
P2
P1
2
TPR = 51 = 10.2 min5
2
23
3
11
1 1
1
1
1
x
x
x
x
x
2 64 108 11 17 19
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
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)
D C B A
ProcesadorCola de Procesos
Bloqueado Fin
Ingresoq=
Tiempo de llegada
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.
Procesos Tllegada TCPU Tfin Tretorno
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
(ms)(ms)
18 38
Ejemplo 1:
Determinar el TPR para los sgtes. Algoritmos de planificacion PEPS.
0
2x
6
6
4
129 16 18
Procesos
P5
P4
P3
P2
P1
3
3
x
x
x
x
PEPS q=
TPR = 38 = 7.6 ms5
Procesos Tllegada TCPU Tfin Tretorno
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
(ms)(ms)
18 35
Ejemplo 2:
0
2
6
6
4
119 14 18
Procesos
P5
P4
P3
P2
P1
3
3
x
x
x
x
Primer trabajo mas corto q=
TPR = 35 = 7 ms5
x
Procesos Tllegada TCPU Tfin Tretorno
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
(ms)(ms)
18 33
Ejemplo 3:
0
3
2
2
2
114 14 18
Procesos
P5
P4
P3
P2
P1
3
2
x
x
x
Menor Tiempo Restante q=
TPR = 33 = 6.6 ms5
1
1
4
8 95
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.
P O N N
G E D
B A
Ingreso
COLA DE PROCESOS
PROCESADOR
q1N = qq2N = qq3N = q
Agota q
Bloqueado
Fin
Tiempo de llegada
JER
AR
QU
IA
NIV
EL 1°
2°
3°
P1 0 400 B
P2 50 220 A
P3 150 180 B
P4 300 80 A
Procesos Tllegada TCPU Prioridad
Por Niveles, 3 Niveles, q1N = 100ms
Ejemplo
P4
P3
P2
P1
0 100 200 300 380 580 700 780 8801°Nivel Q=100
2°Nivel Q=200
3°Nivel Q=400
P1= 400
P2= 220
P3= 180
P4= 80
CONTROL DE CPUCONTROL DE CPU
100
100
100
80
200
120
80
100
P1
-100=300
P1
P2
-100=120P2
P3
-100=80P3
P4
-80=0
-200=100
-120=0
P1
-80=0
-100=0
Tretorno
880 880
700 650
780 630
380 80
TPR = 880+650+630+80 = 560
4
Tfin
Procesos Administrativos
Ejecucion
Listas
Bloqueado
Fin
Termina E/S
Agota q
Solicitud E/S
q
TEjecucion = TCPU + TE/S + Tpa
Torneo Mutuo q
Por Niveles
Tpa =
n
i=1TCPU Pi
q tpa*
Tpa =
n
i=1TCPU Pi
qNj
tpa*
j=1
m
N° Niveles *
Prioridad
Tpa =
n
i=1TCPU PAi
qA+ tpa*
n
i=1TCPU PBi
qB+ . . .
n
i=1TCPU PNi
qN+
Ejemplo :
Procesos Tllegada TCPU Prioridad
P1 0 6 B
P2 1 7 B
P3 2 4 A
P4 4 5 B P5 5 3 A
(min)(min)
25
tpa = 20 ms
a) Torneo Mutuo q = 100msb) Prioridad (No Apropiativo) qA= 100ms, qB= 250msc) Por Niveles, 3 Niveles, q1N = 100ms
a) Torneo Mutuo q = 100ms
Tpa = (6+7+4+5+3)min * 20ms
100ms
Tpa = 5min
Tpa =
n
i=1TCPU Pi
q tpa*
b) Prioridad (No Apropiativo) qA= 100ms, qB= 250ms
Tpa =
n
i=1TCPU PAi
qA+ tpa*
n
i=1TCPU PBi
qB+ . . .
n
i=1TCPU PNi
qN+
Tpa = (4+3)min + (6+7+5)
100ms 250ms* 20ms
Tpa =
Tpa =
(0.07 + 0.072) * 20 min
2.84 min
Tpa = (6+7+4+5+3)min * 3 * 20ms
(100 + 200 + 400)ms
Tpa = 214 min
Tpa =
n
i=1TCPU Pi
qNj
tpa*
j=1
m
N° Niveles *
c) Por Niveles, 3 Niveles, q1N = 100ms
Torneo Mutuo
TEjecucion = TCPU + TE/S + Tpa
TEjecucion = 25 + 0 + 5 = 30 minP1P2P3P4P5
Ultimo proceso P2
Por Niveles
PrioridadTEjecucion = 25 + 0 + 2.84 = 27.84 minP1P2P3P4P5
Ultimo proceso P2
TEjecucion = 25 + 0 + 2.14 = 27.14 minP1P2P3P4P5
Ultimo proceso P2
Problema : Se tiene la sgte. Informacion:
Procesos Tllegada TCPU Prioridad
P1 0 3 B
P2 1 3 B
P3 3 2 A
P4 6 1 B P5 10 2 A
(min)(min)
tpa = 40 ms
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
0
0.5
1
1
0.5
7.53 8.5 9
Procesos
P5
P4
P3
P2
P1
2
1
0.5
2
65
1
0.5
0.5
0.5
0.5
0.5
10 12
P5
Ultimo
Tpa =
P3
P1P2P4
Tpa =
(3+3+1) * 40 ms
250 ms= 1.12 min
2 * 40 ms
100 ms= 0.80 min
1.92 min
Tpa =
P1P2P3P4P5
2 * 40 ms
100 ms= 0.80 min
Tfin
proceso = 12+ 1.92 + 0.8 – 1 = 13.72 min
TEjecucion = 11 + 1.92 + 0.8 = 13.72 min
PEPS q=
: calcula 3’, E/S 4’, calcula 2’, E/S 5’, calcula 1’.
: E/S 5’, calcula 5’, E/S 5’.
P1
P2
Tllegada
0”2”
P2
P1
1 3 4 1 1 12 5
1
1111
11 115 5 5
0 26 284
1
P1P2
TEjecucion 28 “Total
EjecucionP1P2 P1P1
ListosP1P2 P1P2 P1
BloqueadoP2 P1P2 P1
FinP1P2
Termina E/S
Solicitud E/S
q
Bloqueos mutuos/Interbloques/Estancamientos
Definición : Un bloqueo mutuo es la ocurrencia de la espera de un evento que nunca a ocurrir.
P1
P2
Impresora
Cinta
Simbologia:
Proceso
Recurso
Flujo
P P P1 P2
R R Imp Cin
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
METODOS PARA EVITAR LOS BLOQUEOS MUTUOS
PrevenciónEvitación o predicciónDetección y recuperación
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 procesoDe la cadena.
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 requeridosEn 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 sistemaEvitació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 mutuoDetección y recuperación: En este metodo se permite que se produzcaEl 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 2 2 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 seanMenor o igual que lo disponibleEstado inseguro: cuando no existe ningun proceso o trabajo
P1 solicita recurso adicuional
P3 solicita recurso adicuional
Asignarechaza
Asignarechaza
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 7 5 3 4 3 2 4 3 2
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 totales = Recursos
Adicionales+ Recursos
Disponibles
DemandaMaxima = Recursos
Asignados+ Recursos
Adicionales
Sistema
Proceso oTrabajo
II.-
Demanda:Maxima Asignados Adicionales
Proc R1 R2 R3
P1 2 7 0
P2 6 6 6
P3 4 3 6
R1 R2 R3
2 3 0
0 0 4
2 0 4
R1 R2 R3
0 4 0
6 6 2
2 0 2
Disponible:R1 R2 R3
2 1 2
R1 R2 R3
P3 2 3 4 + 2 0 6
4 3 6
P3 4 3 6
0 0 0
-
Finaliza
P1 2 3 0 + 0 4 0
2 7 0
P1 2 7 0
0 0 0
-
Finaliza
P1 2 1 2 - 2 0 2
0 1 0
P1 4 3 6
4 4 6
+
P1 0 4 0
4 0 6
P1 2 7 0
6 7 6
+
R1 R2 R3
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 WLa asignación y demanda de estoy recursos por los procesos es:1.-Proceso A asignado R y demanda al recurso S2.-Proceso B demanda T3.-Proceso C demanda S4.-Proceso D tiene asignado recurso U y demanda a SyT5.-Proceso E tiene asignado recurso T y demanda a V6.-Proceso F tiene asignado recurso W y demanda a S7.-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
A
S
R1.-
B
D
F
C G
E
T
S
U
TS
T
V
W
S
U
V
Buscar el proceso con mayor frecuencia
A
S
R
C
FW
D
T
B E V G
UFlujo circular en el mismo sentido
Procesos : D, E, GRecursos: T, V, U
G seria lo mas recomendable por que tiene Asignados ni S ni T que se repiten con mayor Frecuencia
Eliminar:expropiar el recurso al proceso V G
2.-
3.-
4.-
5.-
6.-
7.-
Administración de memoria :Lugar fisico donde se almacena informaciónComponentes:Registros,memoria cachesecundaria,RAM .
S.O
Memoria fisicaLa memoria esta compuesta por direcciones de memoria
Dirección (byte)
1byte 8bits1KB 1024 byets1MB 1024 KB
Modelos de memoria:
S.O
TX-30K
Inicio
1
S. O
TX-20K
TX-10K
S. O
TX-5 K
TX-10K
2 3
M.FisicaM.Fisica M.Fisica
S.O
TX-50K
M.Secundaria
Memoria Virtual
Clasificación:
I.- Por dirección
*Memoria continua-Asignación de una sola partición-Memoria Particionada-Memoria particionada reubicable-Memoria de intercambio
*Memoria no continua-Paginación-Segmentación-Segmentación / Paginación
II.-Por ubicación
*Memoria real-Asignación de una sola partición-Memoria particionada-Memoria particionada reubicable-Paginación-SegmentaciónSegmentación/Paginación
PuraBajo demandaCompartida
PuraCompartida
*Memoria Virtual-Memoria de intercambio-Paginación-Segmentación-Segmentación/Paginación
Bajo demanda
Memoria contunia de una sola partición:Es el mas Facil de implementar. No existe la multiprogramaciónActualmente 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
Sin uso
Memoria disponible
Memoria fisica
RestricciónTx <= Memoria Disponible
Memoria Particionada : La memoria fisica se divide en un numero determinado de particiones ,siendo estas De tamaño fijo o variablesMemoria Particionada fija o estatica: La memoria fisica se divide en numero determinado de particiones siendoCada 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 seEnciende 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.
P0 S.O
P1-60K
P2-40K
P3-100K
P4-75K
P5-75K
P6-50K
0
100K
160K
200K
300K
375K
450K
500K
Memoria fisica
Nro Dirección
(KB)
Tamaño
(KB)
Uso
0 0 100 S.O
1 100 60 Libre libre
2 160 40 Libre
3 200 100 Libre TA
4 300 75 Libre TE
5 375 75 Libre
6 450 80 50 libre
Tabla de Particiones Secuencia
TA-80KTB-30KTC-110KTD-90KTermina TBTE-70K
Memoriadisponible
espera
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 memoriaDisponible;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 libreEl cual puese ser utilizada por otro.Particiones o areas libres adyacentes se unen en una sola. Con el trancurso del tiempo se generaEn 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 existeDisponibilidad de memoria fisica que no puede ser utilizada en ese momento.
El modelo utiliza 2 tablas:La tabla de particiones en usoLa tabla de particiones libres
También es necesario utilizar los algoritmos de colocación o almacenamiento paraDecidir el almacenamiento fisico de un trabajo.
Memoria particionada variable o dinámica
S.O
TA-120
Libre-80K
Memoria disponible
0
100K
220K
300K
Tabla de particiones en uso Tabla de particiones libresNro Dirección
(KB)
Tamaño
(KB)
Uso
0 0 100 S.O
1 100 120 TA
2 220 75 TB
0 0 100 S.O
1 220 75 TB
0 0 100 S.O
1 100 80 TC
2 220 75 TB
0 0 100 S.O
1 100 80 TC
2 180 30 TD
3 220 75 TB
Nro Dirección
(KB)
Tamaño
(KB)
0 100 200
0 220 80
0 295 5
0 100 120
1 295 5
0 180 40
1 295 5
0 210 10
1 295 5
0 210 90
SecuenciaTA-120K TB-75KTC-80KTermina TATD-30KTE-15KTermina TB
esperaS.O
TA-120
TB-75K
Libre –5K
S.O
Libre-120K
TB-75K
Libre-5K
S.O
TC-80K
Libre-40K
TB-75K
Lire-5K
S.O
TC-80K
TD-30K
Libre-10K
TB-75K
Libre-5K
S.O
TC-80K
TD-30K
libre-90
0
100
220
295
300
0
100
220
295
300
0
100
180
220
295
300
0
100
180
210
220
295
300
0
100
180
210
300
Particiones libresAdyacentes se conviertenEn una sola
Memoria particionada reubicable: (compactación /compresión)
S.O
Libre-50K
T1-50K
T2-80K
Libre-20K
T3-100K
Libre-100K
T4-60K
Libre-40K
0
100K150K
200K
280K
300K400K
500K
560K
600K
Reubicación
S.O
T1-50K
T2-80K
T3-100K
T4-60K
Libre-210K
Tx-200K
Memoria fisica(antes)
Memoria fisica(despues)
0
100K
150K
230K
330K
350K
( - )
( + )
Fracmentación:Es cuando la memoria en blanco esta esta dispersa,memoria innecesaria cuando hay memoriaDisponible en un momento dado se denomina problema de la desfracmentación externa.
Tipo de compactación : T alto + T transferenciaT alto: N0 trabajos * t alto/trabajo
Ttransferencia: Cantidad de kB a * Ttransferncia/KB transferir
Move 188000
222
Move 188000
222
0000-512000
Registro de reubicación
+
T1(Antes)
T1(Despues)
150K
166615K
188000
200K 136800
100K
150K
Desplazamiento
-50Kb * 1024bytes -51200bytes
1Kb
Dirección fisica realD.F.R= 188000- 51200 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
Libre-200K
P4-300K
Libre-500k
P3-200K
Libre-300K
P2-200K
P1-300K
S.O-200K
Inicio
Medio
Final
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 iniciob.-lograr el area libre al medioc.-lograr el area libre al final
Determinar la mejor alternativa
Libre
P3
P4
P2
P1
S.O
Memoria fisica
Inicio p3
P4
Libre
P2
P1
S.O
p3
P4
P2
P1
Libre
S.O
Medio
Final
Memoria fisica Memoria fisica
a.-Inicio P4 300K
b.-Medio
P3 200K
c.-Final
P3+p2+P1200K+200K+300K 700K
Rpta porque utiliza menos memoria
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
P1
P2
P3
P4
.
.
.
PN-2
PN-1
PN
compactacionMemoria disponible
S.O
T1
T2
T3
.
.
.
PN-2
PN-1
PN
Memoria fisica Memoria fisica
Espacio fisico recuperado
Cada particion 8192 bytes * 1KB 8KB
1024 bytes
Nro de particiones fijas
Tcompactacion T alto + Ttransferencia 4096*0.02 seg\trabajo
Ttransferencia cant KB a trans * Ttransferencia\KB 24131.2 KB* 0.005 seg\kb
81.92seg
120.656 seg
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.2kbTcompactacion 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 a crear 8Kb
1078
Considerando memoria particionada reubicable a continuecion se muestra el estado actual de la memoria fisica
S.O
T1-80k
Libre -50K
T2-80K
Libre-40K
T3-50K
T4-100K
Libre-90k
T5-60K
Memoria fisica
TA-35K
Primer ajuste
Mejor ajuste
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 compactacionConsiderando los algoritmosa.-Primer ajusteb.-mejor ajustec.-peor ajuste
a)Primer ajuste b)Mejor ajuste c)Peor ajuste
:
s.o.-100
T1-80k
TA-35k
T2-80k
0
100k180k=rpta
0 0
s.o.-100
T1-80k
T2-80k
TA-35k
100k
180k
T3-50k
260k=rpta
s.o.-100
T1-80k
T2-80k
T3-50k
100k
180k
T4-100k
TA-35k
T5-60k
260k
310k
410k=rpta
MEMORIA NO CONTINUAMEMORIA NO CONTINUA
MEMORIA PAGINADA: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 del trabajo o proceso. Cada trabajo o proceso genera una tabla de mapa de paginas en la cual esta descrito una pagina y en que bloque físico esta almacenada dicha 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 en direcciones físicas reales todo trabajo tiene un numero entero de paginas .
d 7777bytes
Pag 0
1
2
Pag 0
1
2
3
0
4k
8k
9k
0
4k
8k
12k
14k
Tamaño
Pagina=4kB=2²
DIRECCIONES LOGICAS CONTINUAS
TA TB
TCPag 0
1
2
3
4
N° paginas = 9K =2.2 Ξ TA 4k
N° paginas = 17K =4.2 Ξ TB 4k
N° paginas = 17K =3.5 Ξ TC 4k
Numero de bloque físicos ,memoria física:N° = 256K =64 4k
3
5
4
pagina bloque
3
0
1
2
16
17
61
62
TMP (TC)
pagina bloque
0
1
2
3
4
47
48
49
50
51
TMP (TB)
TMP (TA)
pagina bloque
0
1
2
15
40
59
Pag1-TA
Pag1-TA
Pag0-TA
S.O.
M.Fisica0
12
1415
40
59
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 virtuales a direcciones físicas reales :
+ d
+ B' * (tamaño +d Bloque fisico)
B'
Dirección baseTMP(Tx) b
b
b+p:
B'::: Bloque físico
pp
DIRECCION VIRTUAL = d.,v. = (p, d)DIRECCION VIRTUAL = d.,v. = (p, d)O LOGICAO LOGICA p= N° de paginas donde se encuentra la dirección lógica.
d=desplazan con respecto al inicio de la pagina. B'=N° de bloque fisico.
D.V.= 7777 bytes (TA) =(p,d) = (1,3681)
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
Se toma la parte entera Se toma la parte entera Cuando queremos saber la Cuando queremos saber la Dirección Dirección
Problema 1Problema 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 bitsUn trabajo se requiere 260 KB representa la siguiente dirección virtual de 167666 bytes en el formato descrito.
Notación Hexadecimal 2 8 E F 2
PAGINA DESPLAZAMIENTO
2 3
Pag 0
1
2
TA0
4
8
9
0
4096
8192
d
EJM:EJM:
tamaño = 4kb =4096 bytespagina
P = 4096 =1 4096
D.V. =4095 bytes =(0,4095)
P = 4096 = 0.99 4096
D = 4095-0*4096=4095
Max. +1 = tamañoDesplaza- paginamiento
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 2Ejemplo 2
Notación Hexadecimal
pagina desplazamiento
2 3
a)Direccion =A2F0C D.F.R=
Logica
b)Direccion = 43F1CB D.F.R
Fisica
a)D.V. = AC =(p,d)= (A2;F0C)
D=AF0C-A2*1000=F0C
D:F:R:=DD2*1000+F0C=DD2FOC
pagina bloque
000102
:
:
9E9F
A1A2A3
BB2C43D15
43F5CD
F4CDD2C45
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 PAGINADAMODELO DE MEMORIA PAGINADA
*M. PAGINADA PURA:*M. PAGINADA PURA:
En este modelo todas las paginas requeridas y procesos obligatoriamente deben estar localizadas en la memoria fisica.
*M. PAGINADA BAJO DEMANDA:*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*trazos de pagina (P).-es la secuencia de la demanda d las paginas de un trabajo durante su ejecucion.
*marco de pagina (M*marco de pagina (M).-numero de bloque fisicos asignados al trabajo para su prosesamiento.
*fallo de pagina (f*fallo de pagina (f).-se 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:MEMORIA PAGINADA COMPARTIDA:
En este momento se identifica aquellas paginas q son identificadas o comunes de 2 o mas trabajos identificados dichas paginas son almacenadas como un solo bloque físico.
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
b)Bajo demanda con un marco de 10 bloques fisicos
T
m.secundaria m. fisica
c)Compartida teniendo la sgte información :T1,t2 y t3 tienen 10 paginas idénticasT1 y t2 tienen 5 paginas idénticas T1 y t3 tienen 10 paginas idénticas T2 y t3 tienen 5 paginas idénticas
240k
150k
t1
t2
t3
Npaginas=210k=52.2=53 t1 4k
Npaginas=150k=37.5=38 t2 4k
Npaginas=130k=32.5=33 t3 4k
a)Pura Memoria= (53+38+33)*4kb=124*4=496kFísica
b)Bajo DemandaMemoria= 3*10*4kb=120kbFísica
c)Compartida
510
10
528
8
18
T3
T2T1 Memoria Fisica
=28+18+8+10+10+5+5
= 84*4 kb
= 33.6 kb
Pag 0
1
2
3
4
5
6
7
0
80
140
210
280
330
420
480
548
a) PEPS
P = 1,7,0,4,3,4,2,1,1,2,7,1,0,4
P = 170 = 2.770
1 7 0 4 3 4 2 1 1 2 7 1 0 4
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
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 xf
4M=
f = 10M= 280 bytes
70 bytes= 4
p
1 7 0 4 3 4 2 1 1 2 7 1 0 4
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
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 xf
4M=
f = 10
p
b) LRU (Menos usado recientemente)
Numero
Pagina
Modelo
Referencia
Instante de demanda
Bit de
Modificacion
0 23 60,161 1
1 20 130,160 0
2 18 26,163 0
3 42 29,162 1
3 2 0 1 1 0 3 2 4
3 2 0 1 1 1 1 1
3 2 0 0 0 0 0
3 2 2 2 2 2
3 3 3 3 3
x x x xf
4M=
f = 4
p
Pag = 3
T
T
Marco Transferencia
= 42= 51
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 se inicia el almacenamiento del segmento logico el tamaño del segmento,los niveles de
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 de memoria.
MEMORIA SEGMENTADA PAGINADA: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 segmentos2.-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 y el bloque físico donde se encuentra localizada dicha pagina.
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.
ABC:N
0
1
8
0
1
10
0
1
6
:
:
:
TMS(TN)
TMS(TB)
TMS(TA)
TABLA DEPROCESOS O TRABAJOS
0
1
2
3
61
62250
251
0
1
2
0
1
2
60
120
200
201
202
203
0
1
121
122
TMP(S0)
TMP(S0)
TMP(S6)
TMP(S8)
S.O
PAG0-SO-TA
PAG1-SO-TA
PAG2-SO-TA
M.FISICA
MECANISMO DE TRADUCCION DE DIRECCIONES LOGICAS MECANISMO DE TRADUCCION DE DIRECCIONES LOGICAS LOGICAS O VIRTUALES A DIRECCIONES FISICAS REALES 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 almacenada la pag. Del segmento logico.
Dirección baseTMS(Tx) b
P S d
:
:
S'S'
Sb
:
B'
TMP(Sx)+
+
p
B' + B' • (tam.bloq. + d fisico
TMS(tx)
PROBLEMA: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)a)199999 bytes bb)55555 bytes (datos)Considere el almacenamiento fisico en el orden de pila, texto y datos asignadole un max. De 3 bloques fisicos continuos.Si requiere 1 segmento mas bloque fisico se requiere en el orden establecido
tx
TextoSo-120450
DatosS1-67900
PilaS2-28651
120450
188250
217001199999
a) dv= 199999 bytesb) Dv=55555 bytes (datos)
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
pagina1
N° paginas = 120450 =11.76 Ξ seg0 10240
N° paginas = 67900 =6.63 Ξ seg1 10240
N° paginas = 28651 =2.79 Ξ seg2 10240DFR =13*10240+1409 = 134529bytes
b)DV = 55555bytes =(s,p,d)=(1,5,4355)P =55555=5.42 10240D =55555-5*10240=4355Dfr =(26*10240+4355)=270595 bytes
12
3
7
c) D.Fisica =280480 bytes
Orden Pila ,texto ,datos
pag bloque
bloquepag
012
3456
18
1330
2625242019
12
14
0
12
012 345678
9
1011 33
32
15161721222327282931