SOManualdeEjercicios

Texto completo

(1)

Luis Zelaya

Primera Edición

28/09/2008

(2)

C

apí

tul

o:

P

ri

me

r

P

ar

ci

al

2

T

T

AB

A

BL

L

A

A

D

DE

E

CO

C

ON

NT

TE

E

NI

N

I

DO

D

O

Primer Parcial ... 3

Descripción y Control de Procesos ... 3

Cambio de Estados de Procesos: Ejemplo Resuelto ... 3

Cambio de Estados de Procesos: Ejercicio 1 ... 4

Cambio de Estados de Procesos: Ejercicio 2 ... 5

Cambio de Estados de Procesos: Ejercicio 3 ... 6

Segundo Parcial ... 7

Control de Concurrencia ... 7

Problema de Exclusión Mutua con Algoritmo de Petersen: Ejemplo resuelto ... 7

Problema de Exclusión Mutua con Algoritmo de Petersen: Ejemplo para resolver ... 7

Problema de Lectores/Escritores: Ejemplo Resuelto ... 8

Problema de Lectores/Escritores: Ejercicio 1 ... 10

Tercer Parcial ... 11

Planificación de Procesadores ... 11

Planificación de Procesadores: Ejercicio Resuelto de aplicación de políticas de Planificación... 11

Planificación de Procesadores: Ejercicio de aplicación de políticas de Planificación 1 ... 12

Planificación: Ejercicio de aplicación de políticas de Planificación 2 ... 13

Planificación de discos ... 14

Ejercicio resuelto de comparación de algoritmos de planificación de disco ... 14

(3)

C

apí

tul

o:

P

ri

me

r

P

ar

ci

al

3

P

P

R

R

I

I

M

M

E

E

R

R

P

P

A

A

R

R

C

C

I

I

A

A

L

L

D

D

e

e

s

s

c

c

r

r

i

i

p

p

c

c

i

i

ó

ó

n

n

y

y

C

C

o

o

n

n

t

t

r

r

o

o

l

l

d

d

e

e

P

P

r

r

o

o

c

c

e

e

s

s

o

o

s

s

Cambio de Estados de Procesos: Ejemplo Resuelto

Descripción:

Varios procesos necesitan entrar a ejecución en un sistema multiprogramado. Teniendo en consideración las transiciones de estado válidas, se determina la acción apropiada a seguir en cada momento, y otros efectos que pueda tener la solicitud. Se asume, para este ejemplo, que la memoria disponible es de únicamente 256MB:

Proceso Acción que solicita el

proceso requerida Memoria Resultado/Efecto de la solicitud Memoria restante

P1 Entrar a ejecución 128MB P1-> Ejecución 128

P2 Entrar a Ejecución 128MB P2 -> Listo 0

P3 Entrar a Ejecución 64MB P3 -> -Nuevo 0

P1 Terminar P1-> Terminado, P2 -> Ejecución, P3 -> Listo 64

P2 Lectura de datos en disco P2 -> Bloqueado, P3 -> Ejecución 64

P4 Entrar a Ejecución 128MB P4 -> Nuevo 64

P2 Fin Lectura de datos P2 -> Listo 64

P3 Terminar P3 -> Terminado, P2 -> Ejecución, P4 -> Listo 0

P5 Entrar a Ejecución 64MB P5 -> Nuevo 0

Estado final de los procesos:

Procesos Nuevos (pero no Listos) P5

Proceso que queda en ejecución P2 Procesos que quedan en cola de

listos P4

(4)

C

apí

tul

o:

P

ri

me

r

P

ar

ci

al

4

Cambio de Estados de Procesos: Ejercicio 1

Instrucciones:

Varios procesos necesitan entrar a ejecución en un sistema multiprogramado. Teniendo en consideración las transiciones de estado válidas, determine la acción apropiada a seguir en cada momento. La memoria disponible es de únicamente 1024MB:

Proceso Acción que solicita el

proceso requerida Memoria Resultado/Efecto de la solicitud Memoria restante

P1 Entrar a ejecución 128MB

P2 Entrar a Ejecución 512MB

P1 Lectura de datos en disco

