유닉스에서 가상 터미널의 개념을 이해하려고 노력하고 있지만 터미널 에뮬레이터의 필요성과 가상 콘솔의 개념을 명확하게 파악할 수 없습니다.
동영상을 보고 있어요연설YouTube에서 강사는 이제 전체 모니터, 키보드 및 마우스 설정이 있으므로 터미널이 없다고 말했습니다. 왜 우리는 그들을 터미널로 취급할 수 없나요? ~에 따르면정의프로세스와 통신하는 데 사용되는 하드웨어 세트인 터미널. 그렇다면 저자는 왜 지금은 터미널이 없다고 말하는 걸까요?
터미널 에뮬레이터가 필요한 이유는 무엇입니까? 강사는 터미널 에뮬레이터가 "x 윈도우 시스템 서버" 사이에 있고 프로세스가 터미널 에뮬레이터를 사용하여 출력 장치와 통신한다고 말했습니다. 그러나 GUI 프로세스의 경우에는 실제로 stdin/stdout용 장치 드라이버와 통신하는 "x 윈도우 시스템 서버"와 직접 통신합니다. 그러나 프로세스가 "x 윈도우 서버"와 직접 통신할 수 있다면 왜 터미널 에뮬레이터가 필요한가요? "x 창 서버"에 대한 CLI 지원이 없으며 명령줄 상호 작용의 경우 터미널 에뮬레이터가 프로세스와 "x 창 서버" 간의 어댑터 역할을 합니까?
편집: -
아래 답변과 기타 리소스를 살펴보았는데 이것이 제가 얻은 것입니다. 디스플레이는 두 가지 상황에서 작동할 수 있습니다.캐릭터 모드또한아시아 태평양 협회모델. 명령줄 인터페이스를 사용할 때 시스템에는 I/O용 터미널 문자 장치 파일이 필요합니다. 이제 GUI가 실행 중일 때(이미 문자가 아닌 모드로 표시되고 있음을 의미함) CLI를 열면 세션에서 통신하기 위해 터미널 문자 파일이 필요하지만 파일이 존재하지 않습니다. 따라서 의사 터미널 문자 파일을 생성하고 x-window-server와 통신하여 어댑터 역할을 하는 터미널 에뮬레이터가 필요합니다.
커널에는 텍스트 모드를 사용하여 모니터에 연결할 때 작동하는 일부 장치별 실제 터미널 문자 파일도 있습니다. GUI를 사용하면 터미널 문자 파일이 필요하지 않습니다.
맞는 걸까요, 아니면 제가 착각한 걸까요?
답변1
Unix 계열 운영 체제는 시간 공유 환경을 위해 설계되었으며 터미널 및 터미널 프로토콜을 사용하여 이러한 시스템에서 실행되는 프로세스와 통신합니다.
최신 Unix 계열 시스템에서는 프로세스와 해당 터미널이 모두 동일한 시스템에서 실행됩니다. 따라서 터미널 에뮬레이터는 소프트웨어 내에서 실행되는 물리적 터미널처럼 작동한 다음 프로세스와 통신합니다.
POSIX 호환성을 유지하고 이것이 프로세스 간 통신의 편리한 형태라는 사실을 포함하여 이 시스템을 유지해야 하는 실질적인 이유가 있습니다.