You are on page 1of 12

4.2.4.2.

Planeacin de trabajos con multiprogramacin y traslape de E/S




En realidad, parte del tiempo de corrida de un trabajo es el tiempo de espera de E/S que
se puede traslapar (o sea, que se puede utilizar la CPU para otros clculos mientras que el
canal de E/S maneja la E/S). Cmo afecta esto al rendimiento de la multiprogramacin?
Supongamos que 25 por ciento del tiempo de un trabajo es tiempo de espera, o que
durante 25 por ciento del tiempo transcurrido la CPU esperara E/S si se corriera el trabajo
en un medio ambiente mono programado (solo).

Sin embargo, en un medio ambiente multiprogramado se podra asignar el procesador a
otro trabajo durante este tiempo de espera. Es posible que todos los trabajos esperen la
E/S al mismo tiempo, por lo que todava puede ser que la CPU est ociosa parte del
tiempo, como se dijo en la seccin 3-2. En la figura 4-14 se da nuevamente la tabla de
porcentajes de espera del sistema.

PORCENTAJE DE TIEMPO DE ESPERA CUANDO SE MONOPROGRAMA
G
R
U
P
O

D
E

M
U
L
T
I
P
R
O
G
R
A
M
A
C
I
O
N

1 5.0 10.0 15.0 20.0 25.0 30.0 35.0 40.0 45.0 50.0 55.0 60.0 65.0 70.0 75.0 80.0 85.0 90.0 95.0
2 0.1 0.6 1.3 2.4 4.0 6.0 8.0 11.8 15.5 20.0 25.2 31.0 37.6 45.0 52.0 61.5 70.7 80.2 90.0
3 0.0 0.0 0.1 0.2 0.4 0.0 1.5 2.5 4.1 6.3 9.3 13.4 18.9 25.0 34.6 45.1 51.2 70.6 85.1
4 0.0 0.0 0.0 0.0 0.0 0.1 0.2 0.4 0.8 1.5 2.8 4.8 8.1 13.1 20.6 31.1 44.7 61.4 80.2
5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.1 0.3 0.7 1.4 2.9 5.8 11.0 19.9 33.6 52.5 75.3
6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.1 0.4 0.9 2.2 5.2 11.7 24.1 44.1 70.4
7 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.2 0.7 2.2 6.3 16.3 36.2 65.7
8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.2 0.8 3.0 10.4 28.9 60.9
9 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.5 1.3 6.1 22.4 56.3
10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.5 3.4 16.8 51.7
11 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.2 1.7 12.1 47.2
12 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.8 8.5 42.7
13 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 5.4 38.5
14 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 3.4 34.3
15 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 2.0 30.3
16 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.1 26.4
17 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 22.8
18 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 19.4
19 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 16.3
20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 13.4
FIGURA 4-14 Tabla tiempo de espera en por ciento cuando se multiprograma.


Para calcular el tiempo promedio de retorno necesitamos determinar cundo se termina
un trabajo. Para hacerlo, es imperativo comprender el concepto de adelanto de CPU. O
sea cunto trabajo de CPU recibe un trabajo en un intervalo determinado.

Considere dos casos: Primero, si se corriera un trabajo por s mismo y la espera de E/S
fuera del 25 por ciento, entonces en 1 hora transcurrida solo habra un adelanto de CPU
igual a 0.75 horas. Por tanto, si el tiempo necesario de CPU fuera 1.5 horas, necesitara
que transcurrieran dos horas para que se terminara el trabajo.

Ahora considere el caso ms complicado de dos trabajos que comienzan al mismo tiempo,
y que tienen un tiempo de espera de E/S de 25 por ciento y que necesitan 1.5 horas de
tiempo de CPU (o sea, dos horas de tiempo transcurrido cuando se mono programan).
Cundo estarn terminados?

Usando la tabla de la figura 4-14 para dos trabajos de ese tipo, la CPU estar ociosa cuatro
por ciento del tiempo. Cul es el adelanto total de CPU posible en una hora para ambos
trabajos? Es de 0.96 horas de CPU.

