FreeRTOS: Platform
Platform portability layer
Return to main page ↑
Platform Documentation

The platform layer provides portability across different operating systems.

All system calls (including networking) used in this SDK's libraries go through a lightweight platform layer. The functions of the platform layer are intended to be easily implementable on a wide variety of operating systems. The current platform layer has the following components:

  • Clock
    Time-related functions used by libraries in this SDK.
  • Thread Management
    Threading and synchronization functions used by libraries in this SDK.
  • Networking
    Abstraction of network functions used by libraries in this SDK.
  • Metrics
    Only used by Device Defender; does not need to be ported if not using Defender.
    Functions for retrieving Device Defender metrics.
  • Atomics
    Atomic operations: small inlined functions used for atomically manipulating memory.

Currently, implementations exist for the following platforms:

Component Supported platforms
Clock FreeRTOS Software Timers
Thread Management FreeRTOS Semaphores + FreeRTOS Tasks
Networking Berkeley sockets
Metrics Sample implementation using Berkeley sockets.
This implementation is not intended for production use.
Atomics FreeRTOS Kernel Control