5 Repos
Core system software designed to manage hardware abstraction, system calls, and process scheduling on bare-metal microcontroller hardware.
Distinct from OS Abstraction Layers: Unlike OS abstraction layers, this is the full core kernel implementation for embedded devices.
Explore 5 awesome GitHub repositories matching operating systems & systems programming · Microcontroller Kernels. Refine with filters or upvote what's useful.
Tock is a secure embedded operating system and microcontroller kernel designed to isolate untrusted applications and drivers. It functions as a memory-safe process isolator that uses a combination of hardware memory protection and language-level type safety to execute mutually distrustful applications on bare metal. The system distinguishes itself through a hardware abstraction layer that decouples high-level components from specific microcontroller implementations using standardized traits. It further employs a virtualization layer to allow multiple independent software components to share a
Implements a core kernel for embedded devices that manages hardware abstraction and process scheduling on bare metal.
TencentOS-tiny ist ein Echtzeitbetriebssystem für Mikrocontroller, das für die Verwaltung von Task-Scheduling und Ressourcenallokation über verschiedene Hardware-Module hinweg entwickelt wurde. Es fungiert als Embedded-Plattform und modularer Kernel für die Bereitstellung von Echtzeit-Software auf unterschiedlichen Chip-Architekturen. Das System enthält integrierte Protokoll-Stacks für eine sichere Datenübertragung und Konnektivität zwischen IoT-Endgeräten und Cloud-Plattformen. Das Projekt umfasst Echtzeit-Task-Management, Embedded-Software-Deployment und Mikrocontroller-Administration. Es nutzt eine modulare Microkernel-Architektur und eine Hardware-Abstraktionsschicht, um den Kernel von spezifischen Chipsätzen zu entkoppeln.
Functions as a core microcontroller kernel for deploying and executing real-time software.
RIOT ist ein Echtzeitbetriebssystem, das für ressourcenbeschränkte Mikrocontroller entwickelt wurde. Es bietet einen Kernel zur Verwaltung von Hardware-Peripheriegeräten, Speicher und Multitasking auf eingebetteten Geräten und verfügt über eine Hardware-Abstraktionsschicht für Mikrocontroller, um den Hardwarezugriff über verschiedene Chipsätze hinweg zu vereinheitlichen. Das System verwendet einen präemptiven, tickless Task-Scheduler mit prioritätsbasierter Ausführung, um die Energieeffizienz in batteriebetriebener Hardware zu maximieren. Es enthält zudem ein eingebettetes Sicherheitsframework, das aus kryptografischen APIs und sicheren Transportprotokollen besteht, um authentifizierte Over-the-Air-Firmware-Updates zu erleichtern. Das Projekt implementiert zudem einen modularen Netzwerk-Stack mit Unterstützung für IPv6, IPv4 und Ethernet für die Gerätekonnektivität. Es deckt die Steuerung von Peripheriehardware für Sensoren und Aktoren, flexibles Gerätespeichermanagement sowie die Ausführung portabler Binärdateien und Skripte über spezialisierte Runtimes ab.
Provides a complete core kernel designed specifically for hardware abstraction and process scheduling on resource-constrained microcontrollers.
FreeRTOS-Kernel ist ein Echtzeitbetriebssystem-Kernel für Mikrocontroller. Er bietet eine Multitasking-Umgebung durch einen prioritätsbasierten Task-Scheduler, einen eingebetteten Speicher-Manager und ein Framework für Inter-Prozess-Kommunikation, um sicherzustellen, dass zeitkritische Aufgaben ihre Deadlines einhalten. Der Kernel enthält eine Software-Timer-Engine zur Ausführung von Funktionen in vordefinierten Intervallen oder nach festgelegten Verzögerungen. Er unterstützt ein minimales Modell gleichzeitiger Aufgaben und leichtgewichtige Co-Routine-Ausführung für Systeme mit begrenzten Speicherressourcen. Das Projekt deckt ein breites Spektrum an eingebetteter Ressourcenverwaltung ab, einschließlich Inter-Task-Kommunikation via Queues und Event-Gruppen sowie deterministischer Systemressourcenplanung. Die Projektintegration wird durch Build-System-Integration mittels Fetch-Tools oder Versionskontroll-Submodulen verwaltet.
Acts as a full core kernel implementation for managing hardware abstraction and process scheduling on microcontrollers.
NuttX ist ein POSIX-konformes Echtzeitbetriebssystem, das für ressourcenbeschränkte eingebettete Umgebungen entwickelt wurde. Es fungiert als skalierbares Mikrocontroller-Betriebssystem, das eine Unix-ähnliche Umgebung für die Verwaltung von Hardware und die Ausführung von Anwendungen über Architekturen von 8-Bit bis 64-Bit hinweg bietet. Das System stellt eine hohe Software-Portabilität sicher, indem es einen Kernel implementiert, der POSIX- und ANSI-Standards folgt. Dies ermöglicht es Entwicklern, portable eingebettete Anwendungen unter Verwendung standardisierter API-Aufrufe über diverse Hardware-Architekturen hinweg zu erstellen. Das Projekt umfasst eine modulare Kernel-Architektur und eine Hardware-Abstraktionsschicht, um das System von spezifischen Chip-Peripheriegeräten zu entkoppeln. Es nutzt prioritätsbasiertes präemptives Scheduling für deterministische Antworten und bietet Tools zur Simulation von Hardwareumgebungen für das Testen von Firmware ohne physische Boards.
Provides a scalable microcontroller kernel with a Unix-like environment for managing hardware and applications.