2017年的物联网领域注定不平凡,这一年共享单车开始洗牌,这一年NB-IoT持续发酵,这一年无数黑科技争先亮相。IDC预测,2020年全球物联设备数将达281亿,全球市场总量将达7.1亿美元;Garter的物联网行业报告显示,2020年全球物联设备数量将达260亿,全球经济价值1.9万亿美元。在物联网设备和应用数量持续暴增的大背景下,越来越多的设备供应商看到物联网操作系统的重要性,因此纷纷开始布局。
为了适应粉末化的市场应用需求,Zephyr操作系统在2017年不断更新,连续4次升级了内核版本:v1.7、v1.8、v1.9和v1.10,所支持芯片架构,开发板种类、数量不断增加,安全性进一步加强, 无线通信方式等方面也做出了很多改进, 让开发者更易于进行产品设计。
Zephyr v1.7:持续完善支持架构,数量多达6种
为了满足物联网应用的多样化需求,Zephyr操作系统所支持的芯片架构和开发板数量在稳步增加。从v1.7内核开始,Zephyr操作系统增加了对RISC V和Xtensa架构的支持,从此Zephyr所支持的架构达到6种,包括x86架构、ARC架构、ARM架构、NIOS II 架构、RISC V架构和Xtensa架构。同时,v1.7.0内核版本所支持的开发板又增加了4种,包括:基于SoC的NXP开发板、ARM的Betle、TI的CC3200 LaunchXL,和基于SoC的STML32L476。
Zephyr v1.8: 将主要的源代码迁移到GitHub
开源项目对于开发者最重要的一点就是便于贡献资源、互相沟通。为了促进社区的贡献和交流,Zephyr在v1.8内核版本实现了一个重要里程碑:将主要的源代码迁移到GitHub。通过实施这一改变,开发者和贡献者可以通过提交Pull请求进行修改和添加,简化了审查和验收流程。随着过渡工作完成,300多个Pull请求已经合并到Zephyr源代码中,Zephyr项目欢迎更多代码或者文档贡献到代码库中。
Zephyr v1.9: 改进连接性和安全性
随着物联网设备数量的剧增,网络数据大量形成,设备连接面临巨大的压力,个人信息被盗的风险也在不断增加,Zephyr v1.9针对连接性和安全性做了改进。从v1.9版本开始支持蓝牙mesh,支持LwM2M协议,新的API与已有应用程序代码(Pthreads, BSD 插座)更好地兼容,以及利用MPU和MMU硬件增加稳健性和保护功能。在连接性方面,Zephyr操作系统内置蓝牙堆栈,支持所有的蓝牙LE(BLE)5.0的新功能,如mesh网络;在安全性方面,Zephyr操作系统利用在很多SoC中设立硬件保护的功能,继续致力于加强安全性。
Zephyr v1.10:针对内核、架构、开发板等继续增强支持
从v1.10版本开始,Zephyr项目已经迁移到CMake,这对于那些需要不同平台和不同开发环境的开发人员是重要的一步,这使Zephyr更易于被应用开发人员使用。这一更改保持了Kconfig原样,并用相应的CMakeList.txt替代所有Makefile。Kbuild提供的类似于DSL的Make语言被一组CMake扩展所替代,这些扩展提供了简单的一对一Kbuild的功能的翻译,或引入了新的概念替代Kbuild概念。
除此之外,v1.10内核版本在x86、用户空间和内存域上,初始alpha品质线程级的内存保护;支持Newtron闪存文件系统(NFFS);增加测试套件的范围,并将大部分测试实例迁移到采用Ztest;与MCUBOOT引导加载程序进行集成;为很多已经支持的平台增加SoC、平台和驱动程序支持。
搭载Zephy操作系统的物联网应用持续增加
Zephyr操作系统非常适用于资源受限的物联网设备,从简单的嵌入式环境传感器和LED可穿戴设备,到精密的智能手表和物联网无线网关都能覆盖。与其它实时操作系统相比,Zephyr操作系统支持丰富的I/O驱动,具有高可配置性,编译时可进行资源定义,非常适用于原型快速开发,且对于特殊应用案例易于优化。基于以上诸多优势,采用Zephy操作系统的物联网应用和公司不断增加。
在应用案例来看,开发者基于Zephyr操作系统在Arduino 101开发板上搭建了一款心率监测仪,可以从脉冲传感器读取模拟数据并监测心率,并在Grove RGB LCD上现实心率和心跳,以及通过低功耗蓝牙连接发送心率数据到智能手机;Grush刷牙游戏也采用了Zephyr操作系统,它让小朋友通过玩游戏的方式训练正确的刷牙方式;英特尔基于Zephyr.js设计了智能家居应用;HereO的团队采用Zephyr操作系统设计了一款儿童手表;提供超低功耗物联网解决方案的蜂窝IP公司CommSolid,基于Zephyr操作系统实现可靠的NB-IoT通信,还能执行中间件堆栈和客户应用程序的简单机制;一家来自法国的嵌入式设备公司BayLibre将Zephyr操作系统选定为产品设计的主要操作系统。未来,随着Zephyr操作系统不断完善,采用Zephyr操作系统的应用及公司会继续增加。
展望2018,Zephyr会给物联网带来一场怎样的风暴?
回顾2017,物联网的各种应用逐步落地,共享单车、移动支付、大数据分析、AI、M2M、IPv6都随着物联网的爆发而迅猛发展。放眼2018年,物联网市场继续风云变幻,设备数量持续增长,数据洪流不断涌入网络,云端数据承载负荷加大,边缘智能计算崛起,安全问题突显,开源操作系统受到推崇。
Zephyr操作系统具有模块化、可配置等灵活性。它的模块化内核能够被剥离到各个组件,如果需要甚至可以只要超微内核。它的调度器在一定时间内按照优先级运行单一任务。如果两个优先级相同的任务在等待,调度器运行等待时间最长的那个。Zephyr操作系统给开发者提供了为指定线程分配优先级的能力,并在某些情况下给更高优先级的线程设置优先级的能力。
同时,Zephyr操作系统的Linux基金会背景、可扩展性和开源性是其快速发展的最大驱动力。Zephyr的开源方式解放了开发者,它可以减少工程师围绕操作系统的工作,让他们到其它领域进行创新,这有助于系统在竞争中出现差异化。目前,物联网设备经常缺乏互操作性,IT管理人员十分头疼,如果Zephyr项目变成事实上的物联网设备的标准操作系统,它将推进IoT进入互操作性的新时代,被物联网设备商广泛采用。
作为开源操作系统,Zephyr有着基于社区生态系统的平台优势,其开源管理和授权模式备受肯定。在原有会员英特尔公司、恩智浦半导体公司(已被高通收购)和美国新思科技公司的基础上,一年多来又吸引了Linaro、Runtime.io和Nordic半导体等的加入。本着开源、开放的创新精神,Zephyr项目欢迎更多物联网产业链上下游的公司加入进来,成为会员,共同打造一套应用更加完善、资源更加丰富的生态系统。