Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • O OSKernel2026-NameNotFound
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 8
    • Issues 8
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • NameNotFound
  • OSKernel2026-NameNotFound
  • Issues
  • #1
Closed
Open
Issue created Apr 02, 2026 by 孙浩宇@shyliuliMaintainer

添加loongarch支持

issue

目前项目仅仅支持risc-v,aarch64,mipsel,x86_64,我们需要添加loongarch支持 除了src/arch 下需要新建并配置相同的loongarch64外,我们还需要修改下面的文件:

  1. kernel/Makefile — 添加 loongarch64 架构选项、QEMU 目标、交叉编译器前缀
  2. kernel/build.rs — 添加 loongarch64 target 检测和 rustc-cfg
  3. kernel/Cargo.toml — 添加 LoongArch 依赖 crate(CSR 访问、TLB 操作等)
  4. kernel/src/lib.rs — 添加 #[cfg(target_arch = "loongarch64")] 条件编译
  5. kernel/targets/loongarch64.json — 新建 target spec 文件
  6. kernel/src/lkm/const_reloc/ — 添加 LoongArch ELF 重定位支持
    (由claude code+claude opus4.6总结)

参考实现:

  • https://gitlab.eduxiji.net/educg-group-26011-2376549/T202410699992496-312
  • gitlab.eduxiji.net/educg-group-26011-2376549/T202410699992491-3136
  • gitlab.eduxiji.net/educg-group-26011-2376549/T202410460992502-2319 如使用需标注来源

LoongArch上可以运行的内核模块

与OS无关且支持x64/aarch64/riscv64/loongarch64,以及星光二代开发板和龙芯2k1000的处理器抽象层Crates: PolyHAL

LoongArch架构通用文档

  • 龙芯架构参考手册

  • 《计算机体系结构基础(第三版)》

  • LoongArch 系统调用(syscall)ABI

  • LoongArch-工具链约定

  • LoongArch ELF ABI(中文版)

  • 更多龙架构相关文档,可以参考龙芯开源社区,龙芯中科公司官网,龙芯在github的官方账号以及龙芯实验室为大赛设置的文档仓库

    子任务

    • #2 (closed) 构建系统与 target 基础设施
    • #3 (closed) Boot 启动与早期初始化
    • #4 (closed) Trap/中断/异常处理
    • #5 内存管理与 TLB
    • #6 进程上下文切换
    • #7 LoongArch ELF 重定位支持
Edited Apr 05, 2026 by 孙浩宇
Assignee
Assign to
Time tracking