Zephyr学习记录

2024-04-26 13:12
文章标签 学习 记录 zephyr

本文主要是介绍Zephyr学习记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、Zephyr是什么?

       Zephyr 是 Linux 基金会推出的一个适用于物联网的小型可伸缩的实时操作系统,支持多种处理器架构。Zephyr 是安全的、开源的、模块化的以及支持多种连接方式。与华为的liteos很像,也不知道谁抄的谁。

二、官方资料

官方介绍 https://docs.zephyrproject.org/latest/index.html

官方源码 https://github.com/zephyrproject-rtos/zephyr

三、总体架构

四、源码结构介绍

4.1 总体目录

序号

目录

用途

1

arch

包含和硬件体系结构相关的代码,每种平台占一个相应的目录。包括X86、MIPS、ARM、ARM64等CPU体系。

2

boards

板级代码及相关的配置文件

3

cmake

构建 Zephyr 需要额外的构建脚本

4

doc

文档介绍

5

drivers

设备驱动,每个不同的驱动占用一个子目录

6

dts

devicetrree 源文件,用于描述特定板子的设备细节,如外设寄存器数量及寄存器地址

7

include

包括所有公共 api 的文件,除了在 lib 下定义的部分

8

kernel

与架构无关的内核代码

9

lib

库代码,包括最小的标准 C 库

10

misc

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

11

modules

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

12

samples

演示使用 Zephyr 特性的示例应用程序

13

scripts

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

14

share

共享文件夹

15

snippets

代码模板

16

soc

SoC 相关代码和配置文件

17

submanifests

对west.yml命令的补充

18

subsys

子系统

19

tests

测试相关

4.2 服务目录

序号

目录

用途

1

bluetooth

蓝牙服务

2

canbus

CAN总线服务

3

console

控制台服务

4

debug

调试服务

5

demand_paging

虚拟内存管理服务

6

dfu

恢复模式服务

7

disk

磁盘服务

8

dsp

dsp计算服务

9

emul

模拟服务

10

fb

显示服务

11

fs

文件系统服务

12

input

输入服务

13

ipc

进程间通许服务

14

jwt

jwt认证服务

15

logging

日志管理服务

16

lorawan

lorawan协议服务

17

mgmt

更细服务框架

18

modbus

modbus服务

19

net

网络服务

20

pm

电源管理服务

21

portability

22

random

随机数服务

23

rtio

实时时钟服务

24

sd

sd服务

25

settings

设置服务

26

shell

命令行服务

27

stats

统计服务

28

storage

存储服务

29

task_wdt

看门狗服务

30

testsuite

测试讨价服务

31

timing

定时器服务

32

tracing

调试tracing服务

33

usb

USB服务

34

zbus

Zephyr总线服务

这篇关于Zephyr学习记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/937681

相关文章

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

Spring Retry 实现乐观锁重试实践记录

《SpringRetry实现乐观锁重试实践记录》本文介绍了在秒杀商品SKU表中使用乐观锁和MybatisPlus配置乐观锁的方法,并分析了测试环境和生产环境的隔离级别对乐观锁的影响,通过简单验证,... 目录一、场景分析 二、简单验证 2.1、可重复读 2.2、读已提交 三、最佳实践 3.1、配置重试模板

在 Spring Boot 中使用异步线程时的 HttpServletRequest 复用问题记录

《在SpringBoot中使用异步线程时的HttpServletRequest复用问题记录》文章讨论了在SpringBoot中使用异步线程时,由于HttpServletRequest复用导致... 目录一、问题描述:异步线程操作导致请求复用时 Cookie 解析失败1. 场景背景2. 问题根源二、问题详细分

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

将sqlserver数据迁移到mysql的详细步骤记录

《将sqlserver数据迁移到mysql的详细步骤记录》:本文主要介绍将SQLServer数据迁移到MySQL的步骤,包括导出数据、转换数据格式和导入数据,通过示例和工具说明,帮助大家顺利完成... 目录前言一、导出SQL Server 数据二、转换数据格式为mysql兼容格式三、导入数据到MySQL数据

关于rpc长连接与短连接的思考记录

《关于rpc长连接与短连接的思考记录》文章总结了RPC项目中长连接和短连接的处理方式,包括RPC和HTTP的长连接与短连接的区别、TCP的保活机制、客户端与服务器的连接模式及其利弊分析,文章强调了在实... 目录rpc项目中的长连接与短连接的思考什么是rpc项目中的长连接和短连接与tcp和http的长连接短

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI

Python MySQL如何通过Binlog获取变更记录恢复数据

《PythonMySQL如何通过Binlog获取变更记录恢复数据》本文介绍了如何使用Python和pymysqlreplication库通过MySQL的二进制日志(Binlog)获取数据库的变更记录... 目录python mysql通过Binlog获取变更记录恢复数据1.安装pymysqlreplicat