操作系统充当硬件和用户之间的媒介。它是为应用程序提供理想环境并处理所有基本功能的软件,包括处理输入和输出、管理文件、内存、进程和磁盘驱动器等外部设备。
什么是物联网网关硬件操作系统?
对于通过全球网络与云服务和其他物联网设备进行通信的物联网设备,操作系统通常被设计为具有有限的内存和处理能力。其中,物联网网关硬件使用的操作系统与终端节点和设备使用的操作系统略有不同。随着越来越多的处理转移到网络边缘,物联网网关硬件操作系统需要具备更强的能力。它们是根据物联网用例的要求专门创建的,包括蜂窝连接、移动性、互操作性等。雾计算网关硬件必须在内部执行重要的计算任务,因此需要更强大的操作系统。
物联网操作系统工作原理
操作系统如何在物联网网关硬件上工作
为了毫不费力地在主机物联网设备上运行应用程序、分析数据和存储数据,集成在物联网网关设备中的操作系统充当其大脑和中枢神经系统。它控制设备上的所有硬件和软件,并分配所有资源。
东胜物联网网关硬件生态系统
物联网网关的操作系统也使其能够与云计算服务接口。它在船上处理数据,并需要可靠的连接来与控制系统保持联系。与此同时,他们也可能有视觉显示器或采用语音和面部识别技术进行认证。网关硬件上的一些物联网操作系统有能力进行简单的计算机操作,这就是所谓的物联网边缘计算。
Linux操作系统是物联网网关操作系统的主导者
第一个开源操作系统Linux的目标是尽可能地适应和强大。它在很大程度上是今天操作系统成功的原因:Windows和Mac OS都建立在它的基础上,而Android只是Linux内核上的一层皮。如今物联网操作系统在各方面也已经被Linux OSs所主导。它在服务器、网关、传感器和树莓pi上有效地运行。
Linux用户可以定制操作系统来满足他们和他们的设备的需求,因为它具有巨大的多功能性。Linux操作系统的“发行版”是其可用的各个部分的集合。因此,用户可以拥有他们需要的组件,而忽略他们不需要的组件。经验丰富的开发人员将进一步为他们的设备定制操作系统,使其更加可靠和有效。以下是一些常用的物联网网关硬件OS推荐:
Linux@OpenWrt
OpenWrt是一种基于Linux的开源替代方案,主要用于路由器。因为它包括Linux的所有功能,并使用包管理来使操作系统适应任何物联网应用的要求,所以OpenWrt是一个高度可定制的操作系统。
在物联网网关硬件上运行OpenWrt需要足够的RAM来稳定运行,并需要足够的闪存来容纳固件映像。任何运行OpenWrt OS的网关设备都必须至少拥有16/64,最理想的是至少拥有128 MB的RAM。否则,它在基本操作中可能不稳定。示例OpenWrt蓝牙/Zigbee至以太网网关与16/64参数可以在这里找到。
Linux@Debian
使用最广泛、最著名的Linux发行版是Debian。Debian比Ubuntu有一定的优势,因为它的稳定性很好。意外行为和问题的风险非常低,因为Debian只有在新功能经过Debian开发团队的全面测试和批准后才会更新。Debian经常被选为服务器和网关的操作系统。
除了32位和64位架构,64位ARM、ARMv7、ARM EABI、64位little-endian MIPS、64位little-endian PowerPC和IBM System z都是Debian可用的平台。Debian优先维护所有的自由/开源软件,默认情况下,它的库中不包含任何专有软件。更有经验的用户经常选择Debian,他们希望在整个安装过程中负责,并因此需要更多的输入和手动调整。示例Debian工业RS232/485网关可以在这里找到。
Linux@FreeRTOS
FreeRTOS(免费实时操作系统)是一个面向微控制器的开源操作系统。它非常适合内存有限的终端设备和功耗非常低的网络,因为它的内存占用非常小。FreeRTOS在MIT开源许可下免费发布,AWS提供软件库,提供丰富的功能,如连接、安全和无线升级。
如果您想在网关硬件上执行TLS和所有其他FreeRTOS库,您可能需要一个应用程序微控制器具有超过25 MHz的处理速度和超过64 KB的RAM。如果网络处理器用于卸载通信和加密堆栈(除了MQTT),您的微控制器将只需要10 MHz的处理速度和16 KB的RAM。在微控制器上,FreeRTOS的每个可执行映像需要128 KB的程序内存。

如何选择物联网操作系统
在物联网中使用哪种操作系统没有实际的标准,因此选择一种操作系统需要做大量的工作,因为您必须单独检查每种操作系统。但是建议开发人员在选择使用哪种操作系统时考虑以下7个因素:
1.储存:物联网设备限制通常要求操作系统在执行其功能时使用最少的内存、处理能力和板载存储;
2.可扩张性:为了使开发和集成更容易,操作系统必须是可扩张的,并且与任何种类的节点或网关兼容;
3.可移植性:通常,操作系统被移植到许多硬件平台上。可移植性将简化开发和集成;
4.模块化:采用模块化设计的操作系统可以在不超出其最大占用空间的情况下进行扩展;
5.可靠性——由于许多物联网设备位于远程位置,并且预计会完美运行多年,因此物联网操作系统需要非常可靠。
6.安全:物联网操作系统必须将安全放在首位。操作系统应该提供安全引导、SSL支持、加密组件和驱动程序等功能。这增强了设备安全性;
7.连接性–对于物联网实施,连接性至关重要。物联网网关操作系统应支持各种连接协议,如以太网、WiFi、BLE、IEEE 802.15.4等。