2020年是物联网浪潮奔涌的一年,5G+IoT的爆发迎来诸多智能商业场景的落地。在这其中,操作系统作为物联网的「大脑」发挥了不可或缺的作用。
物联网操作系统是新一代信息技术的重要组成部分。其英文名称是IoT(Internet of Things),顾名思义,「物联网就是万物相连的互联网」。与传统的个人计算机或个人智能终端(智能手机、平板电脑等)上的操作系统不同,物联网操作系统有其独特的特征。这些特征是为了更好的服务物联网应用而存在的,运行物联网操作系统的终端设备,能够与物联网的其它层次结合的更加紧密,数据共享更加顺畅,能够大大提升物联网的生产效率。
在本文中,OFweek维科网特地盘点、汇总了2020年最受关注的十大物联网操作系统,一起来认识下都有哪些?
Andorid Things
Android Things是Google推出的平台,旨在帮助Android开发者打造物联网设备。这个平台还支持强大的应用,例如视频与音频处理以及通过TensorFlow进行板载机器学习。它继承Brillo的功能外,还增加了Android API和Google服务的支持,以及一些Android Things的支持库。
Android Things最早是在2015年谷歌全球开发大会上出现的,谷歌对外宣布将会开发一个面向物联网设备的安卓操作系统,一开始被命名为「Brillo」。它其实就类似安卓系统的一个分支版本,类似于面向智能手表和穿戴设备推出的Android Wear等;2016年12月,谷歌第一次对外公布了Android Things的开发者预览版本。
根据谷歌的介绍,Android Things和手机版安卓系统一样,也会提供大量的安卓开发接口和谷歌基础服务,可以让物联网设备的开发者快速进行功能开发。据悉,谷歌围绕物联网设备提供的服务有「谷歌云平台」,「谷歌Play服务」、以及「Android Studio」开发工具。
华为Lite OS
说到华为的物联网领域布局,可能大家耳熟能详的一个词就是「鸿蒙」,但其实鸿蒙OS和Lite OS有所不同。
严格来说,目前,二者之间是包含关系,Lite OS是华为布局于物联网设备领域的底层操作系统,而鸿蒙OS是华为布局于智能设备领域的底层操作系统,包含了Lite OS的软件代码,也就是说Lite OS是鸿蒙体系中的一个内核。
据了解,华为Lite OS是驱动万物感知、互联、智能,可广泛应用于面向个人、家庭和行业的物联网产品和解决方案。其具备创新式系统设计,可最大限度降低系统功耗,在特定场景下,能减少60%功耗开销;能提供E2E物联网领域性技术栈,快速构建不同应用场景下的TurnKey解决方案;可复制华为在消费者、运营商和企业领域成功商业实践和优秀经验,助力合作伙伴商业成功。
华为Lite OS基础内核支持任务管理、内存管理、时间管理、通信机制、中断管理、队列管理、事件管理、定时器等操作系统基础组件,更好地支持低功耗场景,支持tickless机制,支持定时器对齐。同时提供端云协同能力,集成了LwM2M、CoAP、mbedtls、LwIP全套IoT互联协议栈,且在LwM2M的基础上,提供了Agent Tiny模块,用户只需关注自身的应用,而不必关注LwM2M实现细节,直接使用Agent Tiny封装的接口即可简单快速实现与云平台安全可靠的连接。
RTX
RTX是ARM公司的一款嵌入式实时操作系统,使用标准的C结构编写,运用RealView编译器进行编译。不仅仅是一个实时内核,还具备丰富的中间层组件,不但免费,而且代码也是开放的。
RTX的主要功能除了对任务(进程)的开始和终止以外,还支持进程通信,例如任务的同步、共享资源(外设或内存)的管理、任务之间消息的传递。开发者可以使用基本函数去开启实时运行器,去开始和终结任务,以及去传递任务间的控制(轮转调度)。开发者可以赋予任务优先级。
RTX的主要特点包括:支持时间片,抢占式和合作式调度。不限制数量的任务,每个任务都具有254的优先级。不限制数量的信号量,互斥信号量,消息邮箱和软定时器。支持多线程和线程安全操作。使用MDK基于对话框的配置向导,可以很方便的完成MDK的配置。
FreeRTOS
FreeRTOS是一种小型实时操作系统内核,具有源码公开、可移植、可裁减的特点。在嵌入式领域中,嵌入式实时操作系统正得到越来越广泛的应用。采用嵌入式实时操作系统(RTOS)可以更合理、更有效地利用CPU的资源,简化应用软件的设计,缩短系统开发时间,更好地保证系统的实时性和可靠性。但是由于RTOS需占用一定的系统资源(尤其是RAM资源),只有μC/OS-II、embOS、salvo、FreeRTOS等少数实时操作系统能在小RAM单片机上运行。相对μC/OS-II、embOS等商业操作系统,FreeRTOS操作系统是完全免费的操作系统,具有源码公开、可移植、可裁减、调度策略灵活的特点,可以方便地移植到各种单片机上运行。
作为一个轻量级的操作系统,FreeRTOS提供的功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能等,可基本满足较小系统的需要。FreeRTOS内核支持优先级调度算法,每个任务可根据重要程度的不同被赋予一定的优先级,CPU总是让处于就绪态的、优先级最高的任务先运行。FreeRTOS内核同时支持轮换调度算法,系统允许不同的任务使用相同的优先级,在没有更高优先级任务就绪的情况下,同一优先级的任务共享CPU的使用时间。
嵌入式领域,FreeRTOS是不多的同时具有实时性,开源性,可靠性,易用性,多平台支持等特点的嵌入式操作系统。目前,FreeRTOS已经发展到支持包含X86,Xilinx,Altera等多达30种的硬件平台,其广阔的应用前景已经越来越受到业内人士的瞩目。
Fuchsia
Fuchsia系统是谷歌自主打造的一款精简、安全、基于微内核设计、为物联网时代打造的全新操作系统,谷歌希望通过Fuchsia系统统一安卓和Chrome OS,其支持多达4个程序同屏同时运行(平板模式下),并且主页以直列的方式显示各种故事卡、应用集、系统组件等,有点类似多任务、多标签页的做法,但更简洁。
据悉,Fuchsia系统不同于安卓使用的Linux内核,而是采用的比较新的Zircon的内核。该系统与当下Android相比,无论是存储器还是内存之类的硬件要求都大幅降低,可以看出这是一款面向物联网的家用电器用的系统。Fuchsia系统支持32位和64位的ARM处理器和64位PC处理器。Fuchsia支持多种编程语言,包括C/C++、Dart、Go、Rust和Python,此外还有一种名为FIDL的接口定义语言。据悉,Fuchsia可以用于手机、电脑、智能手表、车载娱乐系统和其他嵌入式设备。
VxWorks
VxWorks诞生于1983年,由美国风河系统(Wind River System,简称WRS)公司设计开发,它是一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。
VxWorks之所以能在嵌入式实时操作系统领域占据一席之地,其良好的持续发展能力、高性能的内核以及友好的用户开发环境被认为了其中的几点原因。