组织介绍

1 车用及机器人OS开源项目

随着汽车产业向“软件定义汽车”时代加速演进,操作系统作为连接硬件、管理资源、承载应用的核心平台,其战略地位日益凸显。为顺应这种趋势,中兴通讯发起此项目,旨在构建一个安全、可靠、高性能且开放协同的软件基石,应用于智能驾驶、智能网关等场景,以推动整个汽车产业的创新与变革。未来,该项目将演进到支持机器人操作系统等更多的领域。 该项目以中兴SafetyLinux为基础,但并非简单的代码公开,而是希望通过项目开源达到以下目的:

  1. ​​打破封闭,降低门槛​​:避免汽车软件体系封闭、碎片化导致的开发成本高昂、迭代缓慢的问题。通过开源,我们为车企、供应商及开发者提供一个统一、高起点的基础软件平台,大幅降低智能汽车软件的研发门槛和周期。
  2. ​​共建生态,加速创新​​:单一公司的力量是有限的。我们相信,一个充满活力的开源社区能够汇聚全球顶尖智慧,共同应对技术挑战,在自动驾驶、智能座舱、车云一体等核心领域催生百花齐放的创新应用,避免重复“造轮子”。
  3. ​​确立标准,保障安全​​:通过社区的共同审查与验证,能够更快地发现和修复系统漏洞,构建内在的安全性与可靠性。同时,开源项目本身有望促进软硬件接口的规范化,实现产业链的高效协作。
  4. ​​掌握核心,自主可控​​:在开源模式下,所有参与者都能深度理解和掌控系统底层,避免了在核心技术上受制于单一供应商,为产业提供了可持续、可信赖的技术选项。

项目介绍

  • ​​高实时性与确定性​​:通过支持RT补丁、物理核隔离、进程亲和绑定等技术,确保任务在严格的时间内完成,同时致力于确定性调度框架的研究,为业务提供硬实时保障。
  • ​​功能安全​​:(1) 通过建立内存和缓存隔离、时间隔离、空间隔离,以及内核、驱动、应用的可观测技术及业务恢复机制,确保单一组件故障不影响核心功能;(2) 使用龙蜥社区组件,并​​通过持续的漏洞修复与完整测试​​提升组件稳定性。
  • ​​信息安全​​:通过建立可信启动、加密通信、访问控制及​​安全的​​OTA更新机制,构建从启动到运行的完整信任链。
  • ​​高效编译构建框架​​:对构建框架进行深度定制,以满足​​多芯片、多板型(车型)、多版本​​的管理与快速构建需求,提升​​用户​​对平台化版本的管理效率。
  • ​​开发者工具​​:通过提供完整的SDK、模拟器、调试和性能分析工具,提高开发、测试、部署及运维效率。

2 快速上手

步骤 指导文档
第一步:下载 源码下载流程
第二步:编译 工程编译流程
第三步:烧写 烧写运行流程

QEMU版本运行流程参考QEMU版本运行流程

3 开发指南

功能模块 指导文档
功能开发 开发指南

4 工程结构

4.1 工程架构图

项目介绍

4.2 工程代码目录结构

├── buildsystem                           # 定义工程编译框架代码
│   ├── README.md
│   ├── build.py
│   ├── project-configs
│   └── templates
├── extentions                            # 定义扩展层配置代码
│   ├── meta-extended-openembedded
│   ├── meta-extended-poky
│   └── meta-extended-selinux
├── features                              # 定义特性层配置代码
│   ├── meta-feature-debugtools
│   ├── meta-feature-monitor
│   ├── meta-feature-multimedia
│   └── meta-feature-security
├── prebuilts                             # 定义功能模块预编译译产物
│   ├── m1-prebuilt
│   └── shared-prebuilt
├── products                              # 定义产品层配置代码
│   └── meta-automotive-gateway
├── soc                                   # 定义芯片驱动层配置代码
│   └── meta-m1
├── src                                   # 存放内核、u-boot、固件、模块以及开源组件的源码
│   ├── atf
│   ├── downloads
│   ├── kernel
│   ├── m1-application
│   ├── u-boot
├── upstreams                             # 定义开源层配置代码
│   ├── meta-openembedded
│   ├── meta-security
│   ├── meta-selinux
│   ├── meta-virtualization
│   └── poky
├── build                                 # 存放编译结果
└── build_docker_image                    # 存放容器镜像

4.3 项目仓库说明

本项目由多个仓库组成,所有代码仓库README信息汇总如下

代码仓库 说明文档 仓库简介
manifests README 定义工程配置
buildsystem README 版本构建入口
project-configs README 定义工程各版本配置
build_docker_image README 存放容器镜像
meta-extended-openembedded README 存放meta-openembedded仓库的扩展
meta-extended-selinux README 存放meta-selinux仓库的扩展
meta-extended-poky README 存放meta-poky仓库的扩展
meta-feature-security README 存放系统安全类功能代码
meta-feature-monitor README 存放视频、监控类功能代码
meta-feature-debugtools README 存放调测类功能代码
meta-feature-multimedia README 存放多媒体功能代码
meta-automotive-gateway README 定义文件系统镜像、SDK工具等产品层
meta-m1 README 存放M1芯片相关的配置
kernel-5.10 README 存放M1芯片使用的内核源码
u-boot-2023-0702-01 README 存放M1芯片使用的Uboot源码
atf-2.5 README 存放m1芯片使用的ATF源码
m1-application README 存放M1芯片使用的固件源码
m1-prebuilt README 存放M1芯片预制库文件
shared-prebuilt README 存放各版本公共预制库文件

5 支持硬件

项目目前支持以下平台:

  • M1 EVB板
  • qemu-aarch64

6 License

  • 本项目主要遵循 MulanPSL2 协议,详情请参考各代码仓库LICENSE声明

7 Release Note

  • 新增M1芯片的支持
成就
2
Star
42
Fork
成员(3)
5660511 crazyss 1746608740
wjn740
刘纯
16176161 ruan gang 1756172864
ruangang

搜索帮助