Escolar Documentos
Profissional Documentos
Cultura Documentos
Año 2005
Ciclo lectivo:2005
Cátedra: Sistemas Operativos
Carrera: Ing. En Sistemas de Información
Profesores:
Parte Teórica:
Exp. Mario Iribas –Prof. Titular
Ing. Liliana R. Cuenca Pletchs –Prof. Titular
Parte Practica:
Ing. Alberto Ristoff –Aux de 1ra
Ing. Jorge Roa –Aux de 1ra
-1-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
Indice
1ra Parte
Procesos y Planificación de Procesos _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ __ _ _ _ _ _ _ __ _ _ Pág.3
2da Parte
Bloqueo e InterBloquedo_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ Pág.6
Procesos Concurrentes_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Pág.7
3ra Parte
Administración de memoria y Memoria Virtual_ _ _ _ _ _ __ _ _ _ __ _ _ _ _ _ __ _ _ __ Pág.8
-2-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
Objetivos
Ejercicios
-3-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
4. Calcular el tiempo de espera medio para los procesos de la tabla utilizando el algoritmo
Primero el de tiempo restante menor (SRTF).
5. Utilizando la tabla del ejercicio anterior, dibujar el diagrama Gantt para el caso de un
sistema que utiliza un algoritmo de colas múltiples con realimentación con las siguientes
colas
y suponiendo que : (a) los procesos entran en la cola de mayor prioridad (mayor valor
numérico), y (b) un proceso en la cola i pasa a la cola i-1 si consumen un quantum
completo.
Para el problema considere que cada orden de trabajo llega en un determinado momento,
para lo cual se genera un proceso que usa primero la CPU, realiza una entrada de datos,
procesa los datos (CPU), envía los resultados hacia la salida y finalmente usa la CPU. En
la siguiente tabla se entregan los datos para seis procesos que debe procesar por el
sistema.
-4-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
a. Simule el comportamiento del sistema mediante una tabla que indique los estados de
los procesos, colas y recursos para cada unidad de tiempo.
b. Determine, para cada proceso, el tiempo de espera total y el tiempo de tránsito.
c. Determine, para el sistema, la utilización de los recursos y la productividad.
d. Analice si se mejora la utilización de los recursos y la productividad si se usa round-
robin con quantum igual a una unidad de tiempo (nótese que se modifica el modelo
anterior).
C1: trabaja con un algoritmo SRTF + RR con Q=2. Todos los trabajos arriban a esta cola.
C2: Trabaja con un Algoritmo RR con Q = 3.
C3. Trabaja con un Algoritmo FCFS. Una vez que llegan los trabajos a esta cola se quedan
hasta terminar allí.
Se ejecuta un trabajo en una determinada cola siempre y cuando no haya trabajos en una
cola de mayor prioridad.
TR TA TI TAM(MB)
1 0 2 3
2 2 5 7
3 3 10 10
4 6 4 2
5 7 7 17
a) Dibuje las gráficas de Gantt (todas con la misma escala) que ilustren la ejecución de
estos procesos utilizando los siguientes esquemas de planificación:
a.1) FCFS; a.2) SJF no apropiativo; a.3) SJF apropiativo; a.4) Prioridades no
apropiativo; a.5) Prioridades apropiativo; a.6) RR con cuanto=1; a.7) RR con
cuanto=6;
a.8) Planificación de colas de múltiples niveles apropiativos con planificación de
procesos: sistema RR (cuanto=1); interactivos FCFS; lotes FCFS
b) Calcule los tiempos de retorno y espera para cada proceso según los algoritmos de
planificación empleados en el apartado anterior. Indique qué algoritmo de
planificación ofrece el menor tiempo promedio de espera, de retorno y de cambios de
contexto.
-5-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
a) Dibujar las gráficas de Gantt que ilustren la planificación de la CPU cuando se emplea
un algoritmo a.1) FCFS, a.2) Prioridades no apropiativo y a.3) Prioridades apropiativo
11. Cierto sistema operativo posee un algoritmo de planificación de CPU basado en colas
multinivel realimentadas (3 colas). La forma en la que los trabajos son alojados en cada
una de las colas es la siguiente:
- Todos los trabajos cuando llegan al sistema son colocados en la cola 1, la cual se
planifica de acuerdo a un algoritmo Round-Robin con cuanto de tiempo igual 2 ms. En
esta cola, un trabajo permanecerá si después de ejecutar su primera ráfaga de CPU, le
queda por ejecutar ráfagas inferiores a 5ms. En caso contrario pasaría a la cola 2 o cola
3.
- Un trabajo pasará a la cola 2, en caso de que le quede por ejecutar una ráfaga de CPU
superior o igual a 5ms. Este trabajo permanecerá en esta cola hasta que termine su
ejecución y se planifica según un Round-Robin con cuanto igual 3ms.
- Un trabajo pasará a la cola 3, en caso de que le quede por ejecutar una ráfaga de CPU
superior o igual a 8ms. Este trabajo permanecerá en esta cola hasta que termine su
ejecución y se planifica según un SJF con requisa.
Se pide:
a) Dibuje en la gráfica adjunta cómo se ubican los trabajos en cada una de las
colas y el orden de ejecución.
-6-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
NOTA:
Suponer que cuando un trabajo acaba su ráfaga de CPU (su cuanto), se coloca en la cola
correspondiente y a continuación se realiza la planificación, es decir, se elige un trabajo de
la cola más prioritaria que contenga algún trabajo.
-7-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
Objetivos
Ejercicios
a. Calcule qué recursos aún podría solicitar cada uno de los procesos y rellene la
columna (demanda restante)
b. ¿Está el sistema actualmente en un estado seguro o inseguro? Fundamente.
c. ¿Esta el sistema actualmente bloqueado? Fundamente
d. ¿Qué procesos, si los hay, están o pueden llegar a estar ínter bloqueados?
e. Si llega de P3 una solicitud de (0,1,0,0), ¿podrá concederse inmediatamente esta
solicitud? ¿en qué estado (ínter bloqueado, seguro o inseguro) dejaría al sistema la
concesión inmediata de la solicitud completa? ¿ que procesos, si los hay, están o
pueden llegar a estar ínterbloqueados si se concede inmediatamente la solicitud
completa
Aplique el algoritmo del Banquero para determinar si sería seguro conceder cada una de
las siguientes peticiones. Si la respuesta es si, indicar la secuencia de terminación que lo
haría posible. Si la respuesta es no, mostrar la reducción resultante en la tabla de
asignación.
3. En un sistema con 5 procesos P0, P1, P2, P3 y P4 y y 4 tipos de recursos (r0, r1, r2 y r3,).
El vector Existencia E=(9 5 8 9)
P0 tiene un maximo de 3 unidades de r0, 2 unidades de r1, 1 unidad de r2, 1 unidad de r3.
P1 tiene un maximo de 2 unidades de r0, 1 unidades de r1, 3 unidad de r2, 3 unidad de r3.
P2 tiene un maximo de 3 unidades de r0, 1 unidades de r1, 3 unidad de r2, 3 unidad de r3.
P3 tiene un máximo de 4 unidades de r0, 2 unidades de r1, 1 unidad de r2, 2 unidad de r3.
P4 tiene un máximo de 3 unidades de r0, 3 unidades de r1, 2 unidad de r2, 5 unidad de r3.
-8-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
2 0 0 1 1 2
A= 0 1 0 M= 1 0 0 E= [2 3 2] D= [1 0 2]
0 2 0 0 0 0
-9-
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
Objetivos
Ejercicios
1. Dado el siguiente Grafo de precedencia y los siguientes tirmpos de irrupción de cada Si.
Se utiliza el algoritmo de planificación de CPU FCFS.
Tiempo de irrupcion
S1 3
S2 2
S3 1,5
S4 6
S5 3
S6 2
S7 5
S1
S2 S3 S4
S5 S6
S7
S8
se solicita:
a) Graficar la cola de listos y Bloqueados al finalizar cada Si, si se utilizan las sentencias
FORK/JOIN para modelizar el grafo..
El tiempo que demanda al SO ejecutar una instrucción fork o join es 0,5 microsegundos.
Suponemos también que los procesos que no pueden ejecutarse concurrentemente se
bloquean hasta que ocurra el suceso que esperan.
- 10 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
2.1
1 8
9
2 3
1
0 1
4
4
1
1 2
1
5
6 1
3
1
5
7
1
6
- 11 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
2.2 S
0
S S S
1 2 3
S
S
4 13
S
S 6
5
S S S
7 8 9
S
10
S
11
S
12
S
14
- 12 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
Objetivos
Ejercicios
1. El gestor de memoria que utiliza una estrategia de particiones de tamaño variable con
bloques de 600 bytes, 400 bytes, 1000 bytes, 2200 bytes, 1600 bytes, y 1050 bytes.
a) ¿Qué bloque se seleccionará para satisfacer una solicitud de 1603 bytes utilizando una
política Best-Fit?
b) Ídem utilizando el Worst-fit
c) Suponiendo que la lista esta ordenada como aparece en el enunciado del problema, ¿
qué bloque se seleccionará para satisfacer una solicitud de 1603 bytes utilizando la
política Best-fit?
TR TA TI TAM(KB)
1 0 5 15 Los siguientes son los tamaños establecidos para los
2 0 4 20 trabajos que se ejecutan normalmente en el centro de
3 0 10 12 cómputos:
4 1 3 5
5 2 2 3 SISTEMA OPERATIVO 32K
6 3 10 70 TRABAJOS MUY PEQUEÑOS 6K
7 4 5 25 TRABAJOS PROMEDIOS 20K
TRABAJOS MUY GRANDES 70K
8 5 5 10
c). Indique para ambos puntos (a y b) Cuanta memoria se desperdicia y que tipo de
Fragmentación ocurre.
- 13 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
4. Dada la siguiente Tabla: Los siguientes son los tamaños establecidos para los
trabajos que se ejecutan normalmente en el centro de
TR TA TI TAM(KB) cómputos:
1 0 5 15
2 0 4 20 SISTEMA OPERATIVO 32K
3 0 10 12 TRABAJOS MUY PEQUEÑOS 6K
4 0 3 5 TRABAJOS PROMEDIOS 20K
5 0 2 3 TRABAJOS MUY GRANDES 70K
6 0 10 70
7 0 5 25
8 0 5 10
c). Indique para ambos puntos (a y b) Cuanta memoria se desperdicia y que tipo de
Fragmentación ocurre.
TR TA TI TAM(KB)
1 0 5 20 Los siguientes son los tamaños establecidos para los
2 0 4 5 trabajos que se ejecutan normalmente en el centro de
3 0 10 14 cómputos:
4 0 3 25
5 0 2 3 SISTEMA OPERATIVO 32K
6 0 10 30 TRABAJOS MUY PEQUEÑOS 10K
7 0 5 25 TRABAJOS PROMEDIOS 25K
TRABAJOS MUY GRANDES 70K
8 0 5 70
c). Indique para ambos puntos (a y b) Cuanta memoria se desperdicia y que tipo de
Fragmentación ocurre.
a). Si una referencia a memoria lleva 1,2 microsegundos, ¿Cuánto durara una referencia a
memoria paginada?
- 14 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
9. Para un formato de direcciones de P=4, y D=4 se dispone del siguiente mapa de memoria:
x
x
.
x .
x .
.
15
10. El Sistema Operativo OCM trabaja un esquema de memoria virtual con paginación.
Actualmente el HW esta Soportado por 64MB de Memoria Ram. El tamaño de cada pagina
es de 256KB. Para Mejorar el Rendimiento de la Memoria virtual se cuenta con un Buffer
de traducción de direcciones adelantada que posee 512Kb. El tiempo de acceso a este
Buffer es bajo, siendo el mismo la mitad del tiempo de acceso a memoria donde el mismo
es de 98 Milisegundos. El porcentaje de aciertos sobre el buffer es del 72%...del resto el
15% se produce fallo de Pagina en ese caso el tiempo de servicio de fallo de pagina es 3.4
Microsegundos.
- 15 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
TR TA TI TAM(MB)
1 0 2 3
2 2 5 7
3 3 10 10
4 6 4 2
5 7 7 17
Se pide:
a) Determinar la cantidad de Paginas que pueden haber en el sistema
b) Determinar la cantidad de bits que tiene el registro de dirección
c) determinar la cantidad de bits del desplazamiento
d) determinar la cantidad de bits de la pagina
e) determinar cuanta memoria puede diseccionarse.
f) Hallar el Tiempo efectivo de acceso a memoria. Dejar expresada la formula que aplica.
g) Suponiendo que la memoria se encuentra inicialmente vacía. Armar la tabla de páginas
para cada proceso que es cargado en memoria. La paginas siempre se asignan
empezando desde el marco 0 en adelante.
h) Mencionar si se produce algún tipo de fragmentación y cuanto se produce.
i) Realizar el Diagrama de Gantt y hallar el tiempo de Retorno y espera Promedio.
11. Se tiene un esquema de memoria virtual que trabaja con paginación bajo demanda. Según
las siguientes mediciones se sabe que:
14. Se tiene un esquema de Memoria Virtual Paginada el cual trabaja con direcciones de 16
bits, siendo el tamaño de cada pagina 1 KB.
En un tiempo t la CPU genera la dirección relativa 1502.
Responder:
a. Cuantos Bits se necesitan para el desplazamiento?
b. Cuantos Bits se precisan para el Nº de página.
c. Cual es la cantidad de página posibles de direccionar?
- 16 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
página marco
000000 000100
000001 000111
000010 000101
000011 000001
000100 000010
000101 000011
15. Un proceso que tiene asignados 4 marcos de página. El estado de su tabla es el siguiente:
4, 0, 0, 0, 2, 4, 2, 1, 0, 3, 2
16. Suponga que la tabla de páginas para el proceso actual se parece a la de la figura. Todos
los números son decimales, la numeración comienza en todos los casos desde cero, y
todas las direcciones de memoria son direcciones en bytes. El tamaño de página es de
1024 bytes.
Número de
Número de Bit de validez Bit de Bit de
marco de
página virtual o presencia referencia modificación
página
0 0 1 0 4
1 1 1 1 7
2 1 0 0 1
3 1 0 0 2
4 0 0 0 -
5 1 0 1 0
¿Qué direcciones físicas, si existen, corresponderán con cada una de las siguientes
direcciones virtuales? (no intente manejar ninguna falta de página, si las hubiese).
a) 999
b) 2121
c) 5400
- 17 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
17. Una computadora tiene cuatro marcos para páginas. El tiempo de carga, el tiempo del
último acceso y los bits R y M para cada pagina aparecen en la tabla siguientes (los
tiempos se miden mediante las marcas de reloj).
19. Un computador tiene una cache, una memoria principal y un disco usado para memoria
virtual. Si una palabra referenciada esta en la cache, se necesitan 20ns para acceder a
ella. Si esta en la memoria principal pero no en la cache, se necesitan 60 ns para cargarla
en la cache, y entonces la referencia comienza de nuevo. Si la palabra no esta en la
memoria principal, se necesitan 12ms para cargar la palabra desde el disco, seguidos de
60 ns para copiarla en la cache, y entonces la referencia comienza de nuevo. La tasa de
aciertos en la cache es de 0.9 y la tasa de aciertos en la memoria principal es de 0.6. ¿Cuál
es el tiempo medio, en nanosegundos, necesario para acceder a una palabra referenciada
en este sistema?
20. Sea un sistema de memoria virtual paginada con direcciones lógicas de 32 bits que
proporcionan un espacio virtual de 220 páginas y con una memoria física de 32 MBytes.
¿Cuál será el tamaño de la página? ¿Cuál será el tamaño máximo de la tabla de páginas
si cada entrada de la misma ocupa 32 bits?
21. Si un computador trabaja con direcciones de 16 bits, y posee páginas de tamaño 2Kbytes
a) ¿Qué tamaño de memoria virtual podremos direccionar?
b) ¿Cuántas páginas tendrá la memoria Virtual?
c) ¿Cuál será el tamaño del marco de página?
d) ¿Suponiendo que la memoria física es de 8Kbytes, cuántos marcos tendremos?
e) ¿Cuántos bits de la dirección de memoria virtual se utilizan para seleccionar entradas
en la tabla de páginas si esta es de único nivel?
f) ¿Para que emplearemos los bits restantes de la dirección de memoria virtual?
g) ¿Cuántas entradas tendrá la tabla de páginas?
22. Un computador tiene una cache, una memoria principal y un disco utilizado como memoria
virtual. Si una palabra está en la cache se requieren A ns para acceder a ella, si está en la
memoria principal B ns para cargarla en la cache y empezar de nuevo. Si la palabra no está
en memoria principal se requieren C ns para traerla del disco, seguidos de B ns para traerla
a la cache. Si la tas de aciertos de la cache es de (n-1)/n y la memoria principal es (m-1)/m.
¿Cuál es tiempo promedio de acceso?
23. Para cada una de las técnicas de gestión de memoria que aparecen en la tabla, señala con
una cruz si tiene la característica indicada en la columna:
- 18 -
Sistemas Operativos-Cuadernillo de Trabajos Prácticos-
Año 2005
- 19 -