본문 바로가기

컴퓨터공학

[1일1cs] 커널 기초

커널은 프로세스와 하드웨어를 잇는 중요 인터페이스로,

이중 실행 모드를 제공함으로써 시스템 호출 및 보안의 핵심이고, 메모리 관리 프로세스 관리 그리고 프로세스와 하드웨어 사이의 중재자 역할을 한다.

 

여기서 이중 실행 모드란 커널모드와 유저모드가 있는데

커널모드에선 일반모드에서 갖지못하는 특권, 즉 모든 CPU 제어권을 갖을 수 있다. (이때 사용하는 것이 fork() 등의 system call) 그러므로 어떠한 명령도 실행할 수 있다. 

일반 모드에선 일반 권리 즉 데이터 입출력 저장 계산등의 명령만 실행 가능하다.

 

+a 커널은 스스로 실행되는 프로세스가 아닌 시스템 호출을 통해 호출된다.

커널은 실행중인 대상이 아니다.

커널은 stack 과 heap을 갖지 않는다.