커널모드 kernel mode

sujeong kim·2022년 1월 6일
0

CS-운영체제

목록 보기
4/6

CPU Protection Rings

CPU는 총 4개의 모드로 되어 있습니다. 이는 권한을 의미하는데요. 일반적인 user가 사용할 수 있는 권한은 level3, OS 서비스는 level 1&2, OS는 Level 0인 커널 모드를 사용합니다.

kernel mode

OS 핵심 기능을 사용하기 위한 권한입니다. OS 핵심 기능은 컴퓨터 시스템 전반에 큰 영향을 끼치므로 잘 모르는 유저가 함부로 해치지 못하도록 권한을 따로 두었습니다. shell이 운영체제 기능과 서비스를 조작할 수 있는 인터페이스라고 했는데 달리 말하면 이 커널에 진입하기 위한 툴입니다.

![https://velog.velcdn.com/images%2Fdev_crystal%2Fpost%2F025fb67a-2163-4f86-b053-bf3a2c304331%2Fimage.png%5D(https%3A%2F%2Fimages.velog.io%2Fimages%2Fdev_crystal%2Fpost%2F025fb67a-2163-4f86-b053-bf3a2c304331%2Fimage.png)
위 구조에서 커널 영역은 시스템 호출 인터페이스, 시스템콜 부터입니다. 커널모드를 실행하려면 반드시 시스템 콜을 거쳐야 합니다.

커널 모드의 실행과정

시스템콜 위에 있는 API는 프로그래밍 언어별로 운영체제의 기능을 사용하기 위해 시스템콜을 기반으로 만든 API 입니다. 따라서 프로그래밍 언어로 API를 호출하면 그 API의 내부 코드가 시스템콜을 호출합니다.

  1. 프로그래밍 언어로 a라는 API 호출
  2. a API내부에서 해당하는 시스템콜을 호출
  3. 유저모드에서 커널 모드로 권한이 변경됨
  4. OS 내부에서 해당 명령이 실행되고 다시 유저모드로 바뀜
profile
개발자

0개의 댓글