FreeRTOS
FreeRTOS | ||||
---|---|---|---|---|
Ontwikkelaar(s) | Amazon Web Services, Real Time Engineers Ltd. | |||
OS-familie | Realtimebesturingssysteem | |||
Bronmodel | Open source | |||
Uitgebracht | 2003 (20 jaar) | |||
Recentste uitgave | 202212.01 (4 maart 2023),[1] 202210.01-LTS (18 november 2022)[2] | |||
Programmeertaal | C | |||
Licentie(s) | MIT-licentie | |||
Status | Actief | |||
Versiebeheer | Officiële broncode | |||
Website | (en) Offiële projectpagina | |||
|
FreeRTOS is een realtime-besturingssysteemkernel voor embedded apparaten ontwikkeld door Richard Barry rond 2003. Het is in 2022 beschikbaar voor zeker 35 microcontrollerplatforms. Het wordt gedistribueerd onder de MIT-licentie. Het is in 2017 overgenomen door Amazon.[3]
FreeRTOS is ontworpen om klein en eenvoudig te zijn.[4] Het is meestal geschreven in de programmeertaal C om het gemakkelijk over te zetten en te onderhouden. Het bevat ook enkele assembleertaalfuncties, meestal voor architectuurspecifieke scheduler-routines.
FreeRTOS biedt mogelijkheden voor meerdere threads of taken, mutexen, semaforen en softwaretimers. Er is ook een tickless-modus beschikbaar voor toepassingen met een laag energieverbruik. FreeRTOS-applicaties kunnen statisch worden toegewezen, maar objecten kunnen ook dynamisch worden toegewezen met vijf verschillende schema's voor geheugenbeheer. RTOS heeft doorgaans niet de geavanceerde functies die worden aangetroffen in besturingssystemen zoals Linux en Microsoft Windows, zoals apparaatstuurprogramma's, geavanceerd geheugenbeheer en gebruikersaccounts. De nadruk ligt op compactheid en snelheid van uitvoering.
Belangrijkste kenmerken
[bewerken | brontekst bewerken]- Kleine geheugengrootte, weinig overhead en snelle uitvoering.
- Tickless-modus voor toepassingen met laag energieverbruik.
- Bedoeld voor zowel hobbyisten als professionele ontwikkelaars die werken aan commerciële producten.
- Scheduler kan worden geconfigureerd voor zowel preventieve als coöperatieve multitasking.
- Ondersteuning voor coroutines
- Traceerondersteuning via generieke traceermacro's. Tools zoals Tracealyzer, een commerciële tool van FreeRTOS-partner Percepio, kunnen daardoor het runtime-gedrag van op FreeRTOS gebaseerde systemen vastleggen en visualiseren voor foutopsporing en verificatie. Dit omvat taakplanning en kernelaanroepen voor semafoor- en wachtrijbewerkingen.
Zie ook
[bewerken | brontekst bewerken]- ↑ FreeRTOSv202212.01 Latest (4 maart 2023). Geraadpleegd op 8 augustus 2023.
- ↑ 202210.01-LTS (November 2022) (18 november 2022). Geraadpleegd op 19 augustus 2023.
- ↑ (en) Pierce, Howdy, What is FreeRTOS and What is it Good For?. Contract Engineering, Product Design & Development Company - Cardinal Peak (16 december 2020). Gearchiveerd op 4 februari 2022. Geraadpleegd op 4 februari 2022.
- ↑ (en) Svec, Christopher, The Architecture of Open Source Applications (Volume 2): FreeRTOS. www.aosabook.org. Gearchiveerd op 25 januari 2022. Geraadpleegd op 4 februari 2022.
- Dit artikel of een eerdere versie ervan is een (gedeeltelijke) vertaling van het artikel FreeRTOS op de Engelstalige Wikipedia, dat onder de licentie Creative Commons Naamsvermelding/Gelijk delen valt. Zie de bewerkingsgeschiedenis aldaar.