Professional Documents
Culture Documents
Responder
a. Cuáles son las arquitecturas típicas de un SO. Explicar
b. Por qué cree que el test respuesta rápida máxima (tiempo de respuesta) es mejor
que el test factor de utilización
Porque los test basados en el factor de utilización no son exactos y no son aplicables a procesos
más complejos donde se tengan recursos compartidos. Además, ofrecen una condición suficiente
pero no necesaria por lo que ante el incumplimiento no nos proporcionan mayor información. El
test de tiempo de respuesta considera el peor de los escenarios para calcular el tiempo máximo de
respuesta considerando que tareas de mayor prioridad interferirán en la ejecución de la primera
tarea.
Es una manera fácil de realizar tareas periódicas sin necesidad de concurrencia, ya que se utiliza
una lógica secuencial sin soporte del sistema operativo. El sistema es planificable desde su
construcción, pero es esta construcción la que se hace compleja ante la existencia de tareas no
rutinarias y ante el constante crecimiento del sistema.
En la planificación por prioridades realiza las tareas como procesos concurrentes totalmente
interrumpibles, por lo que un proceso presenta estados, y suponiendo que no hay recursos
compartidos, un proceso de mayor prioridad siempre interrumpirá y desplazará a uno de menor
prioridad. Esto hace que su organización sea más sencilla para el programador y que presente un
mejor comportamiento en sistema de tiempo real crítico, sobre todo en casos con sobrecarga.
Tarea T C P Ta
A 20 4 1 1
B 15 2 2 3
C 10 2 3 4
Teniendo en cuenta que las tareas A y C utilizan un recurso (A utiliza el recurso durante los 2
ut intermedios, y C utiliza el recurso durante su última ut)
1 2 3 4 5 6 7 8 9 10
A x x
C x
En este caso no existe un segundo recurso compartido, por lo que esta representación es idéntica
a usar herencia de prioridad. La tarea B se ve bloqueada por la tarea A durante 1 ut.
1 2 3 4 5 6 7 8 9 10
A x x
C x
En este caso la tarea A adquiere la máxima prioridad mientras use el recurso compartido y luego
sigue un comportamiento dominado solo por la prioridad fija. La tarea B se ve bloqueada por la
tarea A durante 1 ut.
Tarea P T C
A 4 6 1
B 3 8 3
C 2 8 2
D 1 12 2
Para utilizar este test debemos calcular los tiempos de respuesta de cada tarea y ver que sean
menores a sus plazos respectivos:
Tarea A:
y 1<6 Nadie tiene mayor prioridad por lo que ahí acaba el proceso de verificación.
Tarea B:
⌈ ⌉
⌈ ⌉
y 4<8 Nadie tiene mayor prioridad por lo que ahí acaba el proceso de verificación.
Tarea C:
⌈ ⌉ ⌈ ⌉
⌈ ⌉ ⌈ ⌉
y 6<8 Nadie tiene mayor prioridad por lo que ahí acaba el proceso de verificación.
Tarea D:
⌈ ⌉ ⌈ ⌉ ⌈ ⌉
⌈ ⌉ ⌈ ⌉ ⌈ ⌉
⌈ ⌉ ⌈ ⌉ ⌈ ⌉
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
A
⌈ ⌉ ⌈ ⌉ ⌈ ⌉
⌈ ⌉ ⌈ ⌉ ⌈ ⌉
Teniendo en cuenta que se está usando la planificación por prioridades no es posible realizar el
cronograma, pero si se utilizara ejecutivo cíclico si sería posible realizar estas tareas cumpliendo
los plazos.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
A
Se ve como claramente si se pueden realizar todas las tareas si se organizan de forma adecuada
(Sin incluir prioridades fijas).
Tarea T C
A 4 0.5
B 4 2
C 8 1
D 16 4
A simple vista si las tareas no son interrumpibles, es imposible realizarlas, ya que la tarea D
requiere 4 ut y el periodo de A es de 4ut, por lo que no se podrían realizar ambas tareas.
Observación:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
A
Como se puede ver, si la tarea D fuera posible dividirla en 4 tareas independientes, sería posible
planificar las tareas mediante el método de ejecutivo cíclico.