2024秋冬季训练营【专业阶段】群内问题汇总
胡柯洋2024/10/26 00:05:56提问2025/03/31 18:40:32更新
    q&a
1485

第二阶段需要完成的5个实验分别在【3/4/5/6/8】5个章节,必须按指导书【要求的文件名】添加实验报告后才会通过测试。

第二阶段将于11月10日截止,请同学们记得提交实验


1. rCore-Tutorial 代码,如何提交结果并评测 ?

	git add ${YOUR_MODIFIED_FILES} (generally git add . will work)
	git commit -m"Your commit message"
	git push origin ch<Number>

一般来说,在项目根目录下执行或者在 os 目录下执行都可以,但要注意,在某个子目录下执行 git add . 操作时,git 只会将当前目录以及当前目录的子目录下的文件加到暂存区,请确保 git add 上了所有你所修改的文件

推荐看一下 教程 学习 git 的基本用法


2. 完成代码后,如何进行本地测试?

参考实验指导书 grading 一节,

这个命令会 clone 评测脚本仓库到项目目录的 ci-user 文件夹,以及用户程序测例程序到项目目录的 ci-user/user 文件夹,切换到被测分支,

	cd ci-user && make test CHAPTER=$ID 

即可进行本地测试

(本地测试的过程与同学向 GitHub 远程仓库提交之后触发的 action 评测流程基本是一致的,通过本地测试即可排查错误,建议在提交评测之前先进行本地自测。

注意:评测脚本只会复写两个实验同学不应修改的文件,可以

		git restore os/Makefile
		git restore os/build.rs

复原。

我们默认晋级第二阶段的同学有一定的 git 知识,没有在指导书里再额外说明这些修改


3. 尝试本地运行的时候 QEMU 卡住不输出怎么办?

优先考虑 QEMU 版本问题,见指导书 QEMU 一节的说明 ,我们推荐使用 QEMU 7.0.0 版本进行实验(可能需要大家手动编译一个 QEMU)


4. 本地运行 ci-user 中的脚本进行测试时,输出结果都对,但OK后的数字串不对导致不通过怎么办?

可能是由于 hash 值不一致导致的误判

请优先检查自己的代码输出,确认输出无误后,可以尝试删除 ci-user 目录 (`rm -rf ci-user`), 重新 git clone 拉取后重新进行评测


5. 第二阶段开始需要提交blog,blog是什么?

请参照 https://opencamp.cn/os2edu/bbs/1382 第19问

每个阶段结束后需要写总结报告,第二阶段需要完成第一、二阶段的blog

总结报告和每个实验的实验报告是两回事,都需要完成。


6. ch3完成后排行榜没有显示分数怎么办?

1. 如果 Actions 中显示通过或 Deply to pages 失败:

打开自己仓库 ( github.com/LearningOS/2024a-rcore-XXXX ) 点击 【Sync fork】,然后点 【Update branch】,即可自动 merge 修复模板仓库。之后还需要自己提交一个新的 commit 覆盖掉 merge 的提交。

2. 如果 Actions 中 basic-test 阶段失败:

检查是否有实验报告文件 reports/lab1.md,或者本地使用 README.md 提供的 Grading 方法测试


7. 部分同学提交后发现总分超过 500 分

比较早从 template-2024a-rcore fork 仓库的同学,其代码仓库中的评测脚本可能带上了 ch7 的评测与分数统计脚本(此问题在最新的 template 仓库中已经被修复),故提交评测后的统计分数可能算上了 ch7 的。

这些“多出来”的分数已经被助教团队修正,所以少数同学的 ch7 分支与 gh-pages 分支可能会有额外的提交或 sync fork 操作。

【再次提醒】:本次训练营要求完成 ch [3,4,5,6,8] ,每个 chapter 100分,总分 500分

回答(3
    推荐问答
      Simple Empty
      暂无数据