I'm trying to better understand the process of switching from user mode to kernel mode on linux systems.
When a process requires access to the low level HW/restricted memory spaces, does it issue a system call to the kernel and the kernel runs the code on its behalf and passes the information back to the process ? or does the kernel put the process in a privileged mode and now the process itself is running in kernel mode and has access to whatever resources it requested ?
Thanks !