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