Rusty Blog

My rusty corner on the Web.

View the Project on GitHub EchoStone1101/RustyBlogs

22 September 2023

ICS: Datalab Preview

by EchoStone

2023 Fall Semester

时间节点

Due Time: 10.4

Deadline: 10.6

这应该是你会遇到的最简单的lab了,非常不建议把graceday花在这里!

不要压线提交,届时服务器可能会波动。

一切评分以autolab显示为准。

基本操作

考虑到这是大家第一个lab,这里帮助大家再熟悉一下lab相关操作。

初次登陆,访问 autolab.pku.edu.cn,点击“Forgot your password?”,输入学号对应的邮箱,然后点击确定,更改新密码即可。

所有 Lab 的相关文件都会在 Autolab 网站更新,打包成一个 tar 文件(Unix系统上的打包文件格式);你可以选择直接在虚拟机环境里下载(如果你的虚拟机已经联网),也可以下载到主机,再用拷贝或scp的方式将其传入虚拟机 / Class Machine。

不建议在非 Linux 的环境解压 handout。MacOS 由于是类 Unix 系统,双击可以直接解压,不过可能会存在格式问题。往年经常有因为这个导致 Lab 内容污染,无法 build 成功的例子。

在命令行中输入

ssh -p PORT YOUR_ACCOUNT

即可登陆class machine(校外同学需要北大VPN);为免麻烦,可以在~/.bashrc中增加别名:

alias autolab="ssh -p PORT YOUR_ACCOUNT"

并在命令行运行

source ~/.bashrc

此后你每次登陆class machine,只需要输入autolab即可。

使用 scp 来把你的 handout 传到虚拟机或 Class Machine上。scp的操作与ssh基本类似:

scp -P PORT datalab-handout.tar YOUR_ACCOUNT:~/
tar -xvf datalab-handout.tar
  • 注意tar命令会无报警地覆盖输出到的目标文件。比如,在你已经做完的 Lab 文件夹外,再次运行tar,会直接覆盖你的进度(我为什么会知道呢x)!

可能的问题

bits.c 开头有一小段详细的注释,解释了在这个 Lab 过程中的一些通用限制和细节。请务必自己仔细阅读。以下是几个可能遇到问题的注意事项:

建议

如何提交

这个Lab只需要你提交bits.c到 Autolab 的相应界面。你当然可以拷贝文件内容,再在主系统上创建一个临时的提交文件拷贝进去。不过,这正好可以用来练习一下scp的用法~

提交之后,你可能需要等待一段时间,才可以在 Scoreboard 看到自己的分数。如果有问题,请先自己尝试解决;但也注意提交上限的限制(提交页面右下角会显示)。

Fun Fact: 本 Lab 会按操作符的总数对提交进行排名;如果你名列前茅,不妨改些有趣的用户名,博大家一乐x

tags: ICS