17 Star 86 Fork 39

kernelsoft / Photon-RTOS

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

PhotonRTOS础光车控安全实时操作系统

PhotonRTOS是一个由国科础石研发,并且符合AUTOSAR CP R20-11规范的实时操作系统, 它用于车辆底盘控制,汽车状态监控等场景。

已支持的功能

  • 任务管理
    • 任务激活,任务终止
    • 全抢占式任务调度
  • 中断处理
  • 事件机制
  • 资源管理(天花板协议等)
  • Alarm
  • Hook routines
  • 调度表
  • os-app
  • 保护机制
    • 时间保护
    • 内存保护
    • 堆栈监控
    • 服务保护
    • 保护错误处理
  • 多核相关
    • 多核启动
    • 自旋锁
  • 硬件外设访问操作
  • 中断源相关接口

代码结构

目录名 目录内容
apps 包含了调用autosar cp接口实现的应用任务
arch 与不同架构相关的代码
autosar 按照OS_R20-11的规范实现的cp代码
include 包含了各种头文件
doc 包含了各种文档描述
init 包含了内核由汇编跳转到c 的第一个文件,和一些初始化相关代码
kernel 内核相关代码
lib 一些工具类的代码
scripts 构建脚本,配置脚本等

平台支持

架构(arch) 平台(mach)
arm zynqmp_r5
arm mps2_m3
tricore tc397

开发流程

1. 配置依赖工具(开发准备工作,第一次运行一下即可,包括下载工具链等)

# 1. 如果没有工具链,可以先下载toolchains
# git clone --depth=1 https://gitee.com/kernelsoft/toolchains.git ../toolchains
bash quickstart.sh devel

# 2. 安装qemu
sudo apt install qemu-system-arm

2. 编译与运行

默认(arm, mps2_m3)平台:
bash quickstart.sh defconfig(把默认的Kconfig配置复制到.config文件中)
bash quickstart.sh

zynqmp_r5平台:
ARCH=arm MACH=zynqmp_r5 bash quickstart.sh defconfig
ARCH=arm MACH=zynqmp_r5 bash quickstart.sh

mps2_m3平台:
ARCH=arm MACH=mps2_m3 bash quickstart.sh defconfig
ARCH=arm MACH=mps2_m3 bash quickstart.sh

3. 调试支持

# 1. 安装调试工具gdb-multiarch
sudo apt install gdb-multiarch

# 2. 以gdb调试方式运行(通过ARCH和MACH参数来选择要调试的平台)
bash quickstart.sh gdb

# 3. 新建一个终端,调试elf格式的内核
gdb-multiarch ./photon

# 4. 进入gdb后,链接到qemu,就可以开始输入调试命令了
target remote:1234

空文件

简介

PhotonRTOS是一个由国科础石研发,并且符合AUTOSAR CP R20-11规范的实时操作系统, 它用于车辆底盘控制,汽车状态监控等场景。 展开 收起
取消

贡献者

全部

近期动态

加载更多
不能加载更多了
C
1
https://gitee.com/kernelsoft/photon-rtos.git
git@gitee.com:kernelsoft/photon-rtos.git
kernelsoft
photon-rtos
Photon-RTOS
master

搜索帮助