Apache Mynewt 是一个开源模块化的实时操作系统,专门为内存和存储都极其有限而又要以极低功耗运行非常长时间的物联网(Internet of Things, IoT)设备设计。在关于 Arduino 与初创公司 Runtime 的一则新闻上,Mynewt 被描述成“一个为32 位微控制器(MCU)设计的组合式操作系统,将帮助可穿戴设备、电灯泡、锁、门铃等各式各样的嵌入式设备连上物联网。”
新闻称Mynewt 解决了一个重要的物联网问题:“32 位微控制器比平板电脑和智能手机使用的CPU 更便宜,但上面无法运行Linux 或者Android 这样的Linux 衍生品。物联网开发者需要可以运行在这些更小、更便宜的处理器上的Linux 商用级替代方案。”
Eric Brown 在 Hackerboards.com 上也赞成这一说法:“就象ARM 公司的 Mbed 操作系统一样,新的 Apache Mynewt 将要为各种不能运行 Linux 的高端微控制器带来类似 Linux 的功能。”
Mynewt 项目突出强调了开源实现的 4.2 版低功耗蓝牙驱动程序(Bluetooth Low Energy,BLE),它为物联网开发提供了包括支持IPv6/6LoWPAN 和蓝牙智能网关的互联网连接等在内的新能力,有更低的功耗和更快的吞吐速度。
Mynewt 代码是用 C 语言写的,在 github 上开源。项目遵守 2.0 版 Apache 许可协议。 Rick Merritt 在电子工程专辑(EETimes)上这样描述了它的重要性:
Mynewt 遵守 2.0 版 Apache 许可协议,与 GNU 通用公共许可协议不同的是,它不要求开发者公开他们在 Mynewt 上开发的产品的代码。
Apache Mynewt 网站上有帮你开发新 Mynewt 项目的详细文档。在 Mynewt 的快速启动页面上就提供了两种方法帮你上手:
- 方法一:这是启动和运行 Mynewt 的简单快速办法。所有 Newt 工具和构建工具集都已经打包在了一个全功能 Docker 容器中,你只要在笔记本电脑或台式机上把它安装起来就好了。
- 方法二:你也可以自己在笔记本电脑或台式机上安装 Newt 工具、Mynewt 操作系统模拟器和开发嵌入式软件的构建工具集(比如 GNU 构建工具集等)。
把软件安装好之后就可以开发你的Mynewt 项目了。
Mynewt 0.9.0-incubating 是最新的 Apache Mynewt 发布版,包含扩展的硬件支持和硬件抽象层(HAL)。Runtime 公司的 Serling Hughes 在一次非正式的讲座中公开了 Mynewt 开发的路线图:
- v0.10 (2016 年 6 月): 支持 Wi-Fi 和 IP 网络
- v0.11 (2016 年 7 月): 全面支持蓝牙功能
- v1.0-GA (2016 年 10 月): API 兼容性开发,全面回归测试
查看英文原文: Apache Mynewt RTOS Addresses IoT Power, Memory, Storage Constraints
评论