전성빈의 사리사욕

[터미널의 사용방법] 커널, 쉘, 터미널 본문

백엔드 로드맵따라가기/OS 및 일반적인 지식

[터미널의 사용방법] 커널, 쉘, 터미널

Been2 2020. 8. 6. 00:13
728x90

커널(kernel)이란?

 

모든 OS들은 커널을 가지고 있습니다. 커널은 OS계층이며 HW와 컴퓨터에서 돌아가는 프로그램들을 연결해주는 역할을 합니다. 커널은 OS의 핵심이며 컴퓨터를 부팅시키면 가장먼저 메모리에 올라옵니다. 그리고는 컴퓨터가 꺼질때 까지 내내 메모리에 상주합니다.

 

커널은 모든 어플리케이션에게 인터페이스를 제공하며 HW를 컨트롤하고 프로세스들이 서로 정보를 주고 받는것을 허락 해줍니다.

 

쉘(Shell)이란?

 

쉘은 커널과 사용자의 사이에 존재합니다. 사용자가 커널을 사용하기 위해 명령어를 입력하면 커널이 읽을 수 있는 이진코드로 해석해줍니다.

리눅스에서는 기본적으로 Bash(Bourne Again SHell)라는 쉘을 사용합니다.

 

 

터미널(Terminal)이란?

 

터미널은 텍스트 기반 명령을 입력하고 실행할 수 있는 인터페이스입니다. 우리가 익숙한 그래픽으로 이루어진 GUI보다 텍스트 기반의 CLI를 통해 터미널을 사용하는 이유는 일부 작업을 완료하는 것이 훨씬 빠르고, 더많은 명령과 그크립트에 접근할 수 있기때문입니다.

 

사용자가 컴퓨터를 조작하기 위해 명령어를 터미널에 입력하면, 쉘(보통은 Bash)이 해당 명령어를 해석하고 커널이 이를 실행하는 구조입니다.

 

728x90