Skip to content

快速上手 ​

RME 仓库提供内核与架构移植;微控制器工程生成在 RVM 里。本页说明该从哪个 入口开始,以及每个入口实际交付什么。

微控制器:使用 RVM ​

在 MCU 上,RME 是 RVM 下的 用户态库。RVM 为芯片、工具链和 IDE 生成工程,并提供虚拟化层,让 RME 能与其它 裸机应用或 RTOS 共存。

要求

  • 带 MPU 的微控制器;
  • 至少 64 KB ROM / 20 KB RAM(推荐 128 KB / 64 KB);
  • 受支持的工具链:GCC 或 Keil uVision;
  • RVM 仓库及其工程生成器。

典型流程:

  1. 把 RVM 与 RME 仓库克隆为同级目录;
  2. 在 RVM 的工程配置中选择目标芯片与工具链;
  3. 生成工程(Makefile 或 Keil);
  4. 构建、烧录并打开控制台。

RME 仓库刻意不为每颗 MCU 提供一个工程。这些知识在 RVM 里,新板卡是配置 变更,而不是再复制一份内核。

应用处理器 ​

仓库里有少量 MPU 目标的工程树,适合 bring-up 和研究,但不是生产发行版:

工程目标注意事项
Project/MFGCC-XC7Z020Zynq-7020(Cortex-A9)单核移植;LGPL v3+
Project/GCC-RV64VQEMU-VIRT RV64需要同级 M7M03_Anomalocaris 初始化镜像
Project/VSCODE-GCC-X64x86-64脚手架;当前镜像不可启动
Project/Immature/*DSP / Eclipse / AURIX实验性

如果目标是今天就能工作的系统,请从带 MPU 的微控制器 + RVM 开始。MPU 一侧才是 可测量、可复现的路径。

仓库结构 ​

M7M01_Eukaron/
├─ Include/
│  ├─ rme.h                 公共 API 与系统调用号
│  ├─ Kernel/rme_kernel.h   内核对象与 API 定义
│  └─ Platform/             A6M、A7M、A7A、RV32P、RV64V、X64、Immature/C66X
├─ Source/
│  ├─ Kernel/rme_kernel.c   与架构无关的内核(约 8k 行)
│  ├─ Platform/             各架构的 HAL 与上下文切换
│  └─ Benchmark/            线程切换基准
├─ Project/                 x64、RV64V、Zynq 与实验性工程
└─ Document/                R4T1 手册与 LaTeX 源

工具链 ​

  • GCC / Clang-LLVM —— 开放移植的主要工具链;
  • Keil uVision(ARMCC/ARMCLANG) —— 支持 ARM 微控制器移植,并用于最佳 MCU 实测数据。

其它工具链目前不支持。在 MCU 上请使用 RVM 生成器,而不是手工拼 include 路径。

手册 ​

R4T1 技术参考手册是 API、权能模型、内核调用实现和移植流程的权威描述。

手册暂未内嵌到本站,会直接在 GitHub 打开。当移植与手册不一致时,请以 Include/rme.h 为准交叉核对 API。

下一步 ​

  • 内核设计——权能、调度、IPC、虚拟化。
  • 支持平台——明确区分已交付与路线图。
  • 性能——实测 MCU 数据与注意事项。
  • 社区——源码、交流渠道与许可。

本软件是 EDI 的官方作品,属于公有领域。

GitHub·Discord·QQ 群 1038895132·rtospro.com