P2 Terminar

P3 Entrar a Ejecución 256MB

P4 Entrar a ejecución 256MB

P5 Entrar a Ejecución 512MB

P1 Fin de Lectura de datos en disco

P3 Lectura de Datos en Disco

P4 Terminar

P6 Entrar a Ejecución 384MB

Estado final de los procesos:

Procesos Nuevos (No Listos)

Proceso que queda en ejecución

Procesos que quedan en cola de listos

Procesos que quedan bloqueados

Procesos Terminados

(5)

C

apí

tul

o:

P

ri

me

r

P

ar

ci

al

5

Cambio de Estados de Procesos: Ejercicio 2

Instrucciones:

Varios procesos necesitan entrar a ejecución en un sistema multiprogramado. Teniendo en consideración las transiciones de estado válidas, determine la acción apropiada a seguir en cada momento. La memoria disponible es de únicamente 1024MB:

Proceso Acción que solicita el

proceso requerida Memoria Resultado/Efecto de la solicitud Memoria Restante

P1 Entrar a ejecución 256MB

P2 Entrar a Ejecución 512MB

P1 Terminar

P2 Lectura de datos en disco

P3 Entrar a ejecución 512MB

P4 Entrar a Ejecución 256MB

P2 Fin de Lectura de datos en disco

P3 Terminar

P5 Entrar a Ejecución 128MB

P6 Entrar a Ejecución 512MB

P2 Terminar

Estado final de los procesos:

Procesos Nuevos (No Listos)

Proceso que queda en ejecución

Procesos que quedan en cola de listos

Procesos que quedan bloqueados

Procesos Terminados

(6)

C

apí

tul

o:

P

ri

me

r

P

ar

ci

al

6

Cambio de Estados de Procesos: Ejercicio 3

Instrucciones:

Varios procesos necesitan entrar a ejecución en un sistema multiprogramado. Teniendo en consideración las transiciones de estado válidas, determine la acción apropiada a seguir en cada momento. La memoria disponible es de únicamente 1024MB:

Proceso Acción que solicita el

proceso requerida Memoria Resultado/Efecto de la solicitud Memoria restante

P1 Entrar a ejecución 64MB

P2 Entrar a Ejecución 256MB

P3 Entrar a Ejecución 128MB

P1 Terminar

P2 Lectura de datos en disco

P4 Entrar a Ejecución 256MB

P2 Fin de Lectura de datos

P3 Terminar

P5 Entrar a Ejecución 64MB

P4 Terminar

Estado final de los procesos:

Procesos Nuevos (No Listos)

Proceso que queda en ejecución

Procesos que quedan en cola de listos

Procesos que quedan bloqueados

Procesos Terminados

(7)

C

apí

tul

o:

Se

gu

nd

o

P

ar

ci

al

7

S

S

E

E

G

G

U

U

N

N

D

D

O

O

P

P

A

A

R

R

C

C

I

I

A

A

L

L

C

C

o

o

n

n

t

t

r

r

o

o

l

l

d

d

e

e

C

C

o

o

n

n

c

c

u

u

r

r

r

r

e

e

n

n

c

c

i

i

a

a

Problema de Exclusión Mutua con Algoritmo de Petersen: Ejemplo resuelto

Instrucciones:

1. Existen dos procedimientos llamados P1 y P2.

2. Ambos procedimientos deben intercalar su ejecución, ejecutándose una vez en cada turno, excepto cuando se encuentren en su sección crítica en cuy0 caso la acción del procedimiento en sección crítica deberá ejecutarse con exclusividad.

3. Cada ejecución de P1 tiene como objetivo incrementar en una unidad y mostrar en pantalla el valor de la variable actualizada.

4. Cada ejecución de P2 tiene como objetivo incrementar en dos unidades y mostrar en pantalla el valor de la variable actualizada.

5. La sección crítica de P1 dura mientras el valor de la variable está entre 4 y 7. El P1 finaliza cuando la variable alcanza el valor de 10.

6. La sección crítica del P2 dura mientras el valor de la variable está entre 6 y 12. El P2 finaliza cuando la variable alcanza el valor de 16.

