터미널과 쉘

GGUKI·2022년 9월 28일
0

터미널

터미널의 목적

  • 정보를 처리하는 것이 아니라 명령을 다른 시스템에 보내는 것

터미널의 작동 방식

  • 사용자에게 CLI를 제공하며 두 가지 업무 (1. 사용자로부터 커멘트 형태의 인풋을 받는다. 2. 스크린에 출력물을 표시한다.)

터미널에서 명령을 작성한 후 Enter 키를 누르면 터미널은 해당 명령을 다른 프로그램으로 전달하여 사용자가 무엇을 하고 싶은지 파악하는데, 대부분의 경우 해당 프로그램은 셸로 OS의 외부 계층을 형성하여 다음과 같은 기능을 수행한다.

1. 최종 사용자가 제공한 명령을 해석합니다.
2. 명령 구문을 확인한 다음 명령이 올바르게 사용되는지 여부를 확인합니다.
3. 모든 것이 맞다면 셸은 명령을 커널이 이해할 수 있는 형태로 변환하여 커널에 전달합니다.
4. 그렇지 않으면 오류 메시지를 반환합니다.
5. 이전 명령이 올바른지 여부에 관계없이 다음 명령을 기다리는 터미널에 $ 프롬프트가 나타납니다. 

셸이 사용자의 명령을 커널이 이해할 수 있는 형태로 변환하는 즉시 커널은 애플리케이션 소프트웨어와 장치 하드웨어와 상호 작용하는 OS 라이브러리와 장치 드라이버인 두 구성 요소의 도움을 받아 명령을 실행한다.

결론:

“터미널이 TV라면 쉘은 방송이고, 우리가 TV를 켬과 동시에 방송이 송출되는 것과 같이 터미널이 실행됨과 동시에 쉘이 실행되어 명령을 입력할 수 있게 되는 것입니다.”

참고)
https://velog.io/@cataiden/terminal-shell

https://www.geeksforgeeks.org/what-is-terminal-console-shell-and-kernel/

profile
신기술 조아

0개의 댓글