提交内容

需要提交的文件

本次实验需要提交:

  • 所有你曾对xv6进行的更改;
  • 一个实验报告。任务三的问答题答案请写在实验报告内。

如何得知自己曾对xv6进行过那些更改?

参照实验实用工具-3.5.2节,可以使用git diff命令检查自己曾经修改过哪些文件。

提交格式要求

被修改的文件如果曾经位于kernel文件夹,那么请在提交包中创建一个kernel文件夹,并将对应代码文件放置于该文件夹内。
同理,如果你曾经修改过user文件夹的文件,请将其放置于提交包的user文件夹中。
最好不要嵌套压缩包。
你的实验报告应当使用pdf格式,并被命名为实验报告.pdf

为何命名和格式如此重要?

我们使用自动评测脚本来评测大家的提交。如果你所提交的文件名字或者格式不对,这会导致自动评测脚本找不到对应的文件,进而导致编译失败、评测0分。

部分修改不会被接受

一部分代码文件,比如sysinfotest.c等,为了评测环境公平,不允许同学们修改。如果你的代码依靠修改这些评测程序以通过评测,请重新审视一下自己的代码。

一个可能的提交包文件结构

如下图所示。这位同学将代码统一放在了一个代码文件夹中。kalloc.c等原本位于kernel文件夹中的文件,现在也被放置于kernel文件夹下;这位同学自己写了一个my_custom_command.c,并为其修改过Makefile,为防止编译不通过,该文件也可以被提交;位于根目录下的Makefile等文件则被同样放置在了代码文件夹的根目录下。
如果不想创建代码文件夹,可以将kernel文件夹等直接放在提交包的根目录;为其更换名字、或者在外面再套几层文件夹也是可以的。不过,我们建议使用类似的提交包结构,这样可以显得更清晰易读。

200xxxxxx-某某甲-file.zip
├── 代码
│   ├── Makefile
│   ├── kernel
│   │   ├── kalloc.c
│   │   ├── syscall.c
│   │   ├── syscall.h
│   │   └── sysinfo.h
│   ├── user
│   │   ├── my_custom_command.c
│   |   └── usys.pl
|   └── time.txt
└── 实验报告.pdf