Si se divide este adelanto por igual entre los dos trabajos, cada uno recibe solo 0.48 horas
de adelanto por hora de tiempo transcurrido. En consecuencia, se necesitan 1.5 entre 0.48
o 3.13 horas de tiempo transcurrido total para completar ambos trabajos. Esta es una
notable mejora sobre las cuatro horas que hubieran transcurrido si se corrieran estos
trabajos mono programados y secuencialmente.

La figura 4.15 presenta el clculo del tiempo promedio de retorno para la coleccin de
trabajos mostrada en la figura 4-12, pero con tiempo de espera de E/S de 25 por ciento. La
figura muestra los eventos principales (por ejemplo, llegada o terminacin de trabajo),
como se hiciera en la figura 4-10. Durante estos intervalos entre los eventos est
corriendo un nmero fijo de trabajos. La columna de nmero de trabajos de la figura 4-
15b es la cantidad de trabajos que est corriendo en ese periodo entre el ltimo evento y
el actual. La figura 4-14 determina el tiempo global de CPU apropiado suponiendo que
cada trabajo tiene un tiempo de espera de 25 por ciento. La columna %CPU por trabajo
es el porcentaje de tiempo de CPU utilizado por trabajo. Al multiplicar este por el intervalo
transcurrido se obtiene el adelanto de CPU por trabajo. Restando
este adelanto del tiempo residual anterior de CPU por trabajo se obtiene el nuevo tiempo
residual por trabajo. Recomendamos en forma muy especial al lector que verifique los
clculos de la figura 4-15.

Debido al efecto de la multiprogramacin en el tiempo de retorno, a menudo el anlisis se
hace bastante complejo. Supusimos que todos los trabajos tenan un tiempo de espera de
E/S de 25 por ciento. En los sistemas reales cada trabajo tiene un porcentaje distinto de
tiempo de espera de E/S.







FIGURA 4-15b. Tiempos de planeacin de trabajos para trabajos con multiprogramacin y
traslape de E/S: anlisis tabular.

4-2.4.3. Planeacin de trabajos con requerimientos de memoria y sin traslape de E/S

Adems del tiempo de CPU, un trabajo puede necesitar determinada cantidad de
memoria. Suponiendo memoria finita y un plan de particin reubicable (que elimine la
fragmentacin), cul es el impacto en el tiempo de retorno?


NUMERO HORA TIEMPO MEMORIA
TRABAJO ENTREGADO CORRIDA NECESIDADES
1 10.0 0.3 10 K
2 10.2 0.5 60 K
3 10.4 0.1 50 K
4 10.5 0.4 10 K
5 10.8 0.1 30 K

FIGURA Solicitud de trabajo de muestra para planear con necesidades de memoria

En la figura 4-17 se muestra un anlisis de los trabajos usando la planeacin de trabajos de
PETS como la mostrada en la figura 4-16. Suponemos que la memoria disponible es de
100K y que hay multiprogramacin sin traslape de E/S. Note que aunque el trabajo 3 lleg
en 10.4, no pudo empezar a correr sino hasta 11.2 ya que necesitaba 50K de memoria,
que no estuvieron disponibles sino hasta esa hora.



Las cifras indican que debido a esta restriccin de memoria aumento el tiempo promedio
de operacin.
FIGURA 4-17B Solo restricciones a memoria de multiprogramacin: Tabular

TRABAJO TIEMPO CORRIDA LLEGADA TERMINACION TIEMPO PONDERADO
TERMINACION DE RETORNO
1 0.3 10.0 10.4 0.4 1.33
2

0.5

10.2

11.2

1.0

2.00
3

0.1

10.4

11.4

1.0

10.00
4

0.4

10.5

11.4

0.9

2.25
5

0.1

10.8

11.1

0.3

3.00


3.6

