How Azure Simplifies IoT Development
Microsoft’s Azure is a cloud computing modality aimed at developing, testing, and managing IoT applications from the company’s worldwide data centers. Through a combination of platform-as-a-service (PaaS), infrastructure-as-a-service (IaaS), and software-as-a-service (SaaS), Azure enables OEMs to ease the path of IoT development and get their products to market more quickly.
ST has a standing history with Microsoft Azure products. Above is a diagram of the Azure IoT ecosystem targeted by the X-CUBE-AZURE expansion package. Image used courtesy of STMicroelectronics
Based on Windows, Azure TraceX allows embedded developers to graphically observe system events, such as interrupts and context switches, as they occur in real-time. The ability to see these occurrences and observe their timing in relation to each other is a powerful tool for developers.
What Is an RTOS?
With more and more expected of IoT edge devices, there has been an industry-wide migration to 32-bit MCUs. As Microsoft explains in a white paper on real-time operating systems, an RTOS manages the processor resources—such as processor cycles, memory, peripherals, and interrupts—that control these complex IoT devices. These tasks are divided into pieces called threads, and each thread gets its own “virtual microprocessor” in a process called multithreading.
Partitioning the MPU’s capacity to the threads. Image used courtesy of Microsoft
The RTOS is the arbitrator of when each thread gets to run and how much processor power it gets. The transfer of control is “invisible," and is a major feature of the RTOS. It must also offer preemption, which mandates that a function with a higher priority can shut off one with a lower priority when necessary.
Benefits of an RTOS
The benefits of an RTOS include:
- Better control of competing threads
- Ability to reduce system overhead, which can then reduce latency
- Less demand on a development team’s MPU firmware knowledge
- Simpler avenues to add new IoT features
- Easier ways to port designs between MPUs
- Built-in security
Fully Transparent and Available
Microsoft is making a major effort to establish Azure RTOS as the world’s premier RTOS. Easy access will be a hallmark of the endeavor. As such, Microsoft will be making the full source code for all Azure RTOS components readily available on GitHub. This will allow developers of embedded systems to explore the RTOS and adapt it to their own needs.