Product of the Week: PX5’s Industrial-Grade PX5 NET: BSD Sockets API for Demanding Applications - StoryJanuary 15, 2024
Networking applications are an integral part of our daily lives, supporting efficient communication, enabling entertainment and collaboration, and providing access to information. For today’s computing networks and internet, developers creating these applications can benefit from standardized interfaces that allow network code to be written seamlessly across various systems, like real-time operating systems.
It’s midnight the day before the product release and your system just crashed. As you follow the execution back from the point of the fault, you find yourself deep inside the Real-Time Operating System (RTOS) code. If you don’t have professional support, your only option is to try and figure out why the RTOS is failing yourself. Of course, you have to first figure out how the RTOS works to even have a chance at understanding what is going wrong. If you are fortunate enough to figure this all out, you are then tasked with trying to fix the issue – and then ensure the fix is propagated back into the next 3rd party RTOS release.
There is a seemingly endless number of RTOSes used with embedded MCUs, most of which have their own proprietary functionally as well as a unique API. Some of the APIs are good, and some not quite as good. In reality, the delta between a good and less-good RTOS API is quite small — most RTOS APIs will do the trick. As I look back on my last 30+ years, I’ve come to realize propriety RTOS APIs have had and continue to have a profound negative impact on embedded development and on our industry as a whole.
Safety-critical, real-time systems today — such as automotive, IoT, industrial, mobile, and other MCU-based devices — necessitate a high level of security and protection, and the ability to perform predictable and deterministic functions within a secure environment that can manage various components at once.