OS161 execv System Call
Basically, execv
do more or less the same thing with runprogram
in
$OS161_SRC/kern/syscall/runprogram.c
. The overall flow of sys_execv
are:
- Copy arguments from user space into kernel buffer
- Open the executable, create a new address space and load the elf into it
- Copy the arguments from kernel buffer into user stack
- Return user mode using
enter_new_process