[c] pty와 tty는 무엇을 의미합니까?

나는 많은 오픈 소스 프로젝트에 대해 언급 pty하고 tty있으며, 누군가가 무엇을 의미하는지와 그 차이점은 무엇인지 말해 줄 수 있습니까? 감사!



답변

“tty”는 원래 “teletype”을 의미하고 “pty”는 “pseudo-teletype”을 의미합니다.

UNIX에서 / dev / tty *는 “teletype”처럼 작동하는 장치, 즉 터미널입니다. (이것은 우리가 그날 밤 터미널에서 가지고 있었던 것이기 때문에 전화 텔레타이프였습니다.)

pty는 의사 읽기 (pseudotty)로 프로세스 읽기 및 쓰기에 대한 터미널과 같은 역할을하지만 다른 것에 의해 관리되는 장치 항목입니다. 그것들은 터미널처럼 작동하지만 다른 프로그램에서 사용될 수있는 무언가가 필요한 X Window 및 화면 등에 처음으로 나타났습니다.


답변

tty는 터미널입니다 ( 텔레타이프 (teletype) – 원래 터미널은 출력을 위해 라인 프린터를 사용하고 입력을 위해 키보드를 사용했습니다!). 터미널은 기본적으로 입력 및 출력에 텍스트를 사용하는 사용자 인터페이스 장치입니다.

pty는 의사 터미널 (pseudo-terminal)입니다. 이것은 터미널처럼 연결된 프로그램에 나타나는 소프트웨어 구현이지만 “실제”터미널과 직접 통신하는 대신 입력과 출력을 다른 프로그램으로 전송합니다.

예를 들어, machine에 ssh in 및 run을 실행 ls하면 ls명령이 출력을 의사 터미널로 전송하고 다른 쪽은 SSH 데몬에 연결됩니다.


답변

tty : 텔레타이프. 일반적으로 터미널이 연결된 컴퓨터의 직렬 포트를 나타냅니다.

pty : pseudoteletype. 커널은 xterm 또는 화면과 같은 터미널을 에뮬레이트하는 프로그램에 연결된 의사 직렬 포트를 제공했습니다.


답변

시스템에 마운트 된 파일 시스템을 표시하는 명령 행 인수없이 mount 명령을 실행하면 다음과 같은 행이 나타납니다. none on / dev / pts type devpts (rw, gid = 5, mode = 620) 이것은 특별한 유형의 파일 시스템 인 devpts가 / dev / pts에 마운트되어 있음을 나타냅니다. 하드웨어 장치와 관련이없는이 파일 시스템은 “매직”파일 시스템입니다. 리눅스 커널. / proc 파일 시스템과 비슷합니다.

/ dev 디렉토리와 마찬가지로 / dev / pts에는 장치에 해당하는 항목이 포함됩니다. 그러나 일반 디렉토리 인 / dev와는 달리 / dev / pts는 Linux 커널에 의해 동적으로 생성되는 특수 디렉토리입니다. 디렉토리의 내용은 시간에 따라 다르며 실행중인 시스템의 상태를 반영합니다. / dev / pts의 항목은 유사 터미널 (또는 유사 TTY 또는 PTY)에 해당합니다.

Linux는 사용자가 연 모든 새 터미널 창에 대해 PTY를 생성하고 / dev / pts에 해당 항목을 표시합니다. PTY 장치는 터미널 장치와 같은 역할을합니다. 키보드에서 입력을 받고 해당 프로그램에서 실행되는 프로그램의 텍스트 출력을 표시합니다. . PTY 번호가 매겨지고 PTY 번호는 / dev / pts의 해당 항목 이름입니다.

예를 들어, 새 터미널 창의 PTY 번호가 7이면 다른 창에서이 명령을 호출하십시오. % echo ‘I virtual a’> / dev / pts / 7 새 터미널 창에 출력이 나타납니다.


답변

A는 ttyA는 물리적 t erminal- t elet Y 컴퓨터 (일반적으로 직렬 포트)의 PE 포트.

단어 텔레타이프는 의 단락 인 전신 타자기 또는 텔레타이프 1930에서 디바이스 – 자체 교체 전자기 장치 전신 1830 및 1840의 기계를 인코딩.

텔레 타이프라이터
TTY-텔레 타이프라이터 1930 년대

A는 ptyA는 P seudo- t ELE TY 같은 SSH, xterm 등, 또는 스크린 등의 단자를 연결 에뮬레이션 소프트웨어 프로그램과 컴퓨터 운영 체제 커널에 의해 제공 PE 포트.

여기에 이미지 설명을 입력하십시오
PTY-유사 텔레 타입

터미널은 단순히 입력 및 출력에 텍스트를 사용하는 컴퓨터의 사용자 인터페이스입니다.

OS 구현

이 사용 p는 seudo- t 전자 업계 타이 PE 포트는 그러나, 자신의 이름과 구현은 조금 갈라져있다.

리눅스는 특수 파일 시스템 마운트 devpts을는 / dev 합니다 ( ‘의’는 아마도에 대한 서 그에 해당하는 항목을 생성 erial) /dev/pts당신이 열 때마다 새 터미널 창, 예를 들어/dev/pts/0

macOS / FreeBSD/ dev 파일 구조를 사용하지만, 열려있는 모든 새 터미널 창에 대해 번호가 지정된 TTY명명 규칙 ttys을 사용합니다./dev/ttys002

Microsoft Windows는 여전히 LPT프린터로 출력하기위한 Command Shell 내에 라인 프린터 터미널 용 포트 개념을 가지고 있습니다.


답변