Original: http://blog.chinaunix.net/uid-20543672-id-3225777.html
Although the embedded Linux has been done, host and Development Board communication every day with the TTY device communication, but in fact, the concept of TTY devices and terminal concepts almost 0. The understanding of the Linux kernel's terminal, TTY, and console concepts is vague. Because I encountered the problem of redirecting the console when I was learning, I took the opportunity to learn the TTY knowledge. Here is a summary of my understanding of TTY, which comes from network and kernel documents. See the article at the end of this reference.
The word TTY originates from the teletypes, or teletypewriters, which is the first terminal device, similar to a telex typewriter, produced by Teletype Corporation. The initial TTY refers to a physical or virtual terminal that is connected to a UNIX system. A terminal is a type of character device that usually uses a TTY to collectively refer to various types of terminal devices. Over time, this name is also used to refer to any serial port device when the terminal connection can be established through the serial port. It also has multiple classes, such as serial ports (TTYSN, TTYSACN, Ttyon), USB-to-serial converters (TTYUSBN), and modems that require special handling to work properly (such as traditional Winmodem-class devices). The TTY virtual appliance supports the Virtual console, which can be logged on to the computer via a keyboard and network connection or through a xterm session.
In fact, the terminal and console are not the concept of personal computers, but the concept of a small medium-sized mainframe computer shared by many people.
The terminal provides a human-computer interface for the host, and everyone uses the host's resources through the terminal. Terminal has two kinds of character terminal and graphics terminal. A host can connect many terminals. The console is a special human-computer interface, which is the first man-machine interface of the human control host. The host has a higher trust level for the console than the other terminals.
This can also be understood by combining the Init process in the kernel boot code to open/dev/console and perform two sys_dup (0), as well as standard input, standard output, standard error, and replication of standard input and output after the process fork.
and PC only console, no terminal. Of course, you can connect the one or two-character dumb terminal on the serial port. However, Linux uses the POSIX standard to treat personal computers as minicomputer, virtual six-character dummy terminals via Getty Software on the console (or Virtual Console terminal Tty1-tty6) (the number can be adjusted in/etc/inittab) and a graph terminal, In the virtual graphics terminal, you can also use software (such as RXVT) and then virtual infinite number of pseudo-terminals (pts/0, etc.). But this is all virtual, although it is used the same, but there is actually no physical entity. So on a personal computer, there is only one actual console, no terminal, and all terminals are simulated with software on the console. To the personal computer when the host and then through the serial port or network card even the real physical terminal can also, on the cost, who will do it.
......................................................
The original text is relatively long, not all turned over, interested in the original post study: http://blog.chinaunix.net/uid-20543672-id-3225777.html
The understanding of TTY, this article is good