7. En caso de que un procedimiento termine antes que otro, el que aún no ha terminado debe seguirse ejecutando hasta su finalización.

Solución propuesta:

Secuencia de Ejecución Procedimiento ejecutándose Valor P1 Valor P2 Observaciones

1 P1 1 0

2 P2 1 2

3 P1 2 2

4 P2 2 4

5 P1 3 4

6 P2 3 6 Inicia sección crítica de P2

7 P2 3 8

8 P2 3 10

9 P2 3 12 Finaliza sección crítica de P2

10 P1 4 12 Inicia sección crítica de P1

11 P1 5 12

12 P1 6 12

13 P1 7 12 Finaliza sección crítica de P1

14 P2 7 14

15 P1 8 14

16 P2 8 16 Finaliza P2

17 P1 9 16

18 P1 10 16 Finaliza P1

Problema de Exclusión Mutua con Algoritmo de Petersen: Ejemplo para resolver

Instrucciones:

1. Existen dos procedimientos llamados Pa y Pb.

2. Ambos procedimientos deben intercalar su ejecución, ejecutándose una vez en cada turno, excepto cuando se encuentren en su sección crítica en cuyo caso la acción del procedimiento en sección crítica deberá ejecutarse con exclusividad.

3. Cada ejecución de Pa tiene como objetivo multiplicar por 2 el valor de Pa (valor inicial: 2) y mostrar en pantalla el valor de la variable una vez multiplicada.

4. Cada ejecución de Pb tiene como objetivo dividir entre 2 el valor de Pb (Valor inicial: 2048) y mostrar en pantalla el valor de la variable una vez dividida.

(8)

C

apí

tul

o:

Se

gu

nd

o

P

ar

ci

al

8

6. La sección crítica del Pb inicia cuando Pb sea menor o igual que 1024, hasta que Pb sea menor o igual que

128, El Pb finaliza cuando la variable alcanza el valor de Pb sea menor o igual a 2.

7. En caso de que un procedimiento termine antes que otro, el que aún no ha terminado debe seguirse ejecutando hasta su finalización.

Problema de Lectores/Escritores: Ejemplo Resuelto

Instrucciones: Varios procesos necesitan entrar a una sola área de datos compartida. En base al Algoritmo de Lectores/Escritores determine:

1. La respuesta que el sistema operativo dará al proceso solicitante. Por ejemplo: “P1 pasa alectura” o “P1 Pasa a cola de

escritura”, etc.).

2. El efecto adicional que produce la terminación de la acción de un proceso. Por ejemplo: Si un proceso termina de escribir, deben verificarse las colas de lectura o escritura, para que los procesos en espera puedan realizar su función.

Proceso

solicitante Acción que solicita el proceso Efecto de terminación de Proceso Resultado de solicitud/

P1 Lectura P1-> Pasa a lectura, Lectores = 1

P2 Lectura P2 -> Pasa a lectura, Lectores = 2

P3 Escritura P3 -> Pasa a cola de escritura, Lectores = 2

P1 Terminar P1 -> Terminado, Lectores = 1

P2 Terminar P2 -> Terminado, Lectores = 0, P3 -> pasa a escritura

P4 Lectura P4 -> Pasa a cola de lectura

P5 Escritura P5 -> Pasa a cola de escritura

P6 Lectura P6 -> Pasa a cola de lectura

P3 Terminar P3 -> Terminado, P5 -> Pasa a escritura

P7 Lectura P7 -> Pasa a cola de lectura

P5 Terminar P5 -> Terminado, P4, P6 y P7 -> Pasan a Lectura, Lectores = 2

P8 Escritura P8 -> Pasa a cola de escritura

P4 Terminar P4 -> Terminado, Lectores = 1

P9 Lectura P9 -> Pasa a cola de lectura

Estado final de los procesos:

Procesos Terminados P1, P2, P3, P4, P5

Procesos que quedan leyendo P6, P7

Procesos que quedan escribiendo Ninguno

(9)

C

apí

tul

o:

Se

gu

nd

o

P

ar

ci

al

9

(10)

C

apí

tul

o:

