가상터미널

System Program/terminal 2013. 7. 20. 14:02

1. 가상터미널

 

가상터미널(pseudo terminal)은 네트워크를 통해서 호스트에 접속을 시도하는 원격로그인 프로그램에서 사용하는 일종의 가상 터미널이다. 원격지에서 터미널 접속을 시도하는 방식은 기존 tty에서 처럼 serial line을 통해서 직접적으로 접속하는 방식과는 차이가 있다. 따라서 이런 차이를 내부적으로 숨기면서 직접 터미널에 접속한 것 같은 기능을 제공하기 위해서 탄생한 터미널이 가상터미널 방식이다.

 

2. 가상터미널 구성

 

pseudo-device들의 쌍으로 존재하며, 구성요소는 기능에 따라 master와 slaver로 구분된다.

master의 역활은 터미널 emulator가 slave를 제어할 수 있는 방법을 제공하고, slave는 tty의 디바이스처럼 실제 터미널의 디바이스를 의미한다. tty의 디바이스가 /dev/ttyn 의 형태로 존재하였다면, 가상터미널의 slave는 /dev/pts의 변종의 형태로 존재한다. 각각의 Linux 들에 대해서 아래에서 알아본다.  

 

3. BSD PTY

slave device 파일은 /dev/tty[p-za-e][0-9a-f]의 형태를 띈다. master device 파일은 /dev/pty[p-za-e][0-9a-f]의 형태를 띈다.

 

4. Unix98 PTY

 

master device : /dev/ptmx (pseudo-terminal master multiplexer)

master device를 open하면 /dev/pts/n 의 형태의 slave device가 생성된다.

 

5. Virtual Console

 

리눅스에서는 가상터미널의 화면을 가르키는 디바이스를 제공한다. /dev/vcsn과 /dev/vcsan의 형태로 존재한다.

해당 파일 디스크립터를 open하여 읽거나 쓰게되면 Text Mode의 가상터미널에 해당 내용이 출력하게 된다.

참고자료는 http://linux.about.com/library/cmd/blcmdl4_vcs.htm 

 

6. Reference

 

http://en.wikipedia.org/wiki/Pseudo_terminal

 

 

 

 

 

'System Program > terminal' 카테고리의 다른 글

터미널  (0) 2013.07.17
: