[컴퓨터 기초] 커널(Kernel)과 쉘(Shell)의 기초 개념

jinShine
jinshine 기술 블로그
2 min readMay 10, 2018

커널(Kernel)과 쉘(Shell)대해 알아 보겠습니다.

커널과 쉘사용자가 입력한 명령어는 일련의 과정을 거쳐 하드웨어를 제어하게 됩니다. 사용자가 명령어를 작성하고 조작하기까지 이 사이에는 몇 가지의 과정을 거쳐서 수행을 하게 되는데, 우리가 명령어를 입력하게 되면 컴퓨터 내부에서는 쉘(Shell) 이 이를 받아들이고, 명령어를 해석하여 커널(Kernel) 을 통해 하드웨어를 조작합니다. 즉, 제일 하단에는 하드웨어가 있고, 그 위에는 커널, 커널위에는 쉘, 그리고 쉘 위에는 사용자가 존재하여 사용자 유저의 입력을 받게 됩니다.

커널

커널은 운영체제의 핵심입니다. 쉽게 말해, 소프트웨어와 하드웨어간의 커뮤니케이션을 관리하는 프로그램입니다.
운영체제에서 가장 중요한 구성요소로서 입출력을 관리하고 소프트웨어로부터의 요청을 컴퓨터에 있는 하드웨어(CPU, 메모리, 저장장치등)가 처리 할 수 있도록 요청을 변환하는 역할을 한다. 이렇게 하드웨어를 관리하고 필요한 프로세스를 나눠주는 등 여러 시스템 자원을 제어하고, 컴퓨터 부팅시 부트로더에 의해 로드되어 항상 메모리에 상주하게 됩니다.

사용자와 운영체제간에 대화를 가능하게 해주는 명령어 해석기 역할을 말합니다.
사용자(명령) -> 쉘(해석) -> 커널(명령 수행 후 결과 전송) -> 쉘(해석) -> 사용자(결과 확인)

--

--