Zephyr会成为物联网时代RTOS的佼佼者?

原创 嵌入式大杂烩 2024-07-05 11:39

最近,有接触到Zephyr操作系统,在这之前我也没怎么了解过,简单了解了一下,发现其增长的势头还挺猛的。

下面我们一起来简单认识认识Zephyr。

Zephyr 简介

Zephyr RTOS是Linux基金会下的一个开源项目,以其高效、灵活、安全的特点,在实时操作系统领域崭露头角,成为物联网设备开发的首选之一。基于Apache 2.0许可

官网:https://www.zephyrproject.org/

代码仓:https://github.com/zephyrproject-rtos/zephyr

1、Zephyr软件架构:

Zephyr从下到上大致分为如下几层:

硬件层:含了实际的硬件设备,如CPU、内存、外设等。这些硬件设备是操作系统运行的基础和支撑。

硬件抽象层(HAL):提供了对底层硬件的抽象和封装,使得操作系统内核和应用程序能够以一种统一的方式访问和控制硬件资源。这有助于提高代码的可移植性和可重用性。

内核层:Zephyr内核是操作系统的核心部分,负责任务调度、内存管理、中断处理等基本功能。Zephyr提供了两种内核:微内核(microkernel)超微内核(nanokernel),用户可以根据具体需求选择使用哪种内核或同时使用两者。

服务层:提供了一系列系统级的服务,如文件系统、网络协议栈、蓝牙协议栈等。这些服务为应用层提供了必要的支持和接口,使得应用程序能够更加方便地访问和使用底层硬件资源。

应用层:包含用户开发的各种应用程序。这些应用程序运行在Zephyr操作系统之上,利用操作系统提供的各种服务和接口实现具体功能。

2、Zephyr源码目录:

  • • arch:包含和硬件体系结构相关的代码,每种平台占一个相应的目录。这些目录中存放了针对不同架构的移植文件,主要是针对不同的CPU进行适配,包括内核的源文件和头文件(其中包含私有API)等。例如,对于ARM架构,可能会有arch/arm目录,其中包含针对ARM CPU的适配代码。

  • • boards:存放板级代码及相关的配置文件。开发板属于SoC的子集,当我们选中一个开发板时,也就会自动确认其SoC的型号。此外,该目录下还包含了板子的设备树文件,用于描述板上可用资源。

  • • cmake:包含构建Zephyr所需的额外构建脚本。Zephyr使用CMake作为构建系统,构建过程可分为配置阶段和构建阶段。

  • • doc:系统文档目录,包含Zephyr的相关文档和工具。

  • • drivers:设备驱动目录,每个不同的驱动占用一个子目录。Zephyr为各种硬件设备提供了丰富的驱动程序。

  • • dts:devicetree源文件目录,用于描述特定板子的设备细节,如外设寄存器数量及寄存器地址。这些文件在构建过程中会被用来生成设备树信息,供操作系统内核使用。

  • • include:包含所有公共API的头文件(除了在lib下定义的部分)。这些头文件为开发者提供了访问Zephyr内核和各种组件的接口。

  • • kernel:与架构无关的内核代码目录,包含Zephyr操作系统的核心功能,如线程调度、内存管理等。

  • • lib:库代码目录,包括最小的标准C库等。这些库为Zephyr提供了基本的编程支持。

  • • misc:不属于任何其他顶级目录的杂项代码。

  • • modules:提供特定芯片系列的一些外设配置选项。

  • • samples:演示使用Zephyr特性的示例应用程序目录。这些示例代码有助于开发者快速上手Zephyr并理解其各种特性。

  • • scripts:用于构建和测试Zephyr应用程序的各种程序和其他文件。

  • • soc:SoC(System on Chip,片上系统)相关代码和配置文件目录。这些目录中存放了针对不同芯片的外设配置和部分功能初始化代码。

  • • subsys:Zephyr子系统目录,包括USB、网络、文件系统及蓝牙等子系统的代码。这些子系统为Zephyr提供了丰富的功能和接口。

Zephyr 的特性

1、安全性

安全性是Zephyr RTOS的重要特性之一。它提供了内存保护、安全启动和加密算法等安全功能,确保设备在面对潜在威胁时能够保持安全。

2、丰富的连接能力

Zephyr内置高效的TCP/IP网络栈,支持IPv4/IPv6,以及多种无线协议,如蓝牙(BLE)、Wi-Fi等,满足现代物联网设备的各种连接需求。这种广泛的连接能力使得Zephyr成为构建物联网应用的核心操作系统之一。

3、统一的构建系统与设备树支持

Zephyr提供了统一的构建系统和设备树支持,简化了跨平台开发流程。

设备树例子:

有Linux设备树那味了?

zephyr的设备树管理和Linux设备树类似,都采用了树状结构来描述硬件资源,两者都支持通过属性(properties)来定义硬件设备的各种参数和配置信息。

Zephyr设备树与Linux设备树主要的区别:

zephyr设备树主要面向资源受限的嵌入式系统,Zephyr并不直接使用设备树编译后的二进制文件(DTB)。相反,它在构建编译阶段通过脚本将设备树信息转换为C语言头文件中的宏定义。这样,内核和应用程序可以通过调用这些宏定义来访问设备树信息,减少了运行时的资源消耗。

Linux设备树则直接使用设备树编译后的DTB文件。在系统启动时,Linux内核会解析DTB文件,获取硬件信息并进行板级初始化。这种方式提供了更高的灵活性和实时性。

