Freertos ottiene classe
[Michael Becker] ha utilizzato Freertos per circa sette anni. Ha scelto di iniziare ad aggiungere alcune caratteristiche e ha un wrapper C ++ estremamente affascinante per il sistema operativo disponibile.
I sistemi operativi in tempo reale (RTOS) aggiungono prestazioni per microcontrollori a filo singolo per eseguire diversi programmi allo stesso tempo senza mettere in pericolo la sanità mentale del firmware. Questo lavoro aggiunge C ++ al resto dei benefici di Freertos. Comprendiamo che le persone hanno forti sentimenti un metodo o l’altro sull’utilizzo di C ++ in sistemi embedded. Tuttavia, come illustrano i 24 lavori Demo, è possibile.
Una buona cosa della biblioteca è che è accuratamente documentata. Neanche un gran numero di esempi non feriti. La biblioteca è pulita con poco meno di 30 classi. Sembra aver resistito allo schema di avere lezioni per tutto. Capisci il tipo di libreria che intendiamo. Per produrre un oggetto intero, sviluppare un elemento di configurazione da passare al generatore di fabbrica di classe che …. Questa biblioteca non intrattengono alcun tipo di di ciò. Ha astrazioni facili attorno alle fili e ai timer, alle code, così come i mutassi.
Una cosa che abbiamo scoperto un po ‘inaspettato era la mancanza di una “applicazione base”. Una funzione tipica delle librerie C ++ è quella di avere un elemento applicativo fondamentale specializzato per produrre la tua applicazione. Sembra che gli involucri, abbiamo ancora bisogno di utilizzare una funzione primaria dall’aspetto abbastanza standard e offrire alcuni callback di base e cose. Questo potrebbe essere rapidamente messo in una classe. Naturalmente, la biblioteca è giovane, così probabilmente questo sarà qualcosa rivolto in una versione futura.
Freerttos è estremamente flessibile e corse su un grande numero di processori e schede. Allo stesso modo è relativamente semplice da portare a un nuovo hardware. Può anche anche coesistere con una grande quantità di middleware come il sistema operativo mongoose, la Biblioteca HAL STM32, oltre a molto altro.