Basically , links
User/Kernel Mode, Syscall, I/O, Exceptions
- The user-mode program places values in registers, or creates a stack frame with arguments, to indicate what specific service it requires from the operating system.
- The user-mode program then performs the trap instruction.
- Immediately, the CPU switches to kernel mode, and jumps to instructions at a fixed location in memory.
- These instruction, which are part of the operating system, have memory protections so that they cannot be modified by user-mode programs, and may also be unreadable by user-mode programs.
- The instructions, known as the trap or system call handler, read the details of the requested service + arguments, and then perform this request in kernel mode.
- With the system call done, the operating system resets the mode to user-mode and returns from the system call, or there is an instruction to do both at the same time.