Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
EmbLinkRTOS development documentation
EmbLinkRTOS development documentation

Start here

  • User guide
    • Getting started
    • Choosing current APIs
    • Core concepts
    • Threads, periodic work and shutdown
    • Synchronization and notifications
    • Configuration and testing
    • Debugging and diagnosing failures
  • Project status and evidence
  • First application and migration guidance
  • EmbLinkRTOS Documentation

Reference and design

  • Current C API reference
    • API documentation audit
    • context.h
    • emb.h
    • fault.h
    • irq.h
    • kernel.h
    • mutex.h
    • notify.h
    • sched.h
    • sem.h
    • status.h
    • thread.h
    • time.h
    • trace.h
    • types.h
    • version.h
  • Requirement catalog
    • API requirements
    • ARCH-AVR requirements
    • HW requirements
    • KRN-CAP requirements
    • KRN-IPC requirements
    • KRN-IRQ requirements
    • KRN-NOTIF requirements
    • KRN-OBJ requirements
    • KRN-PART requirements
    • KRN-SYNC requirements
    • KRN-THR requirements
    • KRN-TIM requirements
    • KRN-WAIT requirements
    • KRN-WQ requirements
    • OBS requirements
    • PORT requirements
    • PORT-ABI requirements
    • SIM requirements
  • Architecture and decisions
    • 00 - Review of the v0.1 Specification
    • 01 - Vision and Principles
    • 02 - System Architecture
    • 03 - Kernel Architecture
    • 04 - Platform Architecture
    • 05 - Engineering System
    • 06 - Architecture Decision Records
    • 07 - Roadmap
    • 08 - Open Questions for Review
    • 09 - EmbCC Toolchain Profile
    • EmbLinkRTOS Architecture, v0.2
  • Subsystem specifications
    • Specification amendments recorded during M1
    • SPEC-001 - Public API Conventions
    • SPEC-002 - Interrupt, Exception, and Critical-Section Model
    • SPEC-003 - Time Source, Timeouts, and Software Timers
    • SPEC-004 - Wait and Wake Protocol
    • SPEC-005 - Synchronization: Mutexes, Semaphores, Event Flags, Condition Variables, Barriers, Spinlocks
    • SPEC-006 - Notifications, Notification Binding, and Work Queues
    • SPEC-007 - Inter-Thread Communication: Message Queues, Pipes, Buffer Pools, Ports
    • SPEC-008 - Thread Lifecycle
    • SPEC-009 - Kernel Objects, Capabilities, and Storage Generation
    • SPEC-010 - Partitions and the System Call Boundary
    • SPEC-011 - Architecture Port Contract
    • SPEC-012 - ATmega328P Port (arch/avr) and the arduino_uno Board
    • SPEC-013 - Native Port (arch/native)
    • SPEC-014 - Hardware Description Schema v0 and the Generator
    • SPEC-015 - Observability Formats: Log Records, Trace, Crash Record, Debug Descriptor, Monitors
  • Normative requirement sources
    • API - Public API Conventions
    • ARCH-AVR - ATmega328P Port
    • HW - Hardware Description and Generator
    • KRN-CAP - Handles and Capabilities
    • KRN-IPC - Inter-Thread Communication
    • KRN-IRQ - Interrupts, Exceptions, Critical Sections, Scheduler Lock
    • KRN-NOTIF - Notifications and Notification Binding
    • KRN-OBJ - Kernel Objects, Lifecycle, and Storage
    • KRN-PART - Partitions and the System Call Boundary
    • KRN-SYNC - Synchronization
    • KRN-THR - Threads
    • KRN-TIM - Kernel Clock, Timeouts, Sleep, Software Timers
    • KRN-WAIT - Wait and Wake Protocol
    • KRN-WQ - Work Queues and Delayed Work
    • OBS - Observability
    • PORT - Compiler Portability and the Architecture Port Contract
    • Requirements
    • SIM - Simulation and the Native Port
  • Architecture ports
    • Port: AVR (ATmega328P, arch/avr)
    • Cortex-M port
    • Port: native (arch/native)
    • RISC-V port
  • Research and positioning
    • R-001 - RTOS Mechanism Comparison
    • R-002 - Market, Certification, Regulation, and Positioning Facts
    • R-003 - Differentiation: Why Someone Would Choose EmbLinkRTOS
    • Research records
    • Research note: ChibiOS (RT and NIL) and Apache NuttX
    • Research note: Embassy and RIOT
    • Research note: FreeRTOS kernel
    • Research note: Hubris and Tock
    • Research note: RTEMS SuperCore
    • Research note: Eclipse ThreadX
    • Research note: Micrium uC/OS-III
    • Research note: Zephyr RTOS kernel
  • Engineering and documentation
    • Building and maintaining documentation
    • How other RTOS projects build documentation
    • Timing bounds and verification evidence
    • Repository workflow and required checks
    • Changelog and release checklist
    • M2 implementation work order
    • M2-01: Native timeout replay investigation
    • M2-01: Timer-delivery correction and regression evidence
    • Capturing, replaying and reducing differential failures
    • M2-01: Bounded historical seed-5 triage
    • M2-02: Contract review before implementation
    • EmbCC: Ten legacy limitations reviewed
    • EmbCC storage-layout marker correction
    • EmbCC kernel on the Linux native port
  • EmbLinkRTOS Coding Standard
Back to top
View this page

Research and positioningΒΆ

  • R-001 - RTOS Mechanism Comparison
  • R-002 - Market, Certification, Regulation, and Positioning Facts
  • R-003 - Differentiation: Why Someone Would Choose EmbLinkRTOS
  • Research records
  • Research note: ChibiOS (RT and NIL) and Apache NuttX
  • Research note: Embassy and RIOT
  • Research note: FreeRTOS kernel
  • Research note: Hubris and Tock
  • Research note: RTEMS SuperCore
  • Research note: Eclipse ThreadX
  • Research note: Micrium uC/OS-III
  • Research note: Zephyr RTOS kernel
Next
R-001 - RTOS Mechanism Comparison
Previous
RISC-V port
Copyright © 2026, EmbLinkRTOS contributors
Made with Sphinx and @pradyunsg's Furo