Nota: questa domanda menziona esplicitamente due RTOS, ma è più generica e può probabilmente essere risolta da chiunque abbia scritto codice C per RTOS incorporati prima, e il suo software è stato eseguito direttamente su MCU.
Sono interessato a saperne di più su RTOS incorporati e applicazioni di scrittura per loro. Attualmente sto esaminando Embox e RIOT perché sono open source, moderni, attivi e sembrano avere un'ottima documentazione. Il mio obiettivo ha due fasi: la fase 1 è capire come compilare e flashare questi sistemi operativi su un MCU (probabilmente AVR o ARM). La fase 2 è quindi scrivere un semplice programma C (fondamentalmente un demone senza testa), che si evolverebbe nel tempo come una "app per hobby". Vorrei quindi eseguire il flash / distribuire questo programma sullo stesso MCU, implementando quindi con successo un appstack costituito da Embox / RIOT e la mia app su di esso.
Prima di percorrere strade che alla fine portano a vicoli ciechi, mi sono imbattuto in questo l'articolo che fa un buon lavoro nel spiegare perché le app in tempo reale, scritte in C / assemblatore e trasmesse agli MCU, non veramente abbiano bisogno di RTOS al di sotto di esse.
Quindi ora sono davvero confuso e sto mettendo in discussione alcune delle mie conoscenze fondamentali della teoria dell'informatica. Credo che sto provando a decidere se utilizzare o meno Embox / RIOT, in primo luogo:
- Mantieni il corso e utilizza uno "stack di app" sulla MCU di entrambe le app OS +; o
- Ascolta l'avvertimento dell'articolo e vai con un MCU che esegue la mia app "bare metal"
Ovviamente, il primo è più lavoro, quindi è meglio che ci sia una buona ragione / ricompensa per percorrere quella strada. Quindi chiedo: quali sono i reali vantaggi queste offerte RTOS integrate (e simili) agli sviluppatori di app MCU / C? Quali caratteristiche specifiche potrebbero beneficiare della mia app C (forse non reinventando la ruota?) Utilizzando un RTOS? Cosa si perde perdendo l'RTOS e andando in bare metal?
Sto chiedendo esempi concreti qui, non il clamore mediatico che si ottiene quando si va alla voce wikipedia per RTOSes; -)