Articulo de referencia

Política de recursos de pila

La política de asignación de recursos de pila (SRP) es una política de asignación de recursos utilizada en computación en tiempo real , que se emplea para acceder a recursos com...

La política de asignación de recursos de pila (SRP) es una política de asignación de recursos utilizada en computación en tiempo real , que se emplea para acceder a recursos compartidos al utilizar la planificación de fecha límite más temprana primero . Fue definida por TP Baker. [ 1 ] La SRP no es lo mismo que el protocolo de techo de prioridad, que se utiliza para tareas de prioridad fija (FP).

Función

A cada tarea se le asigna un nivel de preempción basado en la siguiente fórmula, dondeD(Ti){\displaystyle D(T_{i})}indica la fecha límite de la tareai{\displaystyle i}yπi(Ti){\displaystyle \pi _{i}(T_{i})}indica el nivel de prioridad de la tarea i:

D(Ti)<D(Tj)πi(Ti)>πi(Tj){\displaystyle D(T_{i})<D(T_{j})\iff \pi _{i}(T_{i})>\pi _{i}(T_{j})}

Cada recurso R tiene un límite máximo actual.doR(VR){\displaystyle C_{R}(V_{R})}que representa el máximo de los niveles de preempción de las tareas que pueden bloquearse, cuando hayV{\displaystyle V}unidades deR{\displaystyle R}disponible yμR(J){\displaystyle \mu _{R}(J)}es el máximo de unidades deR{\displaystyle R}esoTi{\displaystyle T_{i}}puede requerirse en cualquier momento.doR(VR){\displaystyle C_{R}(V_{R})}se asigna de la siguiente manera:

doR(VR)=metroaincógnita({0}{π(J)|VR<μR(J)}){\displaystyle C_{R}(V_{R})=max(\{0\}\cup \{\pi (J)|V_{R}<\mu _{R}(J)\})}

También existe un límite máximo del sistema.π{\displaystyle \pi '}que es el máximo de todos los límites actuales de los recursos.

π=metroaincógnita({doR(i)|i=1,...,metro}{π(Jdo)}){\displaystyle \pi '=max(\{C_{R}(i)|i=1,...,m\}\cup \{\pi (J_{c})\})}

Cualquier tareaTi{\displaystyle T_{i}}Quien desee tomar el control del sistema debe primero satisfacer la siguiente restricción:

π<PAGi(Ti){\displaystyle \pi '<P_{i}(T_{i})}

Esto se puede perfeccionar para la implementación del sistema operativo (como en MarteOS ) eliminando los recursos de unidades múltiples y definiendo la política de recursos de la pila de la siguiente manera:

  • A todas las tareas se les asigna un nivel de prioridad para preservar su orden relativo al bloquear recursos. A las tareas con el plazo de entrega relativo más bajo se les asigna el nivel de prioridad más alto.
  • Cada recurso compartido tiene asociado un nivel máximo de prioridad, que es el nivel máximo de expropiación de todas las tareas que acceden a este objeto protegido.
  • El límite del sistema, en cualquier instante, es la prioridad máxima activa de todas las tareas que se están ejecutando actualmente dentro del sistema.
  • Una tarea solo puede interrumpir el sistema cuando su fecha límite absoluta es menor que la de la tarea que se está ejecutando actualmente y su nivel de interrupción es superior al límite máximo actual del sistema.

Pertinencia

El libro de 2011 Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications de Giorgio C. Buttazzo incluyó una sección dedicada a revisar SRP del trabajo de Baker de 1991. [ 2 ] [ 3 ]

Referencias

  1. Baker, TP (1990). "Una política de asignación de recursos basada en pila para procesos en tiempo real". Simposio de Sistemas en Tiempo Real de la IEEE : 191–200 .
  2. Sistemas informáticos de tiempo real estricto: algoritmos de planificación predecibles y aplicaciones , Giorgio C. Buttazzo, 2011
  3. TP Baker, "Planificación basada en pila de procesos en tiempo real", The Real-Time Systems Journal 3,1 (marzo de 1991) 67-100