- 提高工作效率,防止比赛延时或技术组熬夜
- 加强比赛的安全性
- 为举办省赛、区域赛做好准备
写这玩意有用吗?(暴论)
你要和国内外先进水平接轨的话买些专用机器,把体育馆给我们办比赛啊,还用搞这些东西 (低情商)
XX 大学已经成功举办了 ICPC World Final,使用了 XX XX 技术 [参考文献114514],具有 XX XX 等优点,但是需要 XX XX 等我校不具备成本较高的设备 (高情商)
XXXX 学院已经成功举办了区域赛,并在自己举办的区域赛夺得金牌 (删掉)
已经完成
- 目的:即插即用,降低工作负担,同时避免使用虚拟机,因为虚拟化可能对评测造成奇怪的影响
- 技术积累:xry111 是 LFS/BLFS 编辑,熟悉 Linux 系统的构建和引导过程
- 技术路线:
- 硬件上,要使用具有固态硬盘主控的闪存盘,否则实践证明会卡死
- UEFI boot (“传统”的 “USB-HDD”,“USB-ZIP” 之类就是一坨💩,谁都不知道换台机器还能不能用)
- 将 Judgehost 的工作目录 (含选手程序使用的 chroot 环境) 加载到 tmpfs 中
- 存储空间限制到 2GB,保证给选手程序留出足够的内存空间
- 如有必要把测试数据存储单独拿出来放 U 盘上 (目前并没有必要)
- 选手程序输出进行比较后直接删掉,否则可能爆炸
- 网络配置直接由 systemd-networkd 通过 DHCP 进行,仍需要手动修改
/etc/hostname
和 /etc/domjudge/restapi.secret
- 目前除 Kotlin 支持外已经在实验室环境测试完成,将在 2021 年校赛 (本次比赛不需要支持 Kotlin) 投入使用
基本功能已经完成:https://github.com/xdu-icpc/dj-balloon-printer
- 目的:买个超市打小票的打印机用来自动打气球通知单,就不用手抄了
主要问题是不知道这种打印机的驱动好不好装,搞不好还得自己写
- 热敏打印机不用驱动也能直接用 ESC/POS 指令通过串口直接操作,写个一百多行程序应该就行了
- 目前已经订购打印机,并学习了 ESC/POS 指令的基本概念,预计在 2022 年校赛投入使用
尚需改进
- 将打印数据直接转发到气球室,然后直接在气球室打印会更好
- 可以用 SSH 转发 DOMJudge 的 80 端口
- 也可以用 ncat 转发打印数据
- 还可以用串口无线传输技术
- Samba 狗都不用!
- 要换成带自动切纸功能的打印机
已放弃:据机房老师说可以配置机房交换机作为 DNS
- 目的:分配 IP,允许比赛服务器使用域名,从而在不需要选手人工安装证书的前提下支持 HTTPS,提高比赛的安全性
- 技术积累:LFS/BLFS 中提供了 DHCP 和 BIND 软件包
- 技术路线:
- 将它单独运行在一台机器上,不要和 DOMServer 挤一起 (降低压力)
- 可以复用评测机的平台,只是将 Judgehost 换成 DHCP 和 BIND 服务器
- 正在实验室环境下搭建和测试,
计划在 2021 年校赛投入使用
- 由于 E 楼实验室是静态 IP,这次没法用
由于没有紧迫需求,推迟
- 目的:不再使用 ICPC 官方的屑工具 (需要 Java,而且难以配置) 滚榜,允许向 Codeforces Gym 或新 XDOJ 同步榜
- 尚无时间表