
ARM也开发了自己的开源嵌入式操作系统mbed OS。预计该操作系统会在智能家居和可穿戴式设备这两个物联网细分市场大放异彩。这款操作系统有别于其他的嵌入式操作系统,原因在于它是单线程,而不是多线程。ARM表示,如果要求操作系统能够在尺寸最小、功耗最低的设备上运行,那么非mbed OS莫属。

mbed OS操作系统专门为运行ARM处理器的物联网设备而设计。它包含了C++网络应用程序,同时ARM公司也会提供其他开发工具和相关的设备服务器。
默认情况下,mbed OS是事件驱动的单线程架构,而非多线程(实时操作系统)环境。这确保了它可以扩展到尺寸最小、成本最低且功耗最低的物联网设备上。ARM在移动设备端有着强大的市场占有率,所以该款操作系统的实力和前景不可小觑。
Mbed OS针对小巧、电池供电的物联网端点而设计,这些端点在Cortex-M MCU上运行,可能只有8KB内存,已出现在BBC Micro:bit SBC上。
虽然最初是半定制,只有单线程,缺少确定性功能,但现在它是开源的,采用了Apache 2.0许可证,提供了多线程和实时操作系统支持。
Mbed OS在设计之初心系无线通信,后来又增添了线程支持。该操作系统可通过Mbed Device Connector安全地提取数据的云服务,该项目发布了可穿戴式设备参考设计。
下面以ARM公司mbed物联网平台为例,说明物联网操作系统在设备安全和通信安全方面的设计。
● 设备安全:根据Cortex的M3和M4系列硬件支持的内存保护单元(MPU),利用mbed提供的uvisor功能实现设备安全;能够创建和强制实施独立的安全域;通过分隔系统的敏感部分,保护启动流程和调试会话,确保固件更新的安全安装,还可阻止恶意或错误代码升级权限和泄露秘密。
● 通信安全:mbed支持传输层安全(TLS)协议。TLS及相关的DatagramTLS(DTLS)协议是标准协议,用于保护互联网通信安全,已被证实能够防止窃听、篡改和伪造消息。mbed TLS库提供了一组可单独使用和编译的加密组件,可根据需要配置头文件加入或排除这些组件。mbed还提供了构建于加密组件上的中央SSL/TLS模块,以及为SSL和TLS提供完整协议实施的抽象层和支持组件。


