• 커널(kernel)과 쉘(shell)에 관하여

    2021. 2. 22.

    by. 웰시코더

    반응형

    -운영체제(리눅스)를 구성하는 두 가지 요소인 커널과 쉘에 대해 알아본다.


    커널(kernel)이란?


    '커널'이란 운영체제(OS)의 두 가지 구성요소 중 하나이다. 커널은 하드웨어를 직접적으로 제어하는 운영체제의 핵심이며 프로세스 관리, 메모리 관리, I/O 시스템 관리, 파일 시스템 관리 등을 수행한다. 흔히 리눅스의 우분투, 센토스 등의 배포판은 리눅스 커널을 기반으로 만들어졌다고 보면 된다. 리눅스 커널을 기반으로 만들어진 배포판들을 흔히 리눅스라고 칭한다.

    커널은 리눅스가 부팅될 때 메모리로 로드된다.

    쉘(shell)이란?


    '쉘'이란 운영체제(OS)의 두 가지 구성요소 중 나머지 하나이다. 쉘은 커널을 컨트롤할 수 있으며 커널은 하드웨어를 컨트롤한다. 즉, 하드웨어를 유저가 컨트롤하기 위한 인터페이스라고 볼 수 있다.

    쉘의 종류는 bash, zsh 등이 있다.

    사용가능한 쉘의 목록을 확인하려면 다음과 같이 명령어를 입력한다.

    cat /etc/shells을 입력하면 사용가능한 쉘의 종류를 확인 가능


    커널과 쉘의 관계도 및 흐름


    유저,쉘,커널의 관계도



    유저가 CLI를 통해 명령어를 입력하면 명령어가 쉘에게 전달된다. 쉘이 명령어를 커널이 이해할 수 있게 번역해 커널에게 넘긴다. 커널은 이 명령어를 통해 하드웨어를 컨트롤하여 다시 유저에게 output처리를 한다.



    출처 : 생활코딩 리눅스 강의, studymake.blogspot.com/

    반응형

    댓글