Arm works closely with Operating System (OS) providers to enable solutions across several IoT applications and hardware.

The resources on this page help you choose your OS, and efficiently build your application on an Arm-based device. This page includes some of the operating systems that are most utilized in this area. Learn more about operating system providers that will help you efficiently build an IoT application on Arm.

Rich operating systems

Here are some vendors that provide open source operating systems for higher-performing IoT applications that are typically based on Cortex-A processors.

Linux Kernel

The Linux Kernel is an open source system kernel most notably used in the GNU OS. It manages hardware, runs programs and maintains security in a system. Arm together with Linaro actively maintains and contributes to the Linux Kernel project.

Learn more

Ubuntu

A popular and secure Linux operating system for modern applications, from the cloud to endpoint devices.

Learn more

Debian

Free operating system for testing and validating running Linux on Arm based platforms.

Learn more

Real-time operating systems

Here are some vendors that provide Real-Time Operating Systems (RTOS) for small, low-power IoT applications that are typically based on Cortex-M processors.

FreeRTOS

Open source real-time OS that makes small, low-power devices easier to program, deploy, secure, connect, and manage.

Learn more

Mbed OS

OS featuring security, connectivity, an RTOS, and drivers to develop connected products based on Cortex-M microcontrollers.

Learn more

Zephyr

Based on the Linux Foundation project, Zephyr is an RTOS for constrained IoT devices and includes security and safety features.

Learn more

Keil RTX5

Available with Keil MDK, Keil RTX5 features a periodical activation of timer functions, memory management, and message exchange between threads for Cortex-M based devices.

Learn more

More RTOS partners

Find out about more RTOS partners

Learn more

Get Support


Community Forums

Suggested answer Cortex A9 MMU 0 votes 1807 views 10 replies Latest 12 hours ago by deas Answer this
Suggested answer initialisation of DRAM ECC with Cortex A9 CPU 0 votes 374 views 3 replies Latest yesterday by 42Bastian Schick Answer this
Suggested answer I2C problem on Cypress PSoC3 (with EEPROM and FRAM too) 0 votes 5211 views 5 replies Latest yesterday by Andy Neil Answer this
Suggested answer FVP MPS2 UART memory map 0 votes 333 views 2 replies Latest yesterday by Gabor M. Answer this
Suggested answer Cortex A9 MMU Latest 12 hours ago by deas 10 replies 1807 views
Suggested answer initialisation of DRAM ECC with Cortex A9 CPU Latest yesterday by 42Bastian Schick 3 replies 374 views
Suggested answer I2C problem on Cypress PSoC3 (with EEPROM and FRAM too) Latest yesterday by Andy Neil 5 replies 5211 views
Suggested answer FVP MPS2 UART memory map Latest yesterday by Gabor M. 2 replies 333 views