Pseudoterminal terminology (was Re: Rename "master" branch to "main"?)

J William Piggott elseifthen@gmx.com
Sun Jul 5 14:54:55 GMT 2020



On Sat, 4 Jul 2020, Zack Weinberg wrote:

> On Thu, Jul 2, 2020 at 4:58 PM Michael Kerrisk <mtk.manpages@gmail.com> wrote:
>>
>>> That said I think this is not as important as other, similar, changes
>>> we could make. For instance, the term "master" is used _along with_
>>> "slave" in manual/terminal.texi, and I fully intend to rewrite that
>>> chapter to eliminate that terminology as soon as I find the time.
>>> Anyone want to beat me to it?
>>
>> No, but please include me in the discussions. It would be good if libc
>> and man-pages could find common terminology.
>>
>> But I agree also with Joseph that the scope is wider and we should
>> think about what terminology POSIX might (be convinced to) switch to.
>>
>> Unlike Florian, I'm not excessively attached to the need to settle on
>> a name that starts with 's'. I think it might be too easy to get into
>> knots trying to find names that match 'm' and 's', and one should at
>> least allow for the possibility of good names that don't fit with
>> those letters; what would be best, IMO, is names that "feel right".
>
> I agree.  In particular I think there is no reason to struggle with
> coming up with terms that fit "ptmx" and "pts" because BSD ptys use
> totally different device node names anyway (tty[pqrs...]NN and
> pty[pqrs...]NN) and there's no hope of finding something that works
> with both.
>
> I don't want to commit to terminology until I've had a go at rewriting
> the manual, because I think doing the rewrite will be the easiest way
> to figure out whether the new terms are good, but what I'm currently
> thinking is:
>
>    "pty master device" -> "pty line-side device" or "outside device"
>    "pty slave device"  -> "pty host-side device" or "inside device"
>    /dev/ptmx stands for "pseudoterminal multiplexer"
>    /dev/pts  stand for "pseudoterminals (directory of)"
>
> Currently I like "line-side" and "host-side" because it seems like a
> natural generalization from true terminal device nodes (which are
> always host-side) to pseudoterminals (additionally have a line-side
> device node).  And it can generalize to the relationship between
> Linux's /dev/ttyNN and /dev/vcs(a)NN as well.

I'm not sure that line-side would be quickly relatable. Perhaps even
ambiguous, as both ends have a line-side. Online, both ends are hosts as
far as that goes. In old terms only one end was a 'terminal'; the other
end was the mainframe, right?

If we want to evoke online terminals of old; there are well
established, and quickly relatable, terms from the Internet.

server <-> client

Or the 'agent' terms from email; substitute (T)erminal for (M)ail, for
example, TUA Terminal User Agent:

MUA: Mail User Agent (client)
MTA: Mail Transfer Agent (server)
  Or
MDA: Mail Distribution Agent
MSA: Mail Submission Agent


>
> zw
>


More information about the Libc-alpha mailing list