DragonOS icon indicating copy to clipboard operation
DragonOS copied to clipboard

[OSCOMP] 记录 DragonOS 作为基座系统适配 Roadmap

Open Samuka007 opened this issue 9 months ago • 0 comments

[!NOTE] ~~由于 riscv64 尚不支持完全在容器环境下在 QEMU 中运行镜像,因此若想看到在 riscv64 上做的修改,请在主机上运行 cd tools && bash bootstrap.sh 以完善运行环境。鉴于这种方式容易带来环境依赖上的污染,我们正在迁移至 Dev Container 环境中,由此造成的不便我们十分抱歉~~~ 自4月26日起,riscv64可以稳定在 devcontainer 内编译并启动。

目前已将 DragonOS oscomp 分支迁移到 riscv64 作为默认编译条件。

目前 DragonOS 对不同平台的支持情况:

x86_86 riscv64 loongarch64
Container Build & Run X X
Container Build & Host Run X X X
Host Build & Host Run X X X

迁回 x86_64

参考 https://docs.dragonos.org.cn/introduction/build_system.html#riscv64

修改 env.mk .vscode/settings.json dadk-manifest.toml

env.mk dadk-manifest.toml 里面的ARCH的值改为 riscv64,并且在 setting.json 里面注释 "rust-analyzer.cargo.target": "riscv64-unknown-none", 并取消注释另一项。

x86_64架构,可以在内核中生成 kernel.elf 后,退回用户态执行 make ci-gendisk 操作

编译用户程序

~~直接进入 devcontainer 并不能 make user。CI 容器中不含 x86_64-unknown-linux-musl 工具链,因此需要手动添加该环境以编译部分用户程序。~~

riscv64已经支持用户程序编译,x86_64部分支持。

Samuka007 avatar Mar 13 '25 09:03 Samuka007