编译 | 凌敏、核子可乐
微软开源 Azure RTOS 嵌入式系统
近日,微软宣布开源 Azure RTOS 及其所有组件,将其贡献给 Eclipse 基金会,并更名为 Eclipse ThreadX。Azure RTOS 的开源将满足长期以来高度分化的嵌入式软件市场的实际需求,而 ThreadX 也将成为全球首款开源实时操作系统。
2019 年 4 月 18 日,ThreadX 操作系统被微软看中,其所有者 Express Logic 也被整体收购。从那时起,它的名字也被改为 Azure RTOS。微软表示,通过此次收购,微软将解锁对数十亿全新连接端点的访问能力,让更多设备能够无缝接入 Azure 云并获得新的智能化功能。Express Logic 的 ThreadX RTOS 也将加入微软日益庞大的物联网支持技术阵营,并与微软在微控制器领域的安全方案 Azure Sphere 形成互补,目标是将 ThreadX RTOS 确立为 Azure Sphere 设备上的实时处理选项,帮助那些支持 ThreadX 并需要边缘计算功能的物联网设备能够与 Azure IoT Edge 对接。
有观察人士称,微软收购 ThreadX 是为了回应此前亚马逊云科技接掌 FreeRTOS。在收购之后,ThreadX 原开发者 William Lamie 选择离开并创办新公司,专门销售包含 POSIX 兼容线程的“第五代”RTOS,名为 PX5OS。
彼时,ThreadX 拥有超 62 亿部署量,也是当时 VDC Research 调查中全球部署范围最广的 RTOS 之一。之所以得到广泛接受,就是因为 ThreadX 解决了市场的客观需求:如何在资源有限的环境之下,让物联网及边缘设备仍具有可靠的安全保障。制造商生产的各类产品——包括智能灯泡、温度计、空调、医疗设备及网络设备等,都享受到 Express Logic 方案带来的尺寸、安全性与可靠性优势,同时也加快了产品上市速度。即使是高度受限的设备(由电池供电且闪存小于 64 KB),也能用上 Express Logic 的解决方案。全球每年生产和部署的 MCU 驱动设备超过 90 亿件,其中大部分都能够从 Express Logic 的技术成果中获益。
目前,ThreadX 涉足的领域更加广泛,有 120 亿台设备在运行这款系统上。它曾经为英特尔的片上管理引擎提供支持,也是 Pi Pico 级别以上各类树莓派(Raspberry Pi)的运行固件。在 Pi 1、2 和 3 代中,它藏身在 Pi SD 卡上的 bootcode.bin 文件当中;而在 Pi 4 和 400 当中,它又变身为 start*.elf。ThreadX 还存在于 GitHub 和 Debian 项目当中,以专有 blob(二进制大型对象)的形式示人。
它就像是个密不透风的黑盒子,其中甚至不涉及任何 Arm 代码——相反,只运行在 Pi 的 VideoCore GPU 之上。值得一提的是,VideoCore GPU 才是 Pi 中控制硬件的主要设备,Arm 核心反而是 VideoCore GPU 的从属设备。这也是 Xen 只能在 Pi 4 及更高版本上运行的原因:到这些版本,其 Arm 核心才开始拥有自己的中断控制器。不过从 Pi 5 开始,ThreadX 被纳入 EEPROM 当中且功能有所削减,Arm 核心也由此获得更多硬件控制权。
尽管市面上的实时操作系统(即 RTOS)并不少见,但由于实时操作系统默默运行于底层,很少受到关注。最知名的实时操作系统当数 Wind River 的 VxWorks:远在火星的 NASA 毅力号探测器上就有它的身影。作为黑莓旗下唯一赚钱的业务,QNX RTOS 也先后两次成为人们关注的焦点:除了作为 RIM 黑莓 X foldlelab 及智能手机产品的底层基础,上世纪 90 年代它还曾通过一张软盘成功实现设备加载和运行演示。
ThreadX 有哪些特点?
目前来看,ThreadX 本身仍是一款久经考验、相当成熟的产品,其 STM32 版本等部件甚至通过了 TÜV 功能安全 (FuSa) 认证。这也使其在特定客群中建立起强大的吸引力。
具体来说,ThreadX 的特点包括:
Eclipse 基金会在博客中提到,虽然市面上还存在其他开源 RTOS,但没有哪套方案能够同时满足以上四点。基金会对 ThreadX 充满信心,认为其必将迅速扩大在航空航天、汽车、物联网、医疗、交通、自动化和消费级可穿戴设备等广泛用例中的落地。
ThreadX 未来将如何发展?
除了项目本身,Eclipse 基金会还成立了技术兴趣小组,专注于为 ThreadX 建立起由行业支持的可持续融资模式。目前,AMD、Cypherbridge、微软、NXP、PX5、瑞萨电子、意法半导体、Silicon Labs 和 Witekio(Avnet 旗下公司)都积极参与进来。
未来,ThreadX 兴趣小组将主要关注以下几项目标:
参考链接:
https://techcommunity.microsoft.com/t5/internet-of-things-blog/microsoft-contributes-azure-rtos-to-open-source/ba-p/3986318
https://eclipse-foundation.blog/2023/11/21/introducing-eclipse-threadx/
https://www.theregister.com/2023/11/28/microsoft_opens_sources_threadx/
声明:本文由 InfoQ 翻译整理,未经许可禁止转载。