개발

[개발지식] 터미널(terminal), 쉘(Shell), 콘솔(console)

김나나_ 2024. 7. 2. 17:52

터미널(terminal) = terminal emulator

- 소프트웨어(호스트와 통신하는 소프트웨어)

- 서버의 로컬 또는 원격으로 접속할 수 있는 콘솔을 구현한 소프트웨어

- 커맨드를 입력하는 쉘을 실행하기 위한 포장(wrapper) 프로그램

- 터미널 = TV / 쉘 = 방송

 

콘솔(console)

- 하드웨어(물리적으로 직접 호스트에 붙어있는 장치)

- 서버의 로컬 장치에서 직접 명령어를 작성할 수 있는 입출력 장치

- 옛날 컴퓨터를 사용할 때 컴퓨터에 직접 연결하던 장치 

- 물리적 터미널

- 지금은 옛날처럼 물리적 터미널이라고만 정의하지 않고 터미널을 콘솔이라 부르기도 한다.

 

쉘(shell)

- 유저와 커널사이를 이어주는 명령어 해석기

- 실제로 명령어를 전달하고 결과를 전달 받는 프로그램

- 사용자가 명령어를 입력하면 쉘은 사용자가 입력한 명령어를 OS 로 전달하는 명령어 해석기라고 볼 수 있다.

 

* 콘솔 터미널: 콘솔을 이용하여 띄운 터미널

* 원격 터미널: 다른 호소트의 콘솔 혹은 에뮬레이션된 시스템에서 네트워크로 접속해서 띄운 터미널

ex) 보안적인 측면 때문에 어떤 시스템은 원격에서의 접근은 제한하고 있다. 콘솔에서만 접근할 수 있도록 허락 하고 있다.

 

 

 

참고:

https://badstorage.tistory.com/22

 

[개념 정리] 콘솔vs터미널vs쉘의 차이

콘솔 - 하드웨어 (물리적으로 직접 호스트에 붙어있는 장치) 터미널 - 소프트웨어 (호스트와 통신하는 소프트웨어) 쉘 - 유저와 커널사이를 이어주는 명령어 해석기 콘솔 터미널 - 콘솔을 이용하

badstorage.tistory.com

https://higher77.tistory.com/64