构建方面Zephyr使用CMake作为构建系统,通过west build命令编译、链接应用程序,并生成可下载到目标设备的固件映像。此外,Zephyr还集成了GDB调试器,与Visual Studio Code、Eclipse等IDE无缝配合,为开发者提供良好的开发环境。

4、高效与灵活性

Zephyr RTOS是一款面向物联网的小型、可裁剪的实时操作系统,支持多种硬件平台(如ARM、x86、RISC-V等)和多种开发环境(Windows、Linux、MacOS)。其模块化设计允许开发者根据需求选择启用或禁用特定的功能,从而实现轻量级的内核以适应资源受限的硬件(最小资源需求:8KB Flash,5KB RAM)。

这种高度可配置性使得Zephyr在智能家居、工业自动化、穿戴设备等领域得到广泛应用。

Zephyr 与RT-Thread、FreeRTOS的对比及其优略势

Zephyr优势

  • • 高效灵活:模块化设计使得Zephyr能够根据需求进行裁剪和配置。

  • • 安全性高:提供多种安全功能和开源许可保障代码安全。

  • • 连接能力强:支持多种无线协议和网络栈满足物联网设备的连接需求。

  • • 社区活跃:拥有活跃的全球社区提供持续的技术更新和支持。

Zephyr劣势

  • • 相对较新:与FreeRTOS及RT-Thread等RTOS相比,Zephyr的历史较短且市场认知度有待提高。

  • • 商业许可问题:虽然Zephyr本身开源免费,但基于Zephyr的商业项目可能需要考虑其他组件或服务的许可费用。

Zephyr 与 RT-Thread对比

RT-Thread与Zephyr类似,也是一款面向物联网的开源RTOS。然而,RT-Thread在生态系统和社区支持方面可能略逊于Zephyr。此外,RT-Thread在某些特定领域(如物联网操作系统标准制定)的参与度不如Zephyr高。

Zephyr 与 FreeRTOS对比

FreeRTOS是一款轻量级的RTOS,广泛应用于各种嵌入式系统中。与Zephyr相比,FreeRTOS在资源占用方面可能更加优化,但在安全性和模块化设计方面可能稍显不足。FreeRTOS的社区支持也非常活跃,但其在物联网领域的专门优化和特性可能不如Zephyr丰富。

对于Zephyr,大家怎么看?欢迎留言讨论。顺便做个投票:

猜你喜欢:

常用的 Git 提交规范!

分享一种灵活性很高的协议格式(附代码例子)

易懂 | 手把手教你编写你的第一个上位机

嵌入式大杂烩 专注于嵌入式技术,包括但不限于C/C++、嵌入式、物联网、Linux等编程学习笔记,同时,内包含大量的学习资源。欢迎关注,一同交流学习,共同进步!
评论
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 93浏览
  • 作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!没错,USB资源就是你打开新世界得钥匙,它能做哪些扩展呢?1.1  USB扩网口通用ARM处理器大多带两路网口,如果项目中有多路网路接口的需求,一般会选择在主板外部加交换机/路由器。当然,出于成本考虑,也可以将Switch芯片集成到ARM核心板或底板上,如KSZ9897、
    万象奥科 2024-12-03 10:24 53浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 91浏览
  •         温度传感器的精度受哪些因素影响,要先看所用的温度传感器输出哪种信号,不同信号输出的温度传感器影响精度的因素也不同。        现在常用的温度传感器输出信号有以下几种:电阻信号、电流信号、电压信号、数字信号等。以输出电阻信号的温度传感器为例,还细分为正温度系数温度传感器和负温度系数温度传感器,常用的铂电阻PT100/1000温度传感器就是正温度系数,就是说随着温度的升高,输出的电阻值会增大。对于输出
    锦正茂科技 2024-12-03 11:50 97浏览
  • 遇到部分串口工具不支持1500000波特率,这时候就需要进行修改,本文以触觉智能RK3562开发板修改系统波特率为115200为例,介绍瑞芯微方案主板Linux修改系统串口波特率教程。温馨提示:瑞芯微方案主板/开发板串口波特率只支持115200或1500000。修改Loader打印波特率查看对应芯片的MINIALL.ini确定要修改的bin文件#查看对应芯片的MINIALL.ini cat rkbin/RKBOOT/RK3562MINIALL.ini修改uart baudrate参数修改以下目
    Industio_触觉智能 2024-12-03 11:28 66浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 107浏览
  • 概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解决的问题。本文在说明(三)的基础上,继续探讨为SiPM读出测试系统寻求合适的模拟脉冲检出方案。前四代SiPM使用的高速比较器指标缺陷 由于前端模拟信号属于典型的指数脉冲,所以下降沿转换速率(Slew Rate)过慢,导致比较器检出出现不必要的问题。尽管比较器可以使能滞回(Hysteresis)模块功
    coyoo 2024-12-03 12:20 86浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 116浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 118浏览
  • 11-29学习笔记11-29学习笔记习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-02 23:58 59浏览
  • 当前,智能汽车产业迎来重大变局,随着人工智能、5G、大数据等新一代信息技术的迅猛发展,智能网联汽车正呈现强劲发展势头。11月26日,在2024紫光展锐全球合作伙伴大会汽车电子生态论坛上,紫光展锐与上汽海外出行联合发布搭载紫光展锐A7870的上汽海外MG量产车型,并发布A7710系列UWB数字钥匙解决方案平台,可应用于数字钥匙、活体检测、脚踢雷达、自动泊车等多种智能汽车场景。 联合发布量产车型,推动汽车智能化出海紫光展锐与上汽海外出行达成战略合作,联合发布搭载紫光展锐A7870的量产车型
    紫光展锐 2024-12-03 11:38 88浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-30 14:30 75浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