What is Microsoft Azure RTOS
Azure RTOS is a real time operating system (RTOS) for IoT and edge devices powered by microcontroller units (MCUs). Azure RTOS is designed to support most highly constrained devices (battery powered and having less than 64 KB of flash memory).
Azure RTOS is pre-certified for a variety of safety standards. These include the IEC 61508 SIL 4, IEC 62304 Class C, and ISO 26262 ASIL D certifications. Azure RTOS ThreadX is also DO-178 certified.
Azure RTOS provides an EAL4+ Common Criteria security certified environment, including full IP layer security via IPsec and socket layer security via TLS and DTLS. Our software crypto library has achieved FIPS 140-2 certification. We also leverage hardware cryptographic capabilities, memory protection via ThreadX MODULES, and support for ARM's TrustZone ARMv8-M security features.
Components of Azure RTOS
The Azure RTOS platform is the collection of run-time solutions including Azure RTOS ThreadX, Azure RTOS FileX, Azure RTOS GUIX, Azure RTOS NetX, Azure RTOS NetX Duo, and Azure RTOS USBX.
Azure RTOS ThreadX
Azure RTOS ThreadX is an advanced Real-Time Operating System (RTOS) designed specifically for deeply embedded applications. Among the multiple benefits Azure RTOS ThreadX provides are advanced scheduling facilities, message passing, interrupt management, and messaging services. Azure RTOS ThreadX has many advanced features, including its picokernel architecture, preemption-threshold scheduling, event-chaining, and a rich set of system services.
Azure RTOS FileX
Azure RTOS FileX is a high-performance FAT-compatible file system. It is fully integrated with Azure RTOS ThreadX and is available for all supported processors. Like Azure RTOS ThreadX, Azure RTOS FileX is designed to have a small footprint and high performance, making it ideal for today's deeply embedded applications that require file operations. Azure RTOS FileX supports most physical media, including RAM disk, USBX, SD CARD, and NAND/NOR flash memories via Azure RTOS LevelX.
Azure RTOS GUIX
Azure RTOS GUIX is a professional quality graphical user interface package, created to meet the needs of embedded systems developers. Unlike the alternatives, Azure RTOS GUIX is small, fast, and easily ported to virtually any hardware configuration capable of supporting graphical output. Azure RTOS GUIX also delivers exceptional visual appeal and an intuitive and powerful API for application-level user interface development.
Azure RTOS NetX
Azure RTOS NetX is a high-performance implementation of TCP/IP protocol standards. It is fully integrated with Azure RTOS ThreadX, and is available for all supported processors. Azure RTOS NetX has a unique Piconet architecture. Combined with a zero-copy API, it makes it a perfect fit for today's deeply embedded applications that require network connectivity.
Azure RTOS NetX Duo
Azure RTOS NetX Duo is an advanced, Industrial Grade TCP/IP network stacks designed specifically for deeply embedded, real-time, and IoT applications. Azure RTOS NetX Duo is a dual IPv4 and IPv6 network stack, while NetX is the original IPv4 network stack, essentially a subset of Azure RTOS NetX Duo.
Azure RTOS USBX
Azure RTOS USBX is a high-performance USB host, device, and On-The-Go (OTG) embedded stack. It is fully integrated with ThreadX and is available for all Azure RTOS ThreadX supported processors. Like Azure RTOS ThreadX, Azure RTOS USBX is designed to have a small footprint and high performance, making it ideal for deeply embedded applications that require an interface with USB devices.
Azure RTOS GUIX Studio provides a complete GUI application design environment, facilitating the creation and maintenance of all graphical elements in the application's GUI. Azure RTOS GUIX Studio automatically generates C code compatible with the Azure RTOS GUIX library, ready to be compiled and run on the target.
Azure RTOS TraceX is a host-based analysis tool that provides developers with a graphical view of real-time system events and enables them to visualize and better understand the behavior of their real-time systems.
In the context of Azure IoT
In addition to directly connecting to Azure IoT or indirectly connecting through Azure IoT Edge, Azure RTOS is also available on Azure Sphere devices. The combination of Azure RTOS and Azure Sphere bring best-of-class real-time processing and security together in one device.