Redox kernel
System calls are generally simple, and have a similar ABI compared to regular function calls. On x86_64, it simply uses the syscall
instruction, causing a mode switch from user-mode (ring 3) to kernel-mode (ring 0), and when the system call handler is finished, it mode switches back, as if the syscall
instruction was a regular call
instruction, using sysretq
.