El paquete Rowley Crossworks (incluye compilador, IDE, interfaz de depuración, etc.) también incluye algo llamado Crossworks Tasking Library (CTL). Desde su página web:
CrossWorks Tasking Library, conocida como CTL. CTL es una biblioteca de tareas sin royalties que proporciona una facilidad de sincronización y conmutación de tareas de prioridad múltiple. Además, la biblioteca también puede proporcionar soporte de temporizador e interrupción del manejo.
En general, entiendo la descripción de la parte de tareas de mis investigaciones en programadores de tareas (con la excepción de la sincronización ... ¿qué significa eso?). Sin embargo, el soporte de temporizador y manejo de interrupciones me ha lanzado completamente para un bucle. ¿No están esas cosas integradas en el entorno gcc (que crossworks usa por cierto)? ¿Eso significa que usan algún tipo de envoltorio para la sintaxis gcc:
ISR(PORTB_INT0_vect)
{
int_pin_handler();
}
Si es así, ¿qué ventaja ofrece poner eso en un kernel en lugar de simplemente escribir manualmente en los puertos apropiados, etc., como lo haría una programación realmente simple? Finalmente, ¿es común que los sistemas operativos pequeños (estoy pensando en FreeRTOS, VxWorks, no en los núcleos de Linux) hagan este tipo de cosas?
Gracias