Se

gu

nd

o

P

ar

ci

al

1

0

Problema de Lectores/Escritores: Ejercicio 1

Instrucciones: Varios procesos necesitan entrar a una sola área de datos compartida. En base al Algoritmo de Lectores/Escritores determine:

3. La respuesta que el sistema operativo dará al proceso solicitante. Por ejemplo: “P1 pasa alectura” o “P1 Pasa a cola de

escritura”, etc.).

4. El efecto adicional que produce la terminación de la acción de un proceso. Por ejemplo: Si un proceso termina de escribir, deben verificarse las colas de lectura o escritura, para que los procesos en espera puedan realizar su función.

Proceso solicitante Acción que solicita el

proceso Efecto de terminación de Proceso Resultado de solicitud/ P1

Escritura

P2 Lectura

P3 Lectura

P1 Terminar

P2 Terminar

P4 Escritura

P5 Lectura

P3 Terminar

P6 Escritura

P7 Escritura

P4 Terminar

P8 Escritura

P5 Terminar

P9 Lectura

P10 Escritura

P11 Lectura

Estado final de los procesos:

Procesos Terminados

Procesos que quedan leyendo

Procesos que quedan escribiendo

Procesos en cola de lectura

(11)

C

apí

tul

o:

Te

rc

er

P

ar

ci

al

1

1

T

T

E

E

R

R

C

C

E

E

R

R

P

P

A

A

R

R

C

C

I

I

A

A

L

L

P

P

l

l

a

a

n

n

i

i

f

f

i

i

c

c

a

a

c

c

i

i

ó

ó

n

n

d

d

e

e

P

P

r

r

o

o

c

c

e

e

s

s

a

a

d

d

o

o

r

r

e

e

s

s

Planificación de Procesadores: Ejercicio Resuelto de aplicación de políticas de Planificación

Determine el orden en que será ejecutados los siguientes procesos, de acuerdo a las políticas de planificación y aplicando las funciones de decisión.

Nombre Proceso

Tiempo total consumido en el sistema

(w)

Tiempo consumido en ejecución

(e)

Tiempo total de servicio exigido (s)

P1 25 5 35

P2 15 10 30

P3 20 20 25

P4 10 0 15

P5 30 20 50

Política Orden de Ejecución

Primero en Entrar, Primero en ser Servido (modo no apropiativo)

P5, P1, P3, P2, P4

Turno Rotatorio

(modo apropiativo, tiempo de turno: 5 unidades)

Primer Ciclo: P5, P1, P3, P2, P4 Segundo Ciclo: P5, P1, P2, P4 Tercer Ciclo: P5, P1, P2, P4 Cuarto Ciclo: P5, P1, P2 Quinto Ciclo: P5, P1 Sexto Ciclo: P5, P1

Primero el proceso más corto (modo no apropiativo)

P4, P3, P2, P1, P5

Primero el de menor tiempo restante

(modo apropiativo, tiempo de turno: 5 unidades)

Primer Ciclo: P3, P4, P2, P5, P1 Segundo Ciclo: P4, P2, P5, P1 Tercer Ciclo: P4, P2, P5, P1 Cuarto Ciclo: P2, P5, P1 Quinto Ciclo: P5, P1 Sexto Ciclo: P5, P1

Primero el de mayor tasa de respuesta

(modo apropiativo, tiempo de turno: 5 unidades)

(12)

C

apí

tul

o:

Te

rc

er

P

ar

ci

al

1

2

Planificación de Procesadores: Ejercicio de aplicación de políticas de Planificación 1

Determine el orden en que será ejecutados los siguientes procesos, de acuerdo a las políticas de planificación y aplicando las funciones de decisión.

Situación inicial

Nombre

Proceso Tiempo total consumido en el sistema (w) Tiempo consumido en ejecución (e) Tiempo total de servicio exigido (s)

P1 35 5 30

P2 20 10 20

P3 15 10 15

P4 5 5 10

P5 40 20 50

…20 unidades de tiempo después

Nombre

Proceso Tiempo total consumido en el sistema (w) Tiempo consumido en ejecución (e) Tiempo total de servicio exigido (s)

