가상 터미널이 "가상"인 이유는 무엇이며 "실제"터미널은 무엇 / 왜 / 어디입니까?


169

질문이 자명 한 설명이 되길 바랍니다.

나의 이해는 그이다 gnome-terminal하고 konsole있습니다 가상 터미널, 그들은 기본적으로 다양한 선택적 명령 인터프리터에 대한 명령 행 환경, 즉 동일한 목적을 제공하고 있습니다. (올바른 방법인지 잘 모르겠습니다.)

나는 가정 실제 터미널 내가 잘못 키 입력에 의해 occasionaly 순간 이동하고있는 곳입니다 Ctrl+ Alt+ F1, F2

그러나 그 검은 화면 배후에는 "용이있다"는 것입니다. Ctrl+ Alt+를 누를 수있는 한 빨리 F7나가야합니다.

  • "진짜"터미널 (들) 뒤에 존재하는 한 (들) /입니다인가 Ctrl+ Alt+ F1, F2등 키는?
  • 그리고 "가상"과 그들에 대해 "실제"는 무엇입니까?
  • 그리고 그들은 어떻게 다릅니 까? "GUI 없음"대 "GUI"만큼 간단합니까?

PS는 "콘솔"과 "터미널"의 동의어입니까?


21
명령 행을 두려워하지 마십시오. 익숙해지면 어떤 일을 할 때 훨씬 쉽게 생활 할 수 있습니다.
Larry Coleman 1


8
@Larry : 당신의 말에 의해 대사되고, 나는 용의 은신처 (Ctrl + Alt + F1)에 뛰어 들었고, 실제로 이번에 로그인했습니다! ... 침묵이있었습니다. X) .. 재미 있고 짐승을 부르는 용감한 분위기를 느꼈습니다. "echo $ TERM"이라고 말하고 보라! 그것은 나에게 다시 말했다! "linux"라고 말했습니다. "xterm"이라고 대답하는 "gnome-terminal"과 "konsole"의 사촌이라는 사실을 깨달았습니다. 결국 드래곤이 아니라 가상 터미널입니다. 리눅스 (실제) 터미널 모방.
Peter.O

5
리눅스 콘솔을 두려워하지 마십시오 : 그는 매우 강력하지만 길들인 드래곤이며, 충돌이
발생할

또한, 당신은 그를 사촌이라고 부를 수 있습니다 gnome-terminal. 그래픽 환경에 의존하지 않고 약간 더 많은 권한을 부여하는 장치에 연결된 사촌.
MestreLion 2019

답변:


136

내 이해는 가상 터미널이 기본적으로 동일한 목적을 제공한다는 것입니다. 다양한 옵션 명령 해석기의 명령 행 환경

이것은 사실이 아닙니다. 가상 터미널은 단순히 키 입력을 보내고 백그라운드에서 프로세스로 출력 (표준 입력, 표준 출력 [및 표준 오류라고 함)을받는 프로그램입니다. 이것은 기본 입력처리출력 시스템이며 운영 체제의 핵심입니다.


텔레타이프 (또는 텔레 프린터)


컴퓨터 터미널에서 일하는 남자

내가 제대로 설명 할 수 있는지 봅시다 :

리눅스와 같은 유닉스 계열 시스템에는 "모든 것이 파일 이다 " 라는 개념 이있다 . 예를 들어 DVD 드라이브는 파일 (/ dev / sdb1)이고 키보드는 파일 (/ dev / input / keyboard) 등입니다.

이러한 마법 파일의 또 다른 세트는 TTY이며, 여기서 TTY는 Teletype을 나타냅니다. 키 입력을 컴퓨터로 보내고 타자기는 다시 Type Ball으로 문자를 보냅니다 . 이것은 / dev / lp0이 프린터를 나타내는 것과 같은 방식으로 물리적 장치 인 원격 타자기를 나타냅니다.


하드웨어 단자 VT100

Teletype 워크 스테이션은 실제 터미널과 달리 가상 터미널 인 "콘솔"또는 "터미널"이라고했을 것입니다. 따라서이 작업 공간과 동일한 기능을 제공하는 응용 프로그램이나 기계 장치는 키 입력을 통해 컴퓨터에 액세스합니다. 그것에 인쇄하고 다시 출력물을 받아 종이에 인쇄합니다. 모뎀이 매우 유사한 방식으로 작동한다고 상상할 수 있습니다.

위의 그림과 같은 터미널 은 텔레타이프의 기능 을 에뮬레이트 하는 저렴하고 간단한 컴퓨터입니다 . 요즘 터미널 에뮬레이터라고 할 때 일반적으로 이러한 기계의 기능을 에뮬레이트하는 프로그램을 의미합니다.

터미널 기반 컴퓨터 시스템이 여전히 사용 중입니다. 그들은 실제로 점점 더 인기를 얻고 있습니다. 과거에 터미널의 이유는 모든 책상에있는 컴퓨터가 완전히 말도 안되기 때문입니다. 컴퓨터가 방을 가득 채우고 엄청나게 비쌌습니다. 이제 비용을 절약하고 관리가 쉬워졌습니다.


"씬 클라이언트"– VT100의 최신 버전

도움이 되길 바랍니다. 내가 실수 한 경우 알려주십시오.


Control-Alt-F1, F2 등도 가상 터미널이며, "gnome-terminal"/ "konsole"과 GUI의 유일한 차이점은 GUI가 없다는 것입니까?

예, 기본적으로 TTY1-7과 gnome-terminal의 차이점은 시스템이 tty를 제공하는 반면 gnome-terminal 및 konsole은 자체적으로 tty (그래픽 서브 시스템을 실행)에서 실행되고 있다는 것입니다. 이 추상화는 더 깊이 중첩 될 수 있습니다 (예 : x 포워딩, 텔넷 프로토콜을 사용하여 터미널로 작동하는 등). 휴먼-컴퓨터 인터페이스 는 다른 파일처럼 작동합니다. 같은 방식으로 파이프, 추상화 및 이동이 가능합니다.


15
답변이 도움이 되었습니까? ...물론!! ... 매우 잘 설명했습니다 ... 나는 키보드를 파일로 생각하지 않았지만 의미가 있습니다 (읽기 전용 파일) ... 그리고 "씬 클라이언트"는 내가 들었던 말입니다. 팟 캐스트도 있지만, 머릿속으로 돌아가서 새로운 CPU 아키텍처 (a-la RISC)를 언급했다고 생각했지만 실제로는 좋은 아이디어가 사라지지 않고 CICS (또는 최소한 자손)라는 의미입니다. )는 여전히 살아 있고 잘 ... 매우 흥미 롭습니다 ... 감사합니다 (이제 좀 더 읽을 거리가 있습니다 ... 당신은 무언가를 시작했습니다 :)
Peter.O

