System call (시스템 콜) : 프로세스가 운영체제에게 운영체제 기능을 요청하는 것, 운영체제가 관리하는 모든 자원을 프로세스가 필요로 할 경우 system call을 통해 사용
ex) open(), exec(), fork(), kill()....
Kernal (커널) : 운영체제의 핵심부분, 운영체제의 다른 부분 및 응용 프로그램 수행에 필요한 여러가지 서비스를 제공한다.
(CPU 스케줄링, 메모리 관리....등)
커널에서 중요한 자원들을 관리하기 때문에, 사용자가 그 중요한 자원에 접근하지 못하도록 모드를 2가지로 나눈 것
유저가 접근할 수 있는 영역을 제한적으로 두고, 프로그램의 자원에 함부로 침범하지 못하는 모드
모든 자원에 접근, 명령을 할 수 있다.
프로세스가 실행되는 동안에는 수없이 많은 유저모드와 커널모드간의 전환이 있다.