User mode Kernel mode
User mode Kernel mode
User mode & Kernel mode
- 하드웨어적 보안을 유지하기 위해 OS는
user mode
와 kernel mode
를 제공 - 프로세스는
user mode
와 kernel mode
를 번갈아가면서 수행됨 - mode bit라는 1비트를 사용해 프로세스가 어떤 모드에 있는 지 구분
- User mode (mode bit: 1)
- 일반적인 사용자 프로그램이 CPU의 제어권을 가지고 실행, 제한된 종류의 CPU 명령 수행 가능
- 시스템에 중요한 영향을 미치는 연산 불가능
System call
이라는 소프트웨어 인터럽트가 발생하면 kernel mode
로 넘어 감
- Kernel mode (mode bit: 0)
- OS가 CPU의 제어권을 가지고 OS의 코드를 실행, 모든 종류의 CPU 명령 수행 가능
- 시스테에 중요한 영향을 미치는 연산은 여기서만 수행함으로 인해 하드웨어의 보안을 지킴
System call
이 요청한 작업이 끝나면 다시 user mode
로 돌아감
References
- https://kosaf04pyh.tistory.com/196