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 Blogs

Community Forums

Not answered M0+ Thumb - C flag 0 votes 26 views 0 replies Started 8 hours ago by Sean Dunlevy Answer this
Not answered Is it possible to turn my phone's 64-bit armv8-a (32-bit mode) to 64 bit mode 0 votes 48 views 0 replies Started 11 hours ago by durddudunyaa Answer this
Suggested answer CPSR status back to C variable
  • Arm7
  • Compilers
  • C
0 votes 2530 views 3 replies Latest 23 hours ago by Frost13 Answer this
Suggested answer Is pre-compiled ARM9 libs able to run on an ARM11 chip
  • Arm9
  • Arm11
0 votes 1826 views 4 replies Latest yesterday by Andy Neil Answer this
Not answered M0+ Thumb - C flag Started 8 hours ago by Sean Dunlevy 0 replies 26 views
Not answered Is it possible to turn my phone's 64-bit armv8-a (32-bit mode) to 64 bit mode Started 11 hours ago by durddudunyaa 0 replies 48 views
Suggested answer CPSR status back to C variable Latest 23 hours ago by Frost13 3 replies 2530 views
Suggested answer Is pre-compiled ARM9 libs able to run on an ARM11 chip Latest yesterday by Andy Neil 4 replies 1826 views