Zephyr (besturingssysteem)

Uit Wikipedia, de vrije encyclopedie
Zephyr
Logo
Ontwikkelaar(s) Linux Foundation, Wind River Systems
OS-familie Realtimebesturingssysteem
Bronmodel Open source
Uitgebracht 17 februari 2016 (8 jaar)
Recentste uitgave 3.6.0 (23 februari 2024)[1] Bewerk dit op Wikidata
Programmeertaal C
Licentie(s) Apache Licentie v2.0
Website Officiële website
Portaal  Portaalicoon   Informatica

Zephyr is een klein open source real-time besturingssysteem (RTOS) voor embedded apparaten (met de nadruk op microcontrollers) dat meerdere architecturen ondersteunt.[2] Het is uitgebracht onder de Apache-licentie 2.0. Zephyr bevat een kernel en alle componenten en bibliotheken, apparaatstuurprogramma's, protocolstacks, bestandssystemen en firmware-updates die nodig zijn om volledige applicaties te ontwikkelen.[3]

Functies[bewerken | brontekst bewerken]

Zephyr is ontworpen om alle componenten te leveren die nodig zijn om applicaties voor beperkte apparaten of microcontrollers te ontwikkelen. Enkele eigenschappen van Zephyr zijn:

  • Een kleine kernel met één adresruimte, meerdere scheduling-algoritmen en ondersteuning voor geheugenbescherming.
  • Een flexibel configuratie- en bouwsysteem voor het definiëren van de vereiste bronnen en modules tijdens het compileren.
  • Ingebouwde ondersteuning voor verschillende protocol-stacks (IPv4 en IPv6, Constrained Application Protocol (CoAP), LwM2M, MQTT, 802.15.4, Thread, Bluetooth Low Energy, CAN)
  • Een virtuele bestandssysteeminterface met verschillende flash-bestandssystemen voor niet-vluchtige opslag (FATFS, LittleFS, NVS).
  • Mechanismen voor het beheer en de firmware van het apparaat.

Zephyr gebruikt Kconfig en devicetree als configuratiesystemen. Deze systemen zijn overgenomen van de Linux-kernel⁣, maar geïmplementeerd in de programmeertaal Python voor overdraagbaarheid naar non-Unix -besturingssystemen. Het RTOS-buildsysteem is gebaseerd op CMake, waarmee Zephyr-applicaties op Linux, macOS en Microsoft Windows kunnen worden gecompileerd.

Zie ook[bewerken | brontekst bewerken]