物联网也有操作系统?你知道多少?

2019-05-22 14:55 浏览 2254人

二战之后的和平环境为科学技术的飞速发展提供了必备的土壤,从电视、PC、手机再到如今物物相连的物联网,改变着人们的生产模式与协作方式,让我们见证着日新月异的变化。从电子设备的操作系统来看,PC时代Windows,移动互联网时代AndroidiOS,那么如今正在迅速崛起的物联网,又会有什么操作系统呢?

 


操作系统作为一个产业的底层基础设施,除了潜在的巨大商业价值,在当下中美博弈的大环境下,更具国家层面的战略意义,拥有自主产权的操作系统,才能避免受制于人。因此,我们来探讨一下问题。

 

1.为什么需要物联网操作系统?

 

2012年物联网刚刚兴起时,整个产业聚焦在2个问题上:网络连接,前端算力。换句话说,就是先把设备连上网再说

 

但随着网络数据量激增,网络响应延迟,难以与迭代快、协议复杂的互联网服务打通 ··· 于是边缘计算越发重要,边缘计算使得物联网终端软件复杂度大幅提升,而这个需求在几年前还都是不存在的。过去物联网产品的软件功能在出厂时就基本固定了,上层软件应用开发和底层硬件紧密耦合,很难由第三方开发者为硬件开发应用。这导致物联网软件应用迭代慢、成本高,生态闭塞。

 

参考PC、互联网以及移动互联网的技术发展历程,软件行业的爆发需要相对较为标准化的底层运行环境作为支撑。所以,物联网也需要具备一套对软件开发者更友好的、相对统一的操作系统,使软件开发过程从硬件开发中脱离出来。只需要基于操作系统,即可快速开发上层应用。

 

2.物联网需要怎样的操作系统?

 

首先,既然Android在智能手机上这么成功,那是否可以直接复制到物联网领域呢?答案是否定的,原因包括Android是专为手机设计的操作系统,运行所需计算资源过大、难以兼容物联网设备广泛外设、存在安全问题等。

 

那么物联网需要什么样的操作系统底层运行环境呢?大致有这样几个方面的需求:

 

跨平台:消弭硬件平台差异,使软硬件开发解耦合。

低成本:能在微小设备运行,资源耗用小,降低硬件成本。

易学习:相关技术有大量的存量开发者用户,不需要重新学习。

强安全:拥有足够强的安全机制,保障用户设备和数据的安全。


前两个是硬件厂商的需求,后两个是软件行业的需求。

 

物联网操作系统的任务,其实就是为边缘计算软件提供满足这些需求的底层运行环境。

 

3.物联网操作系统的核心流派和优劣势?

 

目前,物联网操作系统基本形成了三大核心流派。

 

①由传统的嵌入式RTOS发展而来。典型代表:FreeRTOSRT-ThreadLiteOSuCOSMICO

 

优点:在物联网终端上已经广泛支持,硬件推广成本低。

 

缺点:软件开发专业度极高,软硬件开发难以隔离,对专业软件公司进入这个领域造成困难。

 

②由其他领域的软件平台移植而来,如LinuxJavaNode.js EmbeddedMicroPython。典型代表:LinaroMicroEJ,卓晟互联,Ruff

 

优点:软件资源丰富,开发者众多,软件开发快成本低。

 

缺点:适配物联网终端硬件有难度,需要解决资源占用、外设接口扩展、节电设计的多方面问题。

 

③由互联网公司的云平台延伸而来。典型代表:AliOS ThingsAndroid Things

 

优点:天生与互联网服务相结合,方便对接互联网应用。

 

缺点:基本上是各家产品对各家服务,难以做到平台中立,对软件开发者来说功能性受到了限制。

 

目前来看,Android Things还是太大了,比嵌入式Linux更耗资源,且不再走Android的开源路线,基本成为了Google自家服务的SDK。对于国内厂商来说,跟随门槛比Android更高一些。

 

 

未来一段时间内,在行业特点区隔下,物联网操作系统将依然是几种技术路线并行,而在每条路线上的漫长竞赛,还都刚刚开始。 相信在日趋激烈的物联网竞争推动下,有更多的科技巨头,将资源投入到物联网操作系统 的研究中去,为自己建立一个强有力的护城河,我国在国际标准的竞赛中,取得先发优势!