Académique Documents
Professionnel Documents
Culture Documents
PROCESOS
ndice
ndice
1.
Introduccin.
2.
Concepto de proceso.
3.
Estados de un proceso.
4.
5.
6.
7.
8.
Interrupciones.
9.
Planicacin de procesos
a)
Niveles de planicacin.
b)
Objetivos de la planicacin.
ndice
c)
d)
Medidas.
e)
Algoritmos de planicacin.
f)
Planicacin en POSIX.
g)
h)
10.
Criterios de planicacin.
Bibliografa
Bibliografa
Referencias
[MORERA.95] Morera Pascual, Juan; Prez Campanero,
Juan A. Teora y diseo de los sistemas
[CARRET 01]
Fernando
Prez.
McGraw-Hill,
2001.
[SILBERS.99]
1 Introduccin
1 Introduccin
Registros.
Ejecucin de instrucciones.
Niveles de ejecucin.
Interrupcin de reloj.
1.1 Registros
1.1 Registros
: estn dispo-
Registros de datos (AX, BX,...): son de propsito general con restricciones (p. ej. slo para
operaciones en coma otante).
1.1 Registros
: para la ejecu-
o de
Tipo de
Tamao (Bits)
Nomenclatura
Registro
registros
Propsito
128
54+1
gr0..gr127
Coma Flotante
128
82
fr0..fr127
Prediccin
64
pr0..pr63
Branch
64
br0..br7
Propsito
128
64
ar0..ar127
General
General 64 bits
son:
1.
2.
Ejecucin de la instruccin.
P1icio
Leervsiguie1te
i1strucci1
pdecutar
i1strucci1
Ciclovlectura
Ciclovedecuci1
Fi1
Otras instrucciones.
Nivel de usuario:
es
modelos
10
11
de reloj.
interrupciones
Objetivo: provocar que el S.O tome el control mediante la RSI (Rutina de Servicio de la Interrupcin) del
reloj.
12
2 Concepto de proceso
2 Concepto de proceso
Qu es un proceso?
13
3 Estados de un proceso
3 Estados de un proceso
Estan caractersticas hacen necesario denir los posibles estados en los que puede estar un proceso.
Putpouods
<<create>>
P1
B7sqCtods
icoLervs
aFtLCLrlc
Tema 2: GESTIN DE PROCESOS
14
3 Estados de un proceso
Estados
15
Tiempo real
(max. prioridad)
Espera suceso
E/S
Termina
quantun
Inactivo
Bloqueado
Despachado
Ocurre
suceso
Se crea
Preparado
Interbloqueo
16
El
realizarlo.
Quanto (quantum):
17
18
preparado y suspendido,
suspendido bloqueado.
Diagrama de estados:
Tema 2: GESTIN DE PROCESOS
19
Ejecucin
Espera suceso
E/S
Termina
quantun
Inactivo
Bloqueado
Despachado
Ocurre
suceso
Se crea
Memoria
Preparado
Expulsado
a
disco
Interbloqueo
Recuperado
de disco
Expulsado
a disco
listo y
suspendido
Fin E/S
suspendido
y bloqueado
Zona de
intercambio
20
5 Procesos e hilos
5 Procesos e hilos
Un hilo es un programa en ejecucin (ujo de ejecucin), que comparte la imagen de memoria y otras
informaciones con otros hilos.
Tema 2: GESTIN DE PROCESOS
21
5 Procesos e hilos
22
5 Procesos e hilos
uso de mem-
canismos de sincronizacin.
ElementosLporLprocesoL
IontauorLuelLprograma
Pila
Registros
HilosLhiqos
Estauo
EspacioLueLuirecciones
VariaGlesLgloGales
Archi.osLaGiertos
ProcesosLhiqos
Ironmetros
Seales
Semforos
Estausticas
Ventajas:
23
5 Procesos e hilos
preparados.
bloqueados.
en ejecucin.
Con los hilos no tiene sentido hablar de estados suspendidos, puesto que si el proceso est suspendido,
todos sus hilos lo estarn.
Tema 2: GESTIN DE PROCESOS
24
5 Procesos e hilos
25
estructuras
de datos.
guceoprnmRntolhpEserpntonsprholr
quonlonoleAnoPohuemctr.n
guceoprnmnRmnhrRmntonsposmpmtrln
nnnnirRmntonsprholrlnnnn
HRrquomtrl
guceoprnmnRmnhrRmntonHRrquomtrln
irRmntonsprholrl
nlulsoctEtrlnsposmpmtrln
guceoprnmnRmnhrRmntonlulsoctEtrl
sposmpmtrln
irRmntonsprholrl
nlulsoctEtrlnHRrquomtrln
guceoprnmnRmnhrRmntonlulsoctEtrl
HRrquomtrln
VoherpolntonEceoppushEac
GoleEac
IceoppushErcol
LElemntontolhpEserpolntonsprholrl
nnnnirRmntonsprholrlnnnn
sposmpmtrl
LElemnton
sprholrl
ueEcmlntonepmemSEocerntonEceoppushErcol
26
6.1 Introduccin
ILentificaLor Lel
proceso (ID)
rivileqios
Permisos de acceso
rioriLaL
VstaLo HarLware
Estado de procesador
VstaLo roceso
2
Rec.rsos
Mapa Le memoria
roceso paLre
2
roceso hijo
Ficheros abiertos
Eciencia: la tabla de PCB's suele ser una estructura esttica, donde los PCB's tienen un tamao
jo.
27
28
6.2 Objetivos
6.2 Objetivos
29
6.3 Prioridades
6.3 Prioridades
prioridades.
30
HDw
IIIILentiIfcIaor cnrnIII
IIlor cnrIcpIcsc ( epII
IIIIDr)iIfcIaor cnrnIIII
aocaioifrn
IIIIDr)iIfcIaor cnrnIIII
v)rq(cifrn
Dr)iIfcIaor cnrn
In(nacpfefrnIaocaioifrnI
Dr)iIfcIaor cnrn
In(nacpfefrnIv)rq(cifrnI
Vc trocnIfcIeptcoo(a ep
Dr)iIaor cnrn
aocaioifrn
lor cnrIm
lor cnrIF
.
.
.
lor cnrIp
Dr)iIaor cnrn
v)rq(cifrn
lor cnrIm
lor cnrIF
.
.
.
lor cnrIp
Dr)iIaor cnrn
n(nacpfefrn
aocaioifrn
lor cnrIm
lor cnrIF
.
.
.
lor cnrIp
Dr)iIaor cnrn
n(nacpfefrn
v)rq(cifrn
lor cnrIm
lor cnrIF
.
.
.
lor cnrIp
Rf.Iaor cnr
.
.
.
MntifrIaor cnr
.
.
.
Rf.Iaor cnr
.
.
.
MntifrIaor cnr
.
.
.
Rf.Iaor cnr
.
.
.
MntifrIaor cnr
.
.
.
Rf.Iaor cnr
.
.
.
MntifrIaor cnr
.
.
.
Rf.Iaor cnr
.
.
.
MntifrIaor cnr
.
.
.
31
Creacin:
32
PuPt
c tty
c tty
c tty
c tty
ldcPu
sh
sh
IP
Destruir un proceso:
se destruye su PCB y se
suspender el
33
Despertar un proceso:
estaba retardados.
Abortar.
Suspender un proceso en ejecucin: se lleva al
proceso a la cola de procesos suspendidos preparados.
34
7.1 Ejemplo
7.1 Ejemplo
Putswap r
cpyr lawlrardph
ID: GUARDAR
ID:CALCULAR
PR: 1
PR: 4
ST: PREPARADO
ST: PREPARADO
...
Putswap r
cpyr dw bypquwrdph
ID:IMPRIMIR
ID: RECOGER
PR: 3
PR: 2
ST: BLOQUEADO
ST: BLOQUEADO
...
Rrzt dw
bypquwp
Ehlwar hwry
dw CALCULAR
Ehlwar hwry
dw CALCULAR I GUARDAR
35
7.1 Ejemplo
Puntero a
cola preparados
ID: GUARDAR
ID:CALCULAR
PR: 1
PR: 4
ST: EJECUCION
ST: PREPARADO
///
Puntero a
cola de bloqueados
ID:IMPRIMIR
ID: RECOGER
PR: 3
PR: 2
ST: BLOQUEADO
ST: BLOQUEADO
///
Razn de
bloqueo
Espera seal
de CALCULAR
Espera seal
de CALCULAR y GUARDAR
36
7.1 Ejemplo
Puntero a
cola preparados
qULL
ID:CALCULAR
PR: 4
ST: EbECUCIOq
Puntero a
cola de 1loJueados
ID:IMPRIMIR
ID: GUARDAR
PR: 3
PR: 2
PR: N
ST: BLOQUEADO
Razn de
1loJueo
ID: RECOGER
ST: BLOQUEADO
ST: BLOQUEADO
Espera seal
de CALCULAR
Espera seal
de CALCULAR y GUARDAR
Operacin
E/S
37
7.1 Ejemplo
Puntero a
cola preparados
ID: GUARDAR
PR: 1
ST: PREPARADO
ID:CALCULAR
PR: 4
ST: EJECUCION
Puntero a
cola de bloqueados
ID:IMPRIMIR
PR: 3
PR: 2
ST: BLOQUEADO
Razn de
bloqueo
ID: RECOGER
ST: BLOQUEADO
Espera seal
de CALCULAR
Espera seal
de CALCULAR y GUARDAR
38
7.1 Ejemplo
Puntero a
cola preparados
ID: GUARDAR
ID:CALCULAR
PR: i
PR: m
ST: PREPARADO
ST: PREPARADO
Puntero a
cola de 4loJueados
ID:IMPRIMIR
PR: 3
PR: 2
ST: BLOQUEADO
RaNbn de
4loJueo
ID: RECOGER
ST: BLOQUEADO
Espera seqal
de CALCULAR
Espera seqal
de CALCULAR z GUARDAR
39
8 Interrupciones
8 Interrupciones
RutiXa de tratamieXto
de iXterruYciX
1
-
i
IXterruYciX
i+1
40
8 Interrupciones
41
8.1 Utilidades
8.1 Utilidades
42
Interrupciones SW:
Excepciones:
que amenaza la integridad de un proceso. La naturaleza inesperada de estas hace que la programacin
secuencial normal sea inadecuada
gestores de ex-
43
44
Excepciones
Referentes al proceso en
No relacionadas con el
ejecucin
proceso
Afectan al proceso y su
Afectan al sistema
entorno
Hay prioridades
No hay prioridades
45
En todos los casos, incluso cuando el tiempo de espera E/S es muy alto, el tiempo se ejecucin usando
interrupciones es menor.
Tema 2: GESTIN DE PROCESOS
46
47
48
En este ciclo:
El nuevo ciclo aade una pequea sobrecarga de proceso en comparacin con el tiempo que se gana al
usar interrupciones.
49
P1, P2,...,Pm
ac-
De ellos
Si
P1
P1
est en ejecucin.
guientes acciones:
Se deja de ejecutar
Se salva el PCB
P1
50
P1
P2
Se deja de ejecutar
Se salva el PCB
Se comprueba si
P2
P2
pasa e ejecutarse.
51
i+MP+ror1ga1m mr+uM
111--111
-----------
smRutr1X
ga1R+rRrouatRM
ga1utRa++mdeuMta
--1--1
1--1
smRutr1Y
ga1R+rRrouatRM
ga1utRa++mdeuMta
--1--1
1--1
Denir priopridades, una interrupcin de alta prioridad puede interrumpir a otra de menos prioridad.
52
C5DE5101A2eAusu15iD
AAABBAAA
BB
BB
BB
BB
BB
BB
BB
BB
BB
BB
Rutin1AX
2eAt51t10ientD
2eAinte55upciDnes
BB
BB
ABBA
ABBA
Rutin1AY
2eAt51t10ientD
2eAinte55upciDnes
BB
BB
ABBA
ABBA
53
Manejo de interrupciones
Crear y destruir procesos.
Cambio de estado de procesos.
Despachar los procesos.
Suspensin y reanudacin de procesos.
Comunicacin y sincronizacin.
Manipulacin del PCB.
54
En un sistema multiprogramado tenemos varios procesos que se alternan en el uso del procesador y en
esperar a realizar operaciones E/S u otro suceso.
La planicacin consiste en asignar procesos al procesador para que sean ejecutados a lo largo del tiempo
cumpliendo una serie de objetivos.
55
56
En
En los
57
do un proceso que est preparado pasa a ejecutarse, realiza las funciones de multiprogramacin.
58
los
disminuir el nmero de
cambios de proceso.
Minimizacin de la sobrecarga:
incide en
del procesador.
59
60
El diseador estudiar el comportamiento del algoritmo segn los criterios siguientes con objeto de
observar si se alcanzan los objetivos jados:
Tiempo de respuesta:
Tiempo de ejecucin:
representa el tiempo
61
Tiempo de espera:
Rendimiento:
62
9.4 Medidas
9.4 Medidas
T s = tf t i
Tiempo de Espera: Te = Ts t
ndice de Servicio: I = t/Ts . Es el
Tiempo de Servicio:
porcentaje de
menos desperdicio se
produce.
63
9.4 Medidas
promedios:
Tms = n Ts
N
Te
Tiempo medio de espera: Tme =
n N
I
ndice medio de servicio: Im =
nN
64
65
to
tejecucion
Cola
No se realiza E/S,
Tejecucion = Tprocesador .
66
Modo de decisin,
prioridad interna
(la
prioridad externa
la
67
Es una poltica
Ejemplo:
E
D
C
B
A
5
10
15
20
68
69
Finalizados
0
1
2
A, B
A, B
10
A, B, C
11
A, B, C
12
A, B, C
13
A, B, C
14
A, B, C
15
A, B, C
16
A, B, C, D
17
A, B, C, D
18
A, B, C, D
19
A, B, C, D
20
Esperando
Ejecucin
A3
B5
B5
B5
C2
C 2, D6
C 2, D6
C 2, D6
C 2, D6, E 4
D6, E 4
E4
E4
E4
E4
E4
E4
E4
A3
A2
A1
B5
B4
B3
B2
B1
C2
C1
D6
D5
D4
D3
D2
D1
E4
E3
E2
E1
A, B, C, D, E
70
Tabla de tiempos:
ti
tf
Ts
Te
0.71
10
0.33
16
11
0.54
20
12
0.33
Media
7.8
3.8
0.58
Nombre
proceso
71
Ejemplo 2:
ocurren simultneamente los sucesos de n de operaciones de E/S y la llegada de un nuevo proceso, ste
ltimo evento ocurre primero.
Proceso
to
Ejecucion
Cola
1 + E/S + 1
2 + 2 E/S + 1
3 + 2 E/S + 1
1 + 1 E/S + 2
72
Fin
Listos
0
1
2
3
4
A, C
A, C
A, C
9
10
11
12
13
14
A, C
A, C, B
A, C, B
A, C, B, D
A, C, B, D
A,
C,
B,
A1
3
2
B5
A1
1
A1
1
2
C2
3
1
D6 , B1
3
1
D6 , B1
1
B1
1
1
B 1 , E4
1
1
B 1 , E4
1
E4
1
D1
2
E2
2
E2
Bloq.
A1
2
2
B3
1
B2
2
D3
1
D2
1
E3
Ejec.
A1
3
2
B5
1
B4
A1
1
2
C2
1
C1
3
D6
2
D5
1
D4
1
B1
1
E4
1
D1
2
E2
1
E1
1
E1
D, E
73
Tabla de tiempos:
ti
tf
Ts
Te
2/4
10
3/9
2/2
13
4/8
15
3/7
Nombre
proceso
Media
Ventaja:
Desventaja:
Ts
74
FIFO.
pequeo sobrecarga.
q grande
q
75
Ejemplo 1: q=1
Cronograma o diagrama de ocupacin: como superindice indicamos el quantum que le queda, como
subindice lo que le queda por ejecutarse .
E
D
C
B
A
5
10
15
20
Tablas de sucesos:
76
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Finalizados
A
A
A
A
A, C
A,C,B
A,C,B
A,C,B
A,C,B
A,C,B
A, C, B, E
A,C,B,E
Esperando
Ejecucin
A1
3
1
B5 , A1
2
1
A1, B4
2
1
B4 , A1
1
1
1
1
A1, C2 , B3
1
1
1
C2 , B3 ,D6
1
1
1
B3 ,D6 , C1 ,
1
1
1
D6 , C1 , B2
1
1
1
1
C1 , B2 , E4 D5 ,
1
1
1
B2 , E4 D5
1
1
1
E4 , D5 , B1
1
1
1
D5 , B1 , E3
1
1
1
B1 , E3 , D4
1
1
E3 , D4
1
1
D4 , E2
1
1
E2 , D3
1
1
D3 , E1
1
1
E1 , D 2
1
D2
1
D1
A1
3
1
B5
A1
2
1
B4
A1
1
1
C2
1
B3
1
D6
1
C1
1
B2
1
E4
1
D5
1
B1
1
E3
1
D4
1
E2 ,
1
D3
1
E1
1
D2
1
D1
Tabla de tiempos:
77
ti
tf
Ts
Te
0.6
13
12
0.42
0.40
20
15
0.40
18
10
0.40
Media
7.8
3.8
0.44
Nombre
proceso
Ejemplo 2: q=3
Proceso
Ejecucion
Cola
1 + E/S + 1
2 + 2 E/S + 1
3 + 2 E/S + 1
to
1 + 1 E/S + 2
E
D
C
B
A
5
Tema 2: GESTIN DE PROCESOS
10
15
20
78
79
Finalizados
0
1
2
A, C
A,C
10
A,C
11
A,C
12
A,C
13
A,C,B
14
A,C,B
15
A,C,B
16
A,C,B
17
18
19
A,C,B,D
20
Esperando
Ejecucin
A3
3
3
B5
3
B5
3
B5
3
C2
3
3
C2 , D6
3
3
3
C2 , D6 , B2
3
3
D6 , B2
3
3
3
D6 , B2 , E4
3
3
B 2 , E4
3
3
B 2 , E4
3
3
3
B2 , E4 ,D3
3
3
E4 ,D3
3
3
E4 ,D3
3
D3
3
D3
3
3
D3 , E1
3
E1
3
E1
3
E1
A3
3
A2
2
A1
1
3
B5
2
B4
1
B3
3
C2
2
C1
3
D6
2
D5
1
D4
3
B2
2
B1
3
E4
2
E3
1
E2
3
D3
2
D2
1
D1
3
E1
A,B,C,D,E
80
Tabla de tiempos:
ti
tf
Ts
Te
13
12
0.42
0.50
19
14
0.43
20
12
0.33
Media
0.54
Nombre
proceso
Ejecucion
Cola
1 + E/S + 1
2 + 2 E/S + 1
3 + 2 E/S + 1
to
1 + 1 E/S + 2
81
Finalizados
Esperando
Bloqueados
Ejecucion
3,1
A3
3,2
B5
3,1
A1
3,1
A1
2
B3
3,1
A1
1
B2
3,2
C2
3,2
C2
A, C
A, C
A, C
10
A, C, B
11
A, C, B
12
A, C, B, D
13
A, C, B, D
14
3,2
B5
2,1
B4
A, C
A1
2
3,3
3,1
D6 , B 1
3,3
3,1
D6 , B 1
3,1
A3
A, C, B, D, E
2,1
C1
3,3
D6
2,2
D5
3,1
3,1
B1 , E4
3,1
3,1
B1 , E4
3,1
E4
3,1
D1
3,2
E2
1,1
D4
2
D3
3,1
B1
1
D2
3,1
E4
3,1
D1
3,2
E2
3,1
E1
1
E3
82
Tabla de tiempos:
ti
tf
Ts
Te
2/4
10
3/9
2/2
12
4/7
14
8/6
Nombre
proceso
Media
Conclusiones:
Propiedades de la poltica:
83
84
Ejemplo:
E
D
C
B
A
5
10
15
20
85
Finalizados
0
1
2
3
A, B
A, B
10
A, B, C
11
A, B, C, E
12
A, B, C, E
13
A, B, C, E
14
A, B, C, E
15
A, B, C, E
16
A, B, C, E
17
A, B, C, E
18
A, B, C, E
19
A, B, C, E
20
Esperando
Ejecucin
A3
B5
B5
B5
C2
C 2, D6
C 2, D6
C 2, D6
C 2, D6, E 4
D6, E 4
D6, E 4
D6
D6
D6
D6
A3
A2
A1
B5
B4
B3
B2
B1
C2
C1
E4
E3
E2
E1
D6
D5
D4
D3
D2
D1
A, B, C, E, D
86
Tabla de tiempos:
Proceso
ti
tf
Ts
Te
0.71
10
0.33
20
15
0.40
14
0.67
Media
7.4
3.4
0.62
to
Ejecucion
Cola
1 + E/S + 1
2 + 2 E/S + 1
3 + 2 E/S + 1
1 + 1 E/S + 2
87
Tablas de sucesos
88
Finalizados
E/S
B5
B5
A1
B4
A2
A3
B4 , A1
Ejecucin
A3
Esperando
B4
B3
C2
C2
B2
D6 ,C1
C1
A, C
B 1 , D6
B1
A, C, B
D6
D6
A, C, B
D5 , E4
E4
A, C, B
D5
D5
10
A, C, B
D4 ,E2
E2
11
A, C, B
D4
E1
12
A, C, B,E
D4
D4
13
A, C, B, E
D3
14
A, C, B, E
D2
15
A, C, B, E
16
A, C, B, E, D
E3
D6
D1
D1
89
Tabla de tiempos
Nombre proce-
ti
tf
Ts
Te
2/3=0.67
3/6=0.5
2/2=1
16
11
4/11=0.36
12
3/4=0.75
Media
5.2
2.4
0,656
so
Propiedades
Es poco predecible
No es justa, favorece a los procesos cortos.
Tiene un buen
e I.
90
Es una poltica
apropiativa.
tiempo de ejecucin
Ejemplo:
E
D
C
B
A
5
Tema 2: GESTIN DE PROCESOS
10
15
20
91
Tablas de sucesos
Finalizados
0
1
2
3
A, C
A, C
A, C
A, C
10
A, C, B
11
A, C, B
12
A, C, B
13
A, C, B
14
A, C, B, E
15
A, C, B, E
16
A, C, B, E
17
A, C, B, E
18
A, C, B, E
19
A, C, B, E
20
Esperando
Ejecucin
A3
B5, A2
B5
B5
C2, B4
B4, D6,C1
B4, D6
D6
D6, E4, B2
D6,E4
D6,E4
D6
D6
D6
D6
A3
A2
A1
B5
C2
C1
B4
B3
B2
B1
E4
E3
E2
E1
D6
D5
D4
D3
D2
D1
A, C, B, E, D
92
Tabla de tiempos
ti
tf
Ts
Te
10
0.55
20
15
0.4
14
0.67
Media
0.72
Nombre
proceso
to
Ejecucion
Cola
1 + E/S + 1
2 + 2 E/S + 1
3 + 2 E/S + 1
1 + 1 E/S + 2
93
Tablas de sucesos
94
Finalizados
E/S
B5
B5
A1
B4
A2
A3
B4 , A1
Ejecucin
A3
Esperando
B4
B3
C2
C2
B2
D6 ,C1
C1
A, C
B 1 , D6
B1
A, C, B
D6
D6
A, C, B
D5 , E4
E4
A, C, B
D5
D5
10
A, C, B
D4 ,E2
E2
11
A, C, B
D4
E1
12
A, C, B,E
D4
D4
13
A, C, B, E
D3
14
A, C, B, E
D2
15
A, C, B, E
16
A, C, B, E, D
E3
D6
D1
D1
95
Tabla de tiempos
Nombre proce-
ti
tf
Ts
Te
2/3=0.67
3/6=0.5
2/2=1
16
11
4/11=0.36
12
3/4=0.75
Media
5.2
2.4
0,656
so
Excelente I y un
es lo ms corta
96
Es una poltica
no apropiativa.
w+t
P =
t
donde
rados
w es
y t es
el tiempo de espera en la cola de prepael tiempo de ejecucin, cada vez que sea
necesario planicar.
97
Ejemplo:
98
Tablas de sucesos:
Finalizados
Esperando
Ejecucin
B(1.4)
C,D
A,B
C(3),D(1.5), E(1)
A,B,C
D(1.8), E(1.5)
A,B,C,D
E(3)
8
10
16
20
A,C,B,E,D
99
Tabla de tiempos:
ti
tf
Ts
Te
0.71
10
0.33
16
11
0.54
20
12
0.33
Media
7.8
3.8
0.58
Nombre
proceso
Propiedades:
Justa.
Costosa al tener que calcular la prioridad interna P.
Sobrecarga.
100
permanente
a una determinada.
algoritmo
Ejemplo 1:
Si un proceso en una cola de mayor prioridad interrumpe a otro situado en una cola de menor
prioridad el proceso pasa a ocupar la ltima posicin en la FIFO. SOLO PARA ESTE EJEMPLO.
101
Tablas de sucesos:
0
1
2
3
4
5
6
7
8
10
13
16
19
Finalizados
Esperando
C1
C2
Ejecucin
C3
B,A
A,B
B,A
A,B
D,E
A,B,C
D,E
A,B,C
E,D
A,B,C
D,E
A,B,C,D
A,B
102
Finalizados
C1
20
Esperando
C2
Ejecucin
C3
A,B,C,D,E
Tabla de tiempos:
ti
tf
Ts
Te
0.6
0.71
10
0.3
19
14
0.43
20
12
0.33
Media
8.8
4.8
0.47
Nombre
proceso
103
to
tejecucion
Nombre
proceso
Si una proceso en una cola de mayor prioridad interrumpe a otro situado en una cola de menor prioridad
el proceso pasa a ocupar la ltima posicin en la FIFO.
SOLO PARA ESTE EJEMPLO.
E
D
C
B
A
5
10
15
20
104
Tablas de sucesos:
t
0
1
2
3
4
5
7
8
11
14
17
20
22
Finalizados
Esperando
C1
C2
Ejecucin
C3
E,D
D,E
D,E
A,B
D,E
A,B
D,E
A,B,C
D,E
A,B,C
E,D
A,B,C
D,E
A,B,C,D
A,B,C,D
A,B,C,D,E
105
Tabla de tiempos:
Proc.
ti
tf
Ts
Te
0.8
17
15
0.4
22
21
12
0.4
Media
8.8
4.4
0.72
106
Tn ,
107
Tn = Tm2nm
donde
Tmes
es el
nivel.
Parmetros:
108
Caractersticas de la poltica:
Ejemplo 1:
E
D
C
B
A
5
10
15
20
Tabla de sucesos:
109
5
C, D
C
3
4
A, B
C2
C1
A
Fin.
A, B,
A, B,
A, B
A, B
A, B
A, B
C3
C4
Esperando
C5
C6
Eje.
110
Fin.
C, A, E
C, A, E, B
18
B, D, E
B, D
17
14
C, A
13
D, E
C4
C, A
C, A
12
B, D, E
A, B, D, E
C3
16
C, A
11
C2
D, E
C, A
10
C1
Esperando
15
B, D
B, D
C5
C6
Eje.
111
C4
C3
C, A, E, B
C, A, E, B,
19
20
Fin.
t
C1
C2
Esperando
C5
C6
Eje.
112
Tabla de tiempos:
ti
tf
Ts
Te
11
11
0.27
18
17
12
0.29
0.67
20
15
0.40
17
0.44
Media
7.8
3.8
0.41
Nombre
proceso
113
Normalmente los sistemas desdoblan las colas en tantas como prioridades puedan alcanzar los procesos (de
la forma en que lo hacen las colas multiples)
El problema de las prioridades es la postergacin indenida o inanicin que pueden sufrir ciertos procesos.
Para evitarlo se usa la tcnica del 'envejecimiento de
prioridades', mediante la cual el proceso va perdiendo
prioridad conforme ms tiempo est en el sistema.
Estos algoritmos de envejecimiento de prioridades pueden ser adems apropiativos o no apropiativos, segn
las acciones que tomen con el proceso que est en
ejecucin en un momento dado.
114
Este estndar especica una serie de polticas de planicacin aplicable a procesos y procesos ligeros.
FIFO modicada:
El proceso es expulsado por otro de mayor prioridad para a ser el primero de su cola.
Un desbloqueo
ltimo de su cola.
115
replanicacin.
Si tras esta el proceso resulta expulsado ltimo
Cambio de prioridad o poltica
de su cola.
Cclica (Round-Robin).
Fin quantum
El proceso es expulsado por otro de mayor prioridad para a ser el primero de su cola pero con el
resto de quantum que an no haba consumido.
116
117
Estados de un hilo:
Iniciado
Situar en listos
Reiniciado
Fin bloqueo
finalizado
bloqueado
Bloqueado
Ejecucin
finaliza
Fin espera
Pila del
Kernel en
SWAP
transicin
Pila del
Kernel en
Memoria
Listos
Expulsado
Seleccionado
reserva
ejecucin
Expulsado
118
119
CP Uj (i 1)
CP Uj (i) =
2
Pj (i) = Basej + CP Uj (i) + nicej
donde
CP Uj (i)es
j en el intervalo i, Pj (i)
del proceso j al principio del intervalo
prioridad base del proceso j y nicej es
i, Basej
es la
120
Los valores de
CP U
nice
Intercambio
Control de dispositivos de E/S de bloques.
Gestin de archivos.
Control de dispositivos de E/S de caracteres.
Procesos de usuario.
121
Los procesos deben ser ellos mismos los que se encarguen de sincronizar sus operaciones, aunque como
ayuda a los usuarios los SO multitarea y algunos lenguajes de programacin proporcionan una coleccin
de primitivas de sincronizacin entre procesos
Sincronizacin entre procesos: protocolos y mecanismos usados para preservar la integridad y consistencia del sistema.
122
Comunicacin entre procesos: los procesos se comunican con propsitos tales como intercambiar datos,
acumular resultados colectivos, ... (Si lo hacen mediante memoria compartida deben sincronizar sus
accesos a dicha memoria compartida).
123