Zephyr物联网操作系统模块化内核设计带来完美体验
扫描二维码
随时随地手机看文章
为支持最小尺寸的物联网设备,Linux 基金会发布了 Zephyr物联网操作系统,旨在为物联网设备创建一个开源的实时操作系统 (RTOS)。Linux 基金会执行董事 Jim Zemlin 表示:“如今开发人员有许多平台可选,Zephyr将提供一个模块化的联网操作系统,支持最小尺寸的物联网设备。”
实际上,Linux 基金会希望借助 Zephyr打造物联网实时操作系统 (RTOS) 领域的行业标准。市场上面向低内存物联网设备的其他操作系统解决方案无法利用庞大的开源社区,而正是开源社区使 Linux 成了服务器领域的行业标准。NXP公司的高级副总裁兼微控制器总经理Geoff Lees表示:“Zephyr将成为全球领先的易用的物联网平台之一,它专门针对互联世界的安全性进行了设计,致力于为开发人员提供最好的工具和支持来开发创新解决方案。”
Zephyr物联网实时操作系统采用模块化内核设计
开发人员既可以按原样使用Zephyr,也可以根据个人需求调整后使用。Zephyr 采用模块化内核设计,绝对必要的 RTOS 服务位于超微内核中,负责执行从中断服务到后台任务最高优先级的程序。超微内核基于一系列称作纤维的小线程,这些纤维一次仅执行一项任务,如遇紧急情况,开发人员只能使用超微内核来运行物联网设备,通常仅限于内存极低的设备,如环境传感器、RFID标签和LED。
不过,大多数物联网设备都能使用 Zephyr 的整个微内核,从而更出色地运行多任务与服务,包括内存池、内存映射和邮箱等。这些位于微内核中的任务将由超微内核中的一个服务器文件来排程。通过这样的设置,优先级最高的任务可以在超微内核中运行,中断任务也可不受阻碍。当所有纤维执行完任务后,服务器纤维会向超微内核发送下一个最高优先级任务,如果两项任务相互联系,在微内核中停留时间最长的任务将被选择。设计两个内核系统,确保了较小的内存堆栈,并尽可能将进程分配到云端。
Zephyr 的特性
目前,Zephyr 的通用 API 允许 RTOS 支持蓝牙、低功耗蓝牙、IEEE 802.15.4、6LoWPAN、WiFi、有线等通信网络,UART、GPIO、SPI、I2C等无线电输入/输出(I/O)端口和Arduino 101(英特尔 Curie 模块,包含 x86 和 Synopsys ARC EM 核心)Arduino Due (Atmel SAM3X8E ARM Cortex-M3 CPU)、英特尔 Galileo Gen 2、NXP FRDM-K64F Freedom 开发板 (KineTIs K64F ARM Cortex-M4 MCU)等开发板架构。Zephyr还将支持第三方库、应用及方案,并计划扩展兼容库以支持不同的通信标准、电路板和 I/O端口。工程师可根据设计需求和限制来添加或从定制 RTOS 中移除支持的组件,完成RTOS 解决方案后,还可以在其他物联网设备上使用。
了解zephyr项目:https://www.zephyrproject.org/