Skip to content
This repository was archived by the owner on Aug 22, 2024. It is now read-only.

neuq-rcore/rCore

Repository files navigation

neuqOS 技术文档

NEUQ

初赛情况简介

本团队已通过初赛所有测试点( 2023-05-28 ),严格遵守大赛章程,全程开源且本团队所有成员承诺不存在抄袭现象。

target_rank

所有文档

请查看 文档总目录


自动化测试

Category Badge
Code reliability Continuous Integration
Preliminary test OJ Simulation
Final test Test Final
Host-level test Unit tests
Auto mirror Sync to GitLab
Cache maintenance Cache maintenance

准备工作

构建

# or simply run `make`
make build

运行

make run

测试

本地测试

在仓库根目录执行:

make test

这将模拟比赛的评测环境,首先执行 make all ,然后使用要求的 Qemu 启动参数挂载测试样例并运行内核进行测试。运行结束后,测试脚本 test/visualize_result.py 将会生成测试结果的可视化报告。

左图为生成的可视化报告的一个例子,右图为本项目的最终报告:

visual_report final_score

对于每个测试,

  • Skiped 表示测试未进行,或者该测试样例未输出结果就被内核杀死

  • Failed 表示测试已经执行,且有输出,但是测试结果不符合预期

  • Passed 表示测试通过,输出结果符合预期

其中,[x/y] 表示单个测试的结果,x 为测试通过的测试点数量,y 为该测试的测试点总数。

最后会给出测试的总体结果和得分。

持续集成测试

对于submit分支下的每次提交(将来会合并到 main 分支),都会有一个 GitHub Actions workflow 自动运行测试。测试过程基本符合上述本地测试的流程,但是会在测试结束后将测试结果,Qemu输出和测试脚本对输出的判断结果都上传到 GitHub Actions 的 artifacts 中,以便查看详细的测试结果。同时,可视化脚本也会运行,无需下载 artifacts 即可查看测试结果。

调试

命令行界面

通过 GDB 启动 QEMU 模拟器

make debug

连接至 GDB 服务

make connect

生成运行日志

make run LOG=<level>

VSCode

在 VSCode 中打开项目,按下 F5 进行调试。

参赛队员

徐才益

薛丁豪

白聪

参考文档

知识产权与学术诚信

  • 本团队仓库在初赛期间全过程保持开源状态

  • 本团队全程严守诚信,不存在抄袭谎报现象

鸣谢

郑重感谢 rCore-Tutorial-Book 教程带领本团队进入 RISC-V 标准的操作系统世界,本团队会在今后的 RISC-V 之路上越走越远,希望本团队能为 RISC-V 社区贡献自己的一份力量。

许可

MIT

第三方许可声明

联系我们

如若有问题欢迎与本团队联系,我们会在第一时间给您回复,邮箱 [email protected] ,欢迎您踊跃参与。

About

Kernel for riscv in Rust🦀

Resources

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
license-generator.py

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •