其他

Linux Foundation Project – Zephyr, a tiny open-source IoT RTOS for IoT device

分享一下Linux Foundation前幾天宣佈Open source Zephyr™ Project. 目前已提供v1.0.0 source code下載

1. Project Overview

Project宗旨  在IoT device上打造一個模組化設計且開源的小型RTOS
Zephyr kernel能運行在只有 10KB RAM 的 32 位微控制器上,相比之下uClinux 需要 200KB RAM。
Source code Zephyr Kernel v1.0.0 Release Notes
https://www.zephyrproject.org/content/zephyr-kernel-v100-release-notes
Project成員 1. Intel
2. NXP
3. Synopsys
Project授權 Apache License, version 2.0
Project特色
  1. CPU architecture independent
  2. Minimal footprint — can run in as little as 10KB
  3. Modular and scalable
  4.  Highly secure
  5. Seemless connectivity, supporting a broad range of wireless and wired technologies
  6. Powerful developer tools
  7. Open source kernel (and perhaps other components), released under the Apache v2.0 License
應用場景
  • Simple embedded environmental sensors.
  • LED wearables to sophisticated smart watches.
  • IoT wireless gateways.

2. Zephyr v1.0.0 支援的板子

x86 Instruction Set
  • Arduino 101
  • Quark D2000 CRB
  • Galileo Gen1/Gen2
  • Minnowboard Max
  • X86 Emulation (QEMU)
ARM (v7-M and v7E-M) Instruction Set
  • ARM Cortex-M3 Emulation (QEMU)
  • Arduino Due
  • Freescale FRDM-K64F
ARC EM4 Instruction Set
  • Arduino 101

3. Zephyr SDK

提供Zephyr SDK v0.7.2可下載, 其中包含toolchain以及QEMU, 可在x86平台上開發ARM/MIPS等等的程式

https://www.zephyrproject.org/content/zephyr-sdk-v072

  • GCC 5.2.0 cross-compiler for x86 + binutils + gdb, libgcc, newlib
  • GCC 5.2.0 cross-compiler for ARM + binutils + gdb, libgcc, newlib (multilib)
  • GCC 5.2.0 cross-compiler for MIPS + binutils + gdb, libgcc, newlib (multilib)
  • GCC 5.2.1 cross-compiler for IAMCU + binutils + gdb, libgcc, newlib
  • GCC 4.8.3 cross-compiler for ARC + binutils + gdb, libgcc, newlib (multilib)
  • GCC 5.2.0 host compiler for i686, binutils, glibc 2.22
  • Python2.7
  • QEMU emulators version 2.1.3:
    • qemu-system-arm (zephyr specific patch)
    • qemu-system-mips
    • qemu-system-i386
  • make (GNU Make 4.1)
  • OpenOCD (Open On-Chip Debugger with additional Quark support)

4. Source code overview

下載zephyr回來看, 可以發現設定/操作跟Linux kernel source很像. 使用上有light weight Linux的錯覺. 難怪國外也有人說Zephyr是Linux little brother ~

2016-03-01_211529.png

目前 zephyr 支援下列SoC

2016-03-01_211727.png

對於IoT device重視的security, Zephyr也提供完整的cryptography library

2016-03-01_211822.png

2016-03-01_211913

只有2KB的 kernel真是嚇人, 相信之後會有越來越多的IoT device使用 Zephyr

 

ref:

[1] https://www.zephyrproject.org

[2] http://www.linuxfoundation.org/news-media/announcements/2016/02/linux-foundation-announces-project-build-real-time-operating-system

發表迴響