OS notes

Basically , links


Threads: User-level vs Kernel

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.