19
이것은 약간 무작위이며 Linux와 관련이 없지만 적은 것은 아닙니다. 컴퓨터가 실제로 어떻게 작동하는지에 대한 기본 사항을 배우고 싶다면 twit.tv/sn을 들어 보십시오. - 에피소드 233, 235, 237, 239 및 241 . 기본은 "낮은 수준"을 의미하는 "절대 기본에서 컴퓨터가 작동하는 방식"에 대한 시리즈입니다. 많은 사람들이이 물건을 알지 못합니다 . 정말 재미 있습니다.
Stefano Palazzo

1
트윗 담아 가기 고마워요. 의도적이지 않고 실수 일뿐입니다 :)
Stefano Palazzo

4
VT-100은 가상 터미널이나 터미널 에뮬레이터가 아닌 (비디오) 터미널로 간주되었습니다. 자체 마이크로 프로세서를 포함하는 많은 장치는 사용자에게 직접 입력 및 출력을 제공하도록 설계된 한 다른 장치에 관계없이 터미널로 간주됩니다. 컴퓨터 / 휴먼 인터페이스가 터미널 전용이 아닌 장치의 소프트웨어로 구현되는 경우 해당 인터페이스 또는 소프트웨어를 가상 터미널이라고합니다. 전체 장치의 목적은 사용 된 기술이나 통신 프로토콜이 아니라 차이점입니다.
존 S Gruber

2
@JohnSGruber VT100과 그 친족들은 '비디오'터미널로 정확합니다.이 답변의 맨 위 사진 인 종이 기반 TTY와 구별됩니다. TTY에 비해 VT의 세 가지 이점은 훨씬 더 조용하고 낭비되는 용지는 없었지만 (항상 좋지는 않았지만 스크롤이 없었 음), 속도-TTY는 VT가 할 수있는 110baud (10char / sec)로 제한되었습니다. 19,200baud, iirc까지 올라갑니다. 나중에 그들은 들어오는 신호를 처리하고 텍스트에 색상을 추가 할 수있는 VT 인 '스마트 터미널', 심지어 가격에 대한 그래픽까지 만들었습니다.
집시 Spellweaver

14

"가상 터미널"이라고 부르는 것은 유닉스 서버에 물리적 터미널이 연결되어있을 때 되돌릴 수 있습니다 ...


알았어 .. 멀티 태스킹이 존재하기 전에 "그 당시"라는 의미가 있습니다. 그 아이디어는 추상적이면서 "가상적"이었습니다. 따라서 가상 머신과 하드웨어 "박스"와 같은 아이디어입니다. ".
Peter.O

2
Control-Alt-F1, F2 등도 가상 터미널이며, "gnome-terminal"/ "konsole"과 GUI 의 유일한 차이점은 GUI가 없다는 것입니까?
Peter.O


터미널의 휴먼 입 / 출력 끝이 실제로 / dev / pts / *를 통해 실행중인 프로세스에 연결되기 때문에 virtual입니다. 비가 상 터미널은 Linux 텍스트 콘솔 (키 입력을 터미널 입력 문자로 변환하기 위해 커널 코드에서 제공하는 백엔드 및 색상, 커서 이동 등을위한 이스케이프 코드 처리를 포함하여 화면의 문자로 터미널 출력으로 제공)과 같은 것입니다. 또는 비가 상 터미널의 가장 오래된 예인 직렬 포트. 직렬 포트에 연결된 모든 것이 제공하는 터미널 처리. 직렬 포트에서 텍스트 콘솔로 부팅 할 수 있습니다.
Peter Cordes

13

위의 답변 외에도 터미널에 대한 포괄적 인 설명을 참조하십시오 . TTY는 명백한 단순성에도 불구하고 개념적으로 Linux에서 다소 복잡한 부분입니다.


1
고마워 loevborg. 이 기사는 "신비한"용어를 설명하기 위해 먼 길을
간직한
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.