¿Estado inactivo en RTOS, estado de reposo o frecuencia más baja?

2

En los sistemas en tiempo real que usan un RTOS, ¿cómo manejaría el RTOS un período de inactividad? ¿Ejecutaría instrucciones nop en la frecuencia más baja admitida por un procesador con capacidad de escalado de voltaje dinámico? o se convertiría en un estado de sueño? ¿Alguien puede referirme a implementaciones prácticas reales. Gracias

    
pregunta The Byzantine

3 respuestas

2

Dependo completamente de los requisitos del sistema. Los sistemas que necesitan operar a muy baja potencia podrían ponerse en suspensión hasta la siguiente interrupción. Otros sistemas pueden tener mucha potencia pero necesitan ser muy confiables ... estos podrían estar haciendo autopruebas en la tarea en segundo plano.

    
respondido por el Joe Hass
1

Lo más probable es que vaya a uno de los modos de suspensión del dispositivo.

Es muy rápido (a menudo se trata de una sola instrucción) y está diseñado para hacer exactamente eso: completar períodos inactivos con inactividad;) Esto, a su vez, ayuda a ahorrar energía.

Sin embargo, si el poder no es una preocupación para usted, simplemente puede "detener" en un bucle de sondeo hasta que se produzca una condición de continuación .

Reducir el tiempo del sistema parece ser una "solución intermedia", no tiene mucho sentido para mí.

    
respondido por el Dzarda
1

Usted preguntó acerca de una implementación práctica. Aquí se encuentran las QNX definiciones de administración de energía. Es altamente personalizable.

  

Definiciones generales del modo de energía de la CPU

     

Nuestra política de energía de muestra se basa en cuatro modos de energía generales   Definiciones: activo / ejecutar, inactivo, en espera y apagado. Porque el QNX   El marco de administración de energía es completamente personalizable, estos poderes   las definiciones de modo se usan solo por conveniencia. No existen   Suposiciones o dependencias en estas definiciones. La CPU general   Los modos de potencia se pueden definir de la siguiente manera:

     

Activo / Ejecutar: el sistema ejecuta aplicaciones de forma activa. Algunos   Los periféricos o dispositivos pueden estar inactivos o apagados.

     

Inactivo: el sistema no está ejecutando aplicaciones. La CPU está detenida. El código es todo   o parcialmente residente en la memoria.

     

En espera: el sistema no está ejecutando aplicaciones. La CPU está detenida. El código es   NO residente en la memoria.

     

Apagado: estado de potencia mínima o cero. CPU, memoria y dispositivos son   todos apagados.

     

Estas definiciones se usan solo como una guía. Múltiples subconjuntos pueden   definirse para cada estado (es decir, inactivo1, inactivo2, etc.). Además, no todos   estos modos de alimentación de la CPU pueden ser necesarios o incluso posibles para un determinado   placa o CPU.

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas