这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 物联网技术 » Zephyr——新型物联网操作系统介绍

共1条 1/1 1 跳转至

Zephyr——新型物联网操作系统介绍

高工
2023-08-02 09:59:55     打赏

Zephyr——新型物联网操作系统介绍

Zephyr™ 项目旨在开发开源、可扩展且强大的 RTOS,针对资源受限的嵌入式设备进行了优化,并在构建时考虑了安全性。Zephyr 项目致力于以确保安全为前提,为连接的资源受限设备提供一流的RTOS。

先来一段来自某库的Zephyr自我介绍,Zephyr™项目是一个采用Apache 2.0协议许可,Linux基金会托管的协作项目。为所有资源受限设备,构建了针对低功耗、小型内存微处理器设备而进行优化的物联网嵌入式小型、可扩展的实时操作系统(RTOS),支持多种硬件架构及多种开发板,可以在小至8 kB内存的系统上运行。

用深入的安全开发生命周期:安全验证,模糊和渗透测试,频繁的代码审查,静态代码分析,威胁建模和审查,以防止代码中的后门。支持Bluetooth, Bluetooth Low Energy, Wi-Fi, 802.15.4,6Lowpan, CoAP, IPv4, IPv6, 和 NFC 等标准,通过社区驱动的发展来改进和增强功能。

其支持不同的硬件架构平台,包括:

-ARC EM and HS

-ARMv6-M, ARMv7-M, and ARMv8-M (Cortex-M)

-ARMv7-A and ARMv8-A (Cortex-A, 32- and     64-bit)

-ARMv7-R, ARMv8-R (Cortex-R, 32- and 64-bit)

-Intel x86 (32- and 64-bit)

-NIOS II Gen 2

-RISC-V (32- and 64-bit)

-SPARC V8

-Tensilica Xtensa

目前,Zephyr项目中,所有基于这些硬件架构的硬件平台可以从这里找到。

我们现在大体上知道了Zephyr是什么,我们接下来聊聊Zephyr有啥特异功能:

1、丰富的内核服务

- 多线程服务:包括协作式(拥有最高优先级,不能被抢占),基于线程优先级,抢占式和非抢占式线程,时间片的线程调度策略

- 中断服务:支持编译器的中断服务程序注册

- 内存分配服务:支持固定/可变大小的内存块的分配和释放

- 线程同步机制:二值/计数信号量,互斥锁

- 线程通信机制:管道,消息队列,增强型消息队列,字节流

- 电源管理机制:tickless模式,高级空闲管理机制

2、多调度算法

- 协作式和抢占式的调度策略

- EDF:最早截止时间优先调度,截止时间愈早,其优先级愈高

- 中断下半部处理:中断服务函数中只处理较块的部分,剩余耗时部分由下半部函数完成,不再占用中断服务时间。

- 时间片轮转,仅作用于抢占式线程

- 多种调度策略:链表形式,红黑树,传统多队列

3、基于Kconfig文件,带来高可配置性,以及模块化

4、支持多种平台,不限于ARM,x86等

5、内存保护:栈溢出保护,内核对象以及设备驱动权限跟踪,线程隔离等

6、编译器资源定义:降低代码尺寸,提高资源有限系统性能

7、优化的设备驱动模型,大大提高跨平台驱动可复用率

8、设备树的支持:使用设备树文件进行硬件描述。

9、原生多网络协议栈的支持

10、蓝牙5.0支持

11、基于Linux,macOS,和Windows的原生开发

12、支持LittleFS和FATFS的虚拟文件系统接口

13、多后端的log系统,可以通过不同方式打印log信息,包括网络,串口控制台,文件系统等

14、功能强大的Shell系统,并支持自定义shell指令

15、原生POSIX支持,支持将Zephyr作为一个Linux应用来运行


更多的Zephyr小秘密还请大家自行挖掘,在这里就不一一举例了。

zephyr.png





关键词: Zephyr     操作系统     物联网    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]