RISC-V 架构适配知识库
  • 睿迁工具集
  • RVSmartPorting
  • 简体中文
  • English (US)
在 Gitee 上查看
  • 睿迁工具集
  • RVSmartPorting
  • 简体中文
  • English (US)
在 Gitee 上查看
  • 简介
    • 贡献规范
  • 入门
    • 内存一致性模型
    • 硬件开发板差异
    • 指令集模块
  • 通用调整
    • 检查项目对多架构的支持性
    • 文件结构调整
    • 目录结构调整
    • 测试用例调整
  • C/C++ 程序
    • 内联汇编
    • 宏定义与判断
    • 移位运算中的整形常数
    • Intrinsic 函数
    • 多版本函数
    • 系统调用
  • 汇编程序
  • 编译配置文件
    • rpmbuild
    • Makefile
    • CMake
    • Autoconf
    • QMake
    • 其它
  • 其它编程语言
    • Rust
    • Go
    • Python
    • 其它语言
  • 辅助工具集
    • 目标代码定位工具
    • 汇编指令翻译工具

通用调整

本指导书的最终目的是帮助软件 适配 (Porting) 而非单纯 移植 (Migrating) 到 RISC-V 架构, 因此开发者针对软件源代码所做的修改应是 增量的、可自适应的。

理想情况下,完全适配 RISC-V 架构的软件源代码应满足以下要求:

  1. 软件源代码在以 RISC-V 架构为目标平台时能够正常编译运行
  2. 软件在 RISC-V 架构下与原有架构下的功能保持一致
  3. 同一套源代码无需额外修改,仍然能够在以原先已支持的硬件架构为目标平台时正常编译运行

说明

当仅满足前两点时,表示该软件已成功 移植 到 RISC-V 硬件架构平台。

检查项目对多架构的支持性

在正式开始针对目标架构适配软件之前,需要检查当前版本的软件项目是否已经支持多架构、支持到何种程度。

关于这部分的具体做法,请参阅 检查项目对多架构的支持性。

项目结构调整

在进行源代码层面的架构适配相关修改前,需要先视情况对项目结构进行调整, 以尽可能在 同一版本 源代码下支持不同的硬件架构。

项目结构调整主要可分为以下步骤:

  • 检查项目对多架构的支持性: 主要指软件源代码是否已针对不同硬件架构进行分类,以及分类是否合理。
  • 文件结构调整: 主要指将软件源代码中与目标架构相关的 源代码 按目标架构分别编写在不同文件中。
  • 目录结构调整: 主要指将软件源代码中与目标架构相关的 源文件 按目标架构分别存放在不同文件夹中。
  • 测试用例调整: 主要指将软件源代码中与目标架构相关的 测试用例 按具体情况进行修改或屏蔽。
编辑本页面
最后更新时间:
贡献者: LightningRS
Prev
入门
Next
C/C++ 程序

本知识库采用 木兰开放作品许可协议 署名-相同方式共享 第1版 进行许可

版权所有 © 2025 RVSmartPorting. | 京ICP备20005262号 | beian京公网安备11010802043677号