alt
Home 커널모드 vs 유저모드
Post
Cancel

커널모드 vs 유저모드

: 중요 자원 관리를 위해 자원에 대한 접근 권한을 다르게 갖도록 모드를 두개로 나눈 것


유저모드

  • 제한적인 접근 권한을 갖는다.(하드웨어 접근 불가)
  • 애플리케이션 코드 실행(새로운 프로세스 실행)
  • 시스템에 영향을 주는 악의적인 명령을 수행하지 못하도록 막는다.
  • 유저모드 특권 level을 갖는다.

커널모드

  • 컴퓨터 내 모든 자원에 접근 가능: 메모리, CPU 제어, 외부 process 호출
  • 운영체제 코드, device driver
  • 컴퓨터 부팅 시 시작된다.
  • 커널모드 특권 level을 갖는다.


모드간 전환

  • 유저 -> 커널
    • 인터럽트 or 시스템 호출 발생 시.
    • 주로 프로세스가 유저모드로 수행하다가 특별한 요청(시스템에 영향을 줄 수 있는)을 할 때
  • 커널 -> 유저
    • 요청받은 Task를 처리하고 system call의 리턴값으로 전해준다.

kernel_user_mode


Mode bit -> 듀얼모드

: 0일때 커널모드, 1일때 유저모드로 구분짓는다.



Reference)

https://notesformsc.org/operating-system-structure/

https://blckdmask.tistory.com/69

This post is licensed under CC BY 4.0 by the author.