반응형
터미널(terminal)
터미널(terminal)은 컴퓨터와 사용 간에 상호작용할 수 있게 연결하는 장치이다. 컴퓨터와 사용자의 상호작용에서 가장 중요한 것은, 사용자가 컴퓨터에게 명령을 전달하고 컴퓨터는 해당 명령을 수행한 결과를 사용하게에 전달하는 것이다. 사용자가 컴퓨터에 명령을 전달하는 장치를 입력 장치, 컴퓨터가 사용자에게 결과를 보여주는 장치를 출력 장치라고 한다.
이 당시 터미널은 입출력을 위한 도구일 뿐이었다. 실제 연산은 터미널과 연결된 메인프레임(mainframe, 대형 컴퓨터)에서 수행했다. 요즘은 이런 터미널을 사용하지 않는다. 그 대신 소프트웨어로 동작하는 가상 터미널 프로그램을 사용한다. 운영체제에 설치된 명령 프롬프트 같은 터미널 프로그램이 바로 가상 터미널이다.
터미널의 독립성
터미널은 독립적이다. 즉, 터미널은 다양한 셸을 실행할 수 있는 환경만 제공한다.
예를 들어, 동일한 터미널에서 bash, zsh, 또는 fish와 같은 여러 종류의 셸을 실행할 수 있다.
셸(Shell)
셸(Shell)은 CLI 프로그램이다. 사용자는 셸을 통해 운영체제에 명령을 내리고 결과를 확인한다. 터미널은 컴퓨터와 사용자 간 상호작용할 수 있는 하드웨어라면, 셸은 운영체제와 사용자 간 상호작용을 지원하는 소프트웨어이다.
다양한 셸의 종류
- Csh(C SHell)
- Ksh(Korn SHell)
- Ash(Almquist SHell)
- Bash(Bourne Again Shell) 등등
터미널과 셸의 관계
- 터미널은 사용자가 셸과 상호작용할 수 있는 창구이다.
- 셸은 사용자의 명령을 해석하고 판단하여 운영체제에게 전달하고 결과를 반환한다.
- 이 둘은 함께 사용되지만, 독립적으로 동작할 수 있다.
- 현대 운영체제는 가상 터미널과 다양한 셸을 제공하여 사용자에게 유연하고 강력한 사용자 인터페이스를 제공한다.
'프로그래밍 > 운영체제' 카테고리의 다른 글
Ubuntu 파일, 폴더 소유자 변경하기 (0) | 2024.12.09 |
---|---|
코딩 자율학습 리눅스 입문 with 우분투 학습 1일차 정리 (0) | 2024.11.26 |
서비스(Service) vs 데몬(Daemon) (0) | 2024.03.25 |
시스템 콜, 시스템 호출(System Call)이란? (1) | 2024.02.05 |
커널 오브젝트(Kernel Object)에 대해서 (2) | 2024.01.24 |
댓글