18.58
Tiempo de retorno T=0.72
Tiempo ponderado de retorno, W=3.716
FIGURA Solamente restricciones a memoria de multiprogramacin: resultados resumidos.

4-2.4.4. Planeacin de trabajos con restricciones de memoria y cintas, y sin traslape de
E/S

Ahora supongamos que los trabajos tambin requieren una cantidad de unidades de cinta
adems de memoria y tiempo de CPU. Qu impacto tiene ahora en el tiempo de retorno?

En la figura se muestran las solicitudes de la muestra del trabajo.
Suponemos que el sistema tiene 100K de memoria y cinco unidades de cinta.

NUMERO

HORA

TIEMPO

MEMORIA

CINTAS
TRABAJO

ENTREGADO

CORRIDA

NECESIDADES

NECESARIAS
1

10.0

0.3

10 K

2
2

10.2

0.5

60 K

1
3

10.4

0.1

50 K

4
4

10.5

0.4

10 K

2
5

10.8

0.1

30 K

3
FIGURA Trabajos de muestra con necesidades de memoria y cinta
La figura 4-19 es un anlisis de este caso. Note que no pudimos iniciar el trabajo 5 sino
hasta que se liberaron suficientes cintas. La restriccin adicional de las unidades de cinta
hizo que se elevara el tiempo promedio ponderado de retomo con respecto a la
restriccin nica de memoria de la figura 4-17.




FIGURA Multiprogramacin con necesidades de memoria y cinta: Tabular
TRABAJO TIEMPO LLEGADA TIEMPO TERMINACION
TIEMPO
PONDERADO
RETORNO DE RETORNO
1

0.3

10.0

10.4

0.4

1.33
2

0.5

10.2

11.2

1.0

1.80
3

0.1

10.4

11.4

1.0

10.00
4

0.4

10.5

11.3

0.9

2.00
5

0.1

10.8

11.3

0.3

5.00


3.6

20.13
Tiempo de retorno T=0.72
Tiempo ponderado de retorno, W=4.026

FIGURA Multiprogramacin con necesidades de memoria y cinta: necesidades resumidas
4-2.5. Resumen de planeacin de trabajos

El tiempo mnimo de retorno es un objetivo ms bien comn de un algoritmo de
planeacin de trabajos. Sin embargo, en los sistemas reales a menudo encontramos
necesario modificar esta poltica. Entre las razones podran contarse las siguientes:

1. Algn concepto de prioridad puede dar trato preferido a determinados trabajos, a
menudo mediante un cobro adicional.

2. El procesamiento total (throughput) debe ser suficiente para efectuar el trabajo de un
da en menos de 24 horas. (Recuerde que algunas de las tcnicas de tiempo de retorno
fsicamente hacen que la CPU quede ociosa.)

En resumen, hemos intentado mostrar que el diseador debe determinar primeramente
sus objetivos, por ejemplo, un bajo retorno promedio, y luego experimentar con distintos
algoritmos de planeacin en lo que considere que son mezclas representativas de
trabajos.

En toda la seccin 4-2 probamos distintos algoritmos de planeacin. Los tres primeros se
probaron con la misma mezcla de trabajos. Algunas conclusiones para esta mezcla seran:

1. La poltica de primero entrado primero salido reduce la dispersin de los tiempos de
espera para cada trabajo.

2. La poltica de primero el trabajo ms corto da un bajo tiempo promedio de retorno
aunque claramente favorece al trabajo ms corto.

3. El conocimiento futuro produce el mejor tiempo de retorno, pero es difcil
implementarlo.

Demostramos que en un medio ambiente multiprogramado determinadas mezclas de
trabajos tenan mejores tiempos de retorno que otras. Incluimos un anlisis ms
complicado de planeacin en un medio ambiente multiprogramado con traslape de E S.
Tambin tomamos en cuenta las necesidades de memoria y dispositivos. En los casos de
estudio del capitulo 9 se pueden encontrar otros algoritmos de planeacin de trabajo.

You might also like