随着应用领域的多样化,有效管理物联网基础架构的需求也变得越来越重要。普通计算机中的操作系统执行主要功能,例如资源管理,用户交互等。而物联网操作系统的要求非常特殊。它们需要很小的内存占用、能耗、连接功能、与硬件无关的操作、实时处理要求、安全要求、应用开发生态系统等等。截至2019年,物联网操作系统(OS)的选择范围已经很广。其中一些操作系统如下图所示,本文就一起看看其中五个很受欢迎的物联网操作系统。
Ubuntu Core
由于Ubuntu是流行的Linux发行版,因此Ubuntu Core IoT产品也变得很流行。Ubuntu Core是用于物联网的安全,轻量级操作系统,并以“安全第一”的理念进行设计。根据官方文档,整个系统已经过重新设计,以从第一次启动起就专注于安全性。
Ubuntu Core具有防篡改功能。由于应用程序可能来自不同的来源,因此它们仅对自己的数据具有特权。这样做是为了使一个设计不当的应用程序不会使整个系统容易受到攻击。Ubuntu Core是为业务而构建的,这意味着开发人员可以直接专注于手头的应用程序,而其他要求则由默认操作系统支持。
Ubuntu Core的另一个重要功能是安全应用商店的可用性,以及有一个现成的软件生态系统,所以使用Ubuntu Core变得更加简单。
RIOT
RIOT是用于物联网的用户友好型操作系统。RIOT支持许多低功耗IoT设备,它也支持各种微控制器架构。
它对开发人员友好:它支持标准环境和工具,因此开发人员无需经历陡峭的学习过程。支持标准编程语言,例如C或C ++。硬件相关的代码非常少。开发人员可以编写一次代码,然后在8位,16位和32位平台上运行他们的代码。
RIOT是资源友好的:RIOT的重要功能之一是其支持轻型设备的能力。它可以实现较大的能耗。它支持多线程,而线程开销很小。
RIOT是物联网友好的:RIOT提供的通用系统支持使其成为物联网的非常重要的选择。它支持CoAP,CBOR,高分辨率和长期计时器。
Contiki
Contiki是物联网的重要操作系统。它有助于将轻巧,低成本和低能耗的设备连接到互联网。选择Contiki OS的主要原因如下。
- 互联网标准:除了低功耗6lowpan,RPL和CoAP标准以外,Contiki操作系统还支持IPv6和IPv4标准。
- 支持多种硬件:Contiki可以在各种低功耗设备上运行,这些设备可轻松在线获得。
- 大型社区支持:使用Contiki的重要优势之一是可以拥有活跃的开发人员社区。因此,当你要解决一些技术问题时,这些社区成员将使问题解决过程变得简单而有效。
Contiki的主要功能如下:
- 内存分配:即使只有几千字节内存的小型系统也可以使用Contiki。它的存储效率是重要的功能。
- 完整的IP网络:Contiki OS提供了完整的IP网络堆栈。这包括主要标准协议,例如UDP,TCP,HTTP,6lowpan,RPL,CoAP等。
- 电源:评估电源需求并以优质的最小方式使用它们的能力是Contiki的一项重要功能。
- Cooja网络模拟器使软件的开发和调试过程更加轻松。
- Coffee Flash文件系统和Contiki Shell的可用性使文件处理和命令执行更简单,更有效。
TinyOS
TinyOS是专为低功耗无线设备设计的开源操作系统。它拥有一个充满活力的用户社区,其用户遍布学术界和行业。从一年中TinyOS被下载超过35000次这一事实可以理解TinyOS的流行。TinyOS非常有效地用于各种场景中,例如传感器网络,智能建筑,智能电表等。
Zephyr
Zephyr是支持多种架构的实时OS,并针对资源受限的环境进行了优化。在Zephyr设计中,安全性也很重要。下面列出了Zephyr的主要功能:
- 支持150多个板。
- 完全的灵活性和选择自由。
- 可以处理体积小的物联网设备。
- 可以开发具有内置安全功能的产品。