본문 바로가기
IT 정보

리눅스]쉘과 커널에 대한 이해

by 완기 2020. 6. 26.
728x90
반응형

출처 : 유튜브 생활코딩 리눅스

위 사진은 IT 관련 전공자들이거나 관심이 있는 분들은 꽤 많이 봤던 그림일 것이다.

 

물리적인 기계인 하드웨어

하드웨어를 제어하는 커널

사용자가 입력한 명령 어등을 커널이 알아들을 수 있게 만들어주는 쉘

등의 구조로 되어있다.

 


1. 사용자가 쉘을 통해서 사람이 알아듣기 쉬운 언어로 명령어를 작성하여 하드웨어를 조작 시도

 

2. 하드웨어는 사람에게 친숙한 언어는 알아들을 수 없기 때문에 커널이 하드웨어가 사용자의 입력을 알아들을 수 있도록 전달을 해주는 역할

(인터페이스의 역할이나 컴파일러의 역할과 비슷하다.)



유닉스 개념을 만든 사람은 왜 쉘과 커널을 분리했을까?

 

쉘은 사용자의 명령을 해석하는 프로그램이다.

이 둘을 분리하게 되면, 여러 가지의 쉘이 생길 수 있고, 사용자가 편한 쉘을 선택해서 사용이 가능하다.

 

 


Bash vs zsh

zsh은 bash가 가지고 있지 않은 몇 가지의 기능을 더 가지고 있다.

예를 들면 디렉터리를 변경하는 과정에서 자동완성을 지원한다던가 형제 디렉터리로 바로 이동할 수 있는 기능 등등...

 

취향에 맞게 선택하면 된다.

출처 : 유튜브 생활코딩 리눅스

쉘과 커널, 사용자 간 흐름도

 

 

728x90
728x90

댓글