Maintained with ☕️ by
IcePanel logo

FreeRTOS adds support for symmetric multiprocessing (SMP)

Share

Services

FreeRTOS adds symmetric multiprocessing (SMP) support in the kernel, enabling developers designing FreeRTOS-based applications to utilize the SMP capabilities of multi-core microcontrollers. Multi-core microcontrollers, in which two or more identical processor cores share the same memory, allow the operating system to distribute tasks between cores to balance processor load as desired by the application. This allows applications to optimize the resource utilization of multi-core microcontrollers. The FreeRTOS SMP kernel has a consistent set of configuration options, APIs and behaviors for systems with multiple compute cores, so developers will be able to transition between multi-core and single-core systems with minimal effort. There are reference implementations on the xcore platform from [XMOS](https://www.xmos.ai/) and [Raspberry Pi Pico](https://www.raspberrypi.com/products/raspberry-pi-pico/), but for more details on the FreeRTOS SMP kernel and how to port to other platforms, see [Porting to FreeRTOS SMP Kernel](https://github.com/FreeRTOS/FreeRTOS-SMP-Demos/blob/main/Porting-to-FreeRTOS-SMP-Kernel.md). Get started by downloading FreeRTOS SMP kernel source code from [GitHub](https://github.com/FreeRTOS/FreeRTOS-Kernel/tree/smp), and find more information on the [FreeRTOS kernel page](https://freertos.org/symmetric-multiprocessing-introduction.html).