Hack
查看原帖
Hack
188950
AzusaShirasu智能机娘楼主2025/5/13 23:43

已经通过本题。

该方法与底层基本无关,仅利用了 C++ 特性:带有 __attribute__((constructor)) 标签的函数(包括全局对象的构造方法)会在主函数之前被调用,因此可以利用这点在 grader 添加 seccomp 限制之前提前分配共享内存。之后对共享内存的读写并不需要调用系统函数,因此不会触发。

提供可能的修正方案:将 grader 的评测逻辑直接放置在最高优先级函数,即 __attribute__((constructor(0))) 里。

但是不知道 grader 和提交代码是不是同一个编译单元,如果跨编译单元(跨文件),调用 ctor 的顺序可能不确定。

其实就是赛跑,谁的代码先运行谁赢。

2025/5/13 23:43
加载中...