우리가 명령어를 입력하면 컴퓨터 내부에서 Shell이 이를 받아들이고, 명령어를 해석하여 Kernel을 통해 하드웨어를 조작한다.
사용자(명령) -> Shell(해석) -> Kernel(명령 수행 후 결과 전송) -> Shell(해석) -> 사용자(결과 확인)
커널은 운영체제의 핵심으로 소프트웨어와 하드웨어 사이의 커뮤티케이션을 관리한다. 하드웨어와 가장 가까이 위치한 일종의 프로그램이다.
사용자가 직접 시스템의 중요한 자원 및 요소를 제어하면 문제가 생길 수 있으므로 커널이 이를 대신 수행하게 된다.
운영체제의 가장 중요한 구성요소로 입출력을 관리하고 소프트웨어로부터의 요청을 컴퓨터에 있는 하드웨어가 처리할 수 있도록 요청을 변환한다.
이를 통해 하드웨어를 관리하고 시스템 자원을 제어한다.
사용자와 운영체제 사이의 대화를 가능하게 해주는 명령어 해석기 역할을 한다.
사용자의 응용프로그램과 커널 사이에 위치해서 사용자와 응용프로그램을 중계한다.