P6 0 0 25

…otras 25 unidades de tiempo después

Nombre

Proceso Tiempo total consumido en el sistema (w) Tiempo consumido en ejecución (e) Tiempo total de servicio exigido (s)

P7 0 0 5

Política Orden de Ejecución

Primero en Entrar, Primero en ser Servido (modo no apropiativo)

Turno Rotatorio

(modo apropiativo, tiempo de turno: 5 unidades)

Primero el proceso más corto (modo no apropiativo)

Primero el de menor tiempo restante

(modo apropiativo, tiempo de turno: 5 unidades)

Primero el de mayor tasa de respuesta

(13)

C

apí

tul

o:

Te

rc

er

P

ar

ci

al

1

3

Planificación: Ejercicio de aplicación de políticas de Planificación 2

Determine el orden en que será ejecutados los siguientes procesos, de acuerdo a las políticas de planificación y aplicando las funciones de decisión.

Situación inicial:

Nombre

Proceso Tiempo total consumido en el sistema (w) Tiempo consumido en ejecución (e) Tiempo total de servicio exigido (s)

P1 20 15 40

P2 30 15 25

P3 10 0 30

15 unidades de tiempo después:

Nombre

Proceso Tiempo total consumido en el sistema (w) Tiempo consumido en ejecución (e) Tiempo total de servicio exigido (s)

P4 0 0 15

Otras 15 unidades de tiempo después:

Nombre Proceso

Tiempo total consumido en el sistema (w)

Tiempo consumido en ejecución (e)

Tiempo total de servicio exigido (s)

P5 0 0 20

Política Orden de Ejecución

Primero en llegar, primero en ser servido (modo no apropiativo)

Turno Rotatorio

(modo apropiativo, tiempo de turno: 5 unidades)

Primero el proceso más corto (modo no apropiativo)

Primero el de menor tiempo restante

(modo apropiativo, tiempo de turno: 5 unidades)

Primero el de mayor tasa de respuesta

(14)

C apí tul o: Te rc er P ar ci al

1

4

P

P

l

l

a

a

n

n

i

i

f

f

i

i

c

c

a

a

c

c

i

i

ó

ó

n

n

d

d

e

e

d

d

i

i

s

s

c

c

o

o

s

s

Ejercicio resuelto de comparación de algoritmos de planificación de disco

Para los datos dados a continuación:

1. Calcule el número de pistas recorridas y el tiempo promedio de búsqueda para cada uno de los 4 algoritmos de planificación de disco.

2. Determine cual de los 4 algoritmos es el óptimo para los procesos que están accediendo a disco. Nota: Se asume que la cabeza está en la pista 120.

FIFO SSTF C-SCAN SCAN

Siguiente pista accedida Cantidad de pistas recorridas Siguiente pista accedida Cantidad de pistas recorridas Siguiente pista accedida Cantidad de pistas recorridas Siguiente pista accedida Cantidad de pistas recorridas

100 20 110 10 140 20 140 20 150 50 100 10 150 10 150 10 40 110 90 10 200 50 200 50

80 40 80 10 210 10 210 10

200 120 40 40 30 180 110 100

210 10 30 10 40 10 100 10

110 100 140 110 80 40 90 10

140 30 150 10 90 10 80 10

90 50 200 50 100 10 40 40

30 60 210 10 110 10 30 10

Tiempo promedio de búsqueda

590 Tiempo

promedio de búsqueda

270 Tiempo

promedio de búsqueda

350 Tiempo

promedio de búsqueda

270

(15)

C apí tul o: Te rc er P ar ci al

1

5

Ejercicio de comparación de algoritmos de planificación de disco: Para resolver

Para los datos dados a continuación:

1. Calcule el número de pistas recorridas y el tiempo promedio de búsqueda para cada uno de los 4 algoritmos de planificación de disco.

2. Determine cuál de los 4 algoritmos es el óptimo para los procesos que están accediendo a disco. Nota: Se asume que la cabeza está en la pista 150.

FIFO SSTF SCAN C-SCAN

Figure

Actualización...

Referencias

Actualización...

Related subjects :