早在1982年,一群卡内基梅隆大学的学生开发出网络可乐机,它可以告知冰箱里的存货以及新放入的饮料是不是已经变冰,这台机器被称为第一个网络家电。这群大学生没想到自己的一番操作,成了物联网的先驱。目前来看,“物联网+”概念产生了很多新生代词汇,比如智慧医疗、智慧城市、智慧工厂等。但是,不知道你有没有听说过“物联网+操作系统”这种组合?
物联网操作系统(简称物联网OS)的诞生就是单纯两者的碰撞?显然没这么简单,这件事得从科技发展角度来讲。
中国软件行业协会嵌入式系统分会副理事长何小庆的《嵌入式操作系统风云录:历史演进与物联网未来》一书中提到了物联网OS的产生背景:首先互联网为物联网系统搭建了无处不在的互联管道,云计算和大数据的发展为物联网数据处理和分析提供了技术支撑。在嵌入式设备端,32位MCU技术已经成熟,价格趋于与8位/16位MCU接近,其不仅在网关设备上使用,也在传感和执行单元上普遍使用。在MCU市场里,ARM Cortex M系列的MCU占有最主要的份额。ARM完善的生态环境大大帮助了物联网OS在内的嵌入式软件的发展。
可以想象,设备端的小型化、低功耗、安全性的趋势,通信协议之间的灵活转换,应用层对云计算能力的要求,更加复杂的设备软件,这些都成了物联网操作系统被孕育出来的必要条件。
翻阅历史,起初是美国加州大学伯克利分校的TinyOS和瑞士计算机科学学院网络系统小组开发的Contiki,这两款传感器OS都是最早具备物联网OS特征的存在。随后的2010年,欧洲诞生了RIOT(实时多任务操作系统),不仅可以运行在小型MCU上,也支持MPU。
直到2014年2月,德国纽伦堡的嵌入式世界大会上,风河公司发布了其基于VxWorks 7的物联网OS,随后也在官网上给出了产品介绍和白皮书。微软和风河这两家操作系统系统大公司加入,使得物联网OS呼之欲出。
技术角度来讲,物联网操作系统的内核技术与现在的嵌入式操作系统很接近,Arm、华为采用实时多任务操作系统,谷歌Android Thing的内核则从安卓系统中进行裁剪。何小庆老师在接受与非网记者采访时表示:“物联网操作系统并没有做一个特别的内核,而是沿用了嵌入式操作系统中的技术, 目前可以将该技术分为两种,一种是实时的,一种是通用型的。”
“物联网”三个字勾起了资本的欲望,挑起了从芯片到终端厂商的战争,也点燃了物联网操作系统战场的战火。国内外巨头企业、本土的“小而美”企业纷纷拉到了一个舞台上开始角逐。
战火前的黎明
“现在物联网操作系统的产品和应用都处于初期的探索和打磨阶段,估计到2020年,有几家公司产品的技术形态和商业模式已经受到产业界的认可。”这句话是何小庆老师对当下物联网操作系统所处时代的一个判定。
那处于探索期的物联网操作系统,各家都有怎样的产品呢?
ARM mbedOS
2016年,Arm公司320亿全资被软银收购,其物联网操作系统Arm Mbed经过几年的发展具有强大的生态系统支持,又因为Arm Cortex-M内核使用的巨大影响力,Arm Mbed操作系统的应用很容易在具体芯片上开发。
就在上个月,ARM收购了Stream Technologies,这是一家专注于帮助企业优化其物联网设备通信方式的软件提供商。ARM物联网云服务部门负责人Hima Mukkamala在博客文章中详细介绍了ARM对该工具套件的一些愿景设想。他写道,收购Stream旨在创建一个“端到端的物联网平台,用于管理、连接、配置和更新设备”。这个一站式商店的价值定位,很大程度上是源于Stream软件几乎可以兼容所有类型的物联网系统,以及很多不同类型的网络。
在安全性方面,Arm也颇为重视。推出了PSA安全构架其基于现有的安全技术,如芯片、软件做系统化整理,会形成不同的安全级别;整理出有效的安全实践,加入PSA指导意见中,形成IO级安全指导。