runner: prepare exec flow and sync syscall core APIs
本次 MR 内容
本 MR 同步 runner 分支当前进度,并接入 syscall/process 侧拆层后的基础接口。
主要内容:
- runner 已完成
/glibc/basic_testcode.sh读取; - runner 已能解析:
program = /glibc/busyboxargv[0] = busyboxargv[1] = echoargv[2] = #### OS COMP TEST GROUP START basic-glibc ####
- runner 已打印 execve flow marker:
[runner] execve start: /glibc/busybox
- 已确认
kernel_execve/kernel_wait4只能在已有 task/process 上下文中调用; - rust_main 阶段暂时只保留 parse + marker,不直接调用 exec/wait;
- 更新
docs/RUNNER_STATUS.md,说明当前完成度和阻塞点。
验证命令
cd oskernel && make kernel-rv && cd ..
QEMU=$(which qemu-system-riscv64) bash scripts/run_ours.sh
grep -nEi "runner|program|argv|execve|busybox|wait4|shutdown|panic|unsupported" logs/ours/qemu.log
cat logs/ours/exit_code.txt
##当前结论
当前 runner 已完成脚本读取、program/argv 构造和 execve marker。
真正 execve/wait4 闭环尚未完成,原因是当前 runner 在 rust_main 阶段运行,没有 current task/current process;后续需要将 exec/wait 迁移到 task/process 上下文中。