Re: [dev] [st] Flow control support

From: Roberto E. Vargas Caballero <k0ga_AT_shike2.com>
Date: Mon, 20 Apr 2015 08:23:53 +0200

The control flow is necessary in a terminal because you have two
asynchronous process, one in the terminal and another in the computer,
comunicate between them through a serial line using buffers in every
side. When one of this buffer is full, then it must signal to the
other process because in other case some data can be lost.

When you have a terminal emulator, it implies a pseudo-terminal
kernel device, the comunication is between two synchronous process,
because they are in the same machine and they are communicate through
a share queue where one process will be blocked when there is no more
space, so the control flow is not needed.

After the last patch I submitted, we also can comunicate through a
serial line, but in this case the kernel will do the XON/XOFF work (if
it is enabled with stty ixon), and st will not see these characters
ever. It doesn't make sense to implement XON/XOFF in st even in the
case of the serial line and stty -ixon because st has no control and
no knoledge about the status of the UART FIFO, so it is better let to
the kernel do this work (and even better, use better control flow like
RTS/CTS or DTR/DSR).

If you are interested in this kind of topics I recomend you to read
[1], [2], [3] and [4].

Regards,

[1] http://www.tldp.org/HOWTO/Text-Terminal-HOWTO.htm
[2] http://www.tldp.org/HOWTO/Serial-HOWTO.html
[3] http://www.tldp.org/HOWTO/PPP-HOWTO/modem.html
[4] http://tldp.org/HOWTO/Modem-HOWTO.html
Received on Mon Apr 20 2015 - 08:23:53 CEST

This archive was generated by hypermail 2.3.0 : Mon Apr 20 2015 - 08:36:04 CEST