Question: When a process makes a system call with arguments, e.g. retval= read(fd1, buf, cnt) many operating systems pass these arguments in registers, but xv6
When a process makes a system call with arguments, e.g. retval= read(fd1, buf, cnt) many operating systems pass these arguments in registers, but xv6 passes them in memory. Which of these statements is true? These arguments are passed on the user call stack, because the process cannot access the kernel stack until the system call instruction is executed, at which time arguments must be in their expected location These arguments are passed on the user call stack, because the process does not know which kernel stack will be used until after the system call instruction is executed O These arguments are placed in the process's kernel stack, so that they will be accessible from kernel code O These arguments are placed in the process's kernel stack by the system call instruction
Step by Step Solution
3.44 Rating (157 Votes )
There are 3 Steps involved in it
The image presents a multiplechoice question related to how arguments are passed during a system cal... View full answer
Get step-by-step solutions from verified subject matter experts
