¿Es posible establecer prioridades de interrupción para interrupciones de software en ARM?

-1

¿Es posible, por ejemplo, dar a SWI 0x1 una prioridad de 15 y SWI 0x2 una prioridad de 16? Si es así, ¿es útil? Entiendo por qué dar a las interrupciones de hardware una prioridad diferente es útil, pero también es útil para las interrupciones de software?

    
pregunta gilianzz

1 respuesta

5

La prioridad de una interrupción de software con respecto a otra interrupción de software no tiene sentido: una interrupción de software es una instrucción, por lo tanto, se ejecuta cuando se encuentra en el flujo de instrucciones. Las instrucciones subsiguientes pueden depender de su resultado, por lo que suspender el SWI a un momento posterior no es una buena idea.

Una interrupción de hardware es algo que ocurre de forma asíncrona con el flujo de instrucciones, por lo tanto, puede posponerse cuando lo que está haciendo el flujo de instrucciones actual es más temporal (o utiliza un recurso que no se puede compartir).

    
respondido por el Wouter van Ooijen

Lea otras preguntas en las etiquetas