What is pty in linux

Что такое псевдо-терминалы (pty / tty)?

Это может быть очень простой вопрос, но я хочу понять его полностью.

  1. Что такое псевдо-терминал? (Терминал / PTY)
  2. Зачем они нам нужны? Как они познакомились и зачем это нужно?
  3. Они устарели? Разве они нам больше не нужны? Есть ли что-нибудь, что заменило их?
  4. Любой полезный вариант использования?
  1. Читайте справочные страницы — получили некоторую информацию, но не точную картину.
  2. Пытался читать по ним из Unix Network Programming Ричарда Стивенса. Есть некоторая информация, но не why? часть.
  1. Устройство, которое имеет функции физического терминала, но не является таковым. Создано с помощью эмуляторов терминала, таких как xterm. Более подробно в справочной странице pty (7).
  2. Традиционно UNIX имеет концепцию управляющего терминала для группы процессов, и многие функции ввода / вывода создаются с учетом терминалов. Псевдотерминалы обрабатывают, например, некоторые управляющие символы, такие как ^ C.
  3. Они не устарели и используются во многих программах, включая ssh.
  4. SSH.

Ответ в названии — «Псевдо», что означает «не подлинный, но имеющий вид».

С первыми терминалами всегда было какое-то оборудование, подключенное к соответствующему устройству, будь то оборудование для отображения или последовательный порт.

С xwindows, telnet и ssh возникла необходимость в программном обеспечении «псевдоустройства», которое могло бы заменить аппаратное обеспечение дисплея. Это «псевдо-терминалы» . программное обеспечение, которое эмулирует аппаратное обеспечение терминала, обрабатывая ввод и вывод так же, как физическое устройство, так что подключенное программное обеспечение не знает, что к нему не подключено реальное устройство.

Источник

Русские Блоги

Linux tty устройство введение

оглавление

предисловие

Слово tty происходит от Teletypes, или Teletypewriters, это самый ранний тип терминального оборудования, похожий на teletypewriter,телетайппроизводить. Первоначально tty относится к физическому или виртуальному терминалу, подключенному к системе Unix. Терминал представляет собой устройство символьного типа, обычно использующее tty для общей ссылки на различные типы терминальных устройств. Со временем, когда терминальное соединение может быть установлено через последовательный порт, имя также используется для обозначения любого последовательного устройства. Он также имеет различные типы, такие как последовательные порты (ttySn, ttySACn, ttyOn), преобразователи USB-последовательный порт (ttyUSBn) и модемы, для работы которых требуется специальная обработка (например, традиционные устройства типа WinModem). Виртуальное устройство tty поддерживает виртуальную консоль, которая может подключаться к компьютеру через клавиатуру и сетевое соединение или через сеанс xterm.

  1. Фактически, в начале ни терминал, ни консоль не были концепцией персонального компьютера, а концепцией маленького и среднего большого компьютера, которую разделяли многие люди.
  2. Терминал предоставляет хостЧеловеко-машинный интерфейсКаждый использует ресурсы хоста через терминал. Существует два типа терминалов: символьные и графические. Хост может подключить множество терминалов.
  3. Консоль специальнаяЧеловеко-машинный интерфейсЭто первый человеко-машинный интерфейс управляющего хоста. Доверие хоста к консоли выше, чем у других терминалов.

Это также можно объединить с процессом init в коде запуска ядра, чтобы открыть / dev / console и выполнить sys_dup (0) дважды, а также стандартный ввод, стандартный вывод, стандартную ошибку и копию стандартного ввода и вывода после ветвления процесса. понимание.

Персональный компьютер имеет только консоль и нет терминала. Конечно, если вы хотите, вы можете подключить один или два символических терминала к последовательному порту. Тем не менее, Linux использует персональный компьютер в качестве миникомпьютера в соответствии со стандартом POSIX. На консоли виртуальный шестизначный терминал (или терминал виртуальной консоли tty1-tty6) виртуализируется с помощью программного обеспечения getty (число можно изменить в / etc / inittab ) И графический терминал, в виртуальном графическом терминале вы можете использовать программное обеспечение (например, rxvt) для виртуализации неограниченного количества псевдо-терминалов (pts / 0 и т. Д.). Но это все виртуально. Хотя используется то же самое, нет физического объекта. Таким образом, на персональном компьютере есть только одна фактическая консоль, без терминалов, и все терминалы моделируются на консоли программным обеспечением. Если вы хотите использовать персональный компьютер в качестве хоста и подключить его к реальному физическому терминалу через последовательный порт или сетевую карту, кто будет делать это с точки зрения стоимости?

1. Терминалы классифицируются в соответствии с их собственными возможностями

1. Тупой терминал (тонкий клиент)

Ранние компьютерные терминалы связывались через последовательный порт RS-232, который мог интерпретировать только ограниченное количество управляющих кодов (CR, LF и т. Д.), Но не мог обрабатывать выполнение специальных функций escape-последовательности (таких как очистка линий, очистка экранов или управление Положение курсора). Проще говоря, это терминал с ограниченной вычислительной мощностью, который, как правило, имеет только ограниченные функции, подобные механическим телетайпам. Этот тип терминала называется тупым терминалом. Он по-прежнему поддерживается в современных Unix-подобных системах, устанавливая переменную окружения TERM = dumb. Иногда тупой терминал используется для обозначения любого типа традиционного компьютерного терминала, подключенного через RS-232, терминал последовательной связи, который не обрабатывает данные локально или не выполняет пользовательские программы локально. Термин «тупой» терминал иногда относится к общедоступному компьютерному терминалу, который имеет ограниченные функции, только возможности монохромной обработки текста или напрямую передает каждый набранный символ, не ожидая ответа хоста.

2. Смарт-терминал (толстый клиент)

Интеллектуальный терминал — это терминал, который имеет возможность обрабатывать escape-последовательности, то есть терминал с высокой способностью обработки.

Во-вторых, терминальное оборудование системы Linux

Терминальные устройства системы Linux обычно имеют следующие типы:

1. Консоль

  • Системная консоль / dev / console

/ dev / console — системная консоль Это устройство, которое взаимодействует с операционной системой. Информация, сгенерированная системой, будет отправлена ​​на устройство. У ПК, который мы обычно видим, есть только экран и клавиатура, которая на самом деле является консолью. В настоящее время только в однопользовательском режиме пользователям разрешено входить в консоль / dev / console. (Вы можете ввести команду tty в однопользовательском режиме для подтверждения).

Консоль имеет концепцию буферизации и обеспечивает вывод на печать для ядра. Ядро загружает содержимое для печати в буфер __log_buff, а затем консоль определяет, где печатать (например, tty0 или ttySn и т. Д.). консоль указывает на активированный терминал , Исторически консоль относится к экрану и клавиатуре самого хоста, а tty относится к консоли в другом месте, связанном кабелем.

Читайте также:  Взлом вай фай для windows

В некоторых случаях console и tty0 совпадают, то есть используется текущий виртуальный терминал, и виртуальный терминал также активируется. Поэтому в некоторых материалах говорится, что / dev / console является символической ссылкой на / dev / tty0, но сейчас кажется неправильным говорить это: согласно документации ядра, до 2.1.71 / dev / console устанавливается в соответствии с различными системами, символ При связывании с / dev / tty0 или другим tty * после версии 2.1.71 его отображение полностью контролируется кодом ядра.

Если оконечное устройство хочет реализовать консольную функцию, оно должно зарегистрировать структуру struct console в ядре, что часто встречается в драйверах последовательных портов. Если устройство хочет реализовать функцию tty, подсистема tty ядра должна зарегистрировать структуру struct tty_driver, а функция регистрации находится в drivers / tty / tty_io.c. Устройство может реализовывать консоль и tty_driver одновременно, что обычно делается для последовательных портов.

  • Текущая консоль: / dev / tty

Это концепция приложения: если текущий процесс имеет управляющий терминал, / dev / tty — это файл устройства текущей консоли процесса. Для оболочки, в которую вы входите, / dev / tty — это консоль, которую вы используете, а номер устройства (5,0). Однако это не относится к какой-либо физической консоли, / dev / tty будет отображаться на текущее устройство (используйте команду «tty», чтобы увидеть, какому фактическому устройству физической консоли оно соответствует). Вывод содержимого в / dev / tty будет отображаться только на текущем работающем терминале (независимо от того, зарегистрирован ли он в ttyn или pty). Если вы находитесь в интерфейсе консоли (то есть в символьном интерфейсе), то dev / tty — это тот, который отображается в dev / tty1-6 (в зависимости от текущего номера консоли), но если вы находитесь в графическом интерфейсе (Xwindows ), Тогда вы обнаружите, что текущий / dev / tty сопоставлен с псевдотерминалом / dev / pts. / dev / tty чем-то напоминает соединение с фактическим используемым оконечным устройством.

Вы можете ввести команду «tty», которая будет отображать текущий подключенный терминал, такой как / dev / tty1 или / dev / pts / 0 и т. Д. Вы также можете использовать команду «ps -ax», чтобы увидеть, к какому терминалу управления подключены другие процессы.

Введите echo «tekkaman»> / dev / tty в текущем терминале, и он будет отображаться непосредственно в текущем терминале.

Виртуальная консоль / dev / ttyn

/ dev / ttyn — виртуальная консоль процессаОни имеют одну и ту же реальную физическую консоль.

Если вы открываете такой файл в процессе, и файл не является консолью другого процесса, файл является консолью процесса. Данные процесса printf будут выводиться здесь. На ПК пользователи могут использовать alt + Fn для переключения консоли. Кажется, что есть несколько экранов. Эта виртуальная консоль соответствует tty1

/dev/tty1Ждите первой виртуальной консоли

Например, при использовании ALT + F2 для переключения виртуальной консолью системы является / dev / tty2, а текущая консоль (/ dev / tty) указывает на / dev / tty2

В системах UNIX компьютерные мониторы часто называют консолями. Он эмулирует терминал типа Linux, и с ним связаны некоторые специальные файлы устройств: tty0, tty1, tty2 и т. Д. Когда вы входите в консоль, используется tty1. При использовании комбинации клавиш Alt + [F1-F6] мы можем переключиться на tty2, tty3 и т. Д.

Вы можете войти в разные виртуальные консоли, что позволяет системе иметь несколько разных сеансов одновременно.

И тем более особенным является /dev/tty0Он представляет Текущая виртуальная консоль ,Это псевдоним виртуальной консоли, используемой в настоящее время. Поэтому независимо от того, какая виртуальная консоль в настоящее время используется (Примечание: это виртуальная консоль, не включающая псевдо-терминалы) , Информация о системе будет отправлена ​​в / dev / tty0. Только системный пользователь или суперпользователь может писать в / dev / tty0. tty0 автоматически открывается системой, но не используется для входа пользователя. В системах, где устройство Framebuffer не включено, вы можете использовать / dev / tty0 для доступа к видеокарте.

2. Псевдо-терминал pty (псевдо-tty)

Псевдо-терминал (Pseudo Terminal) — это разработка терминала для удовлетворения текущих потребностей (таких как вход в сеть, управление окнами xwindow). Это логическое оконечное устройство, которое появляется попарно (т. Е. Ведущее и ведомое устройства, работа главного устройства будет отражаться на ведомом устройстве). Он в основном используется для имитации терминальных программ и представляет собой консольное устройство, созданное после удаленного входа (telnet, ssh, xterm и т. Д.).

Исторически существует два набора псевдо-терминальных программных интерфейсов:

Интерфейс BSD: Проще, ведущий — / dev / pty [p-za-e] [0-9a-f], ведомый — / dev / tty [p-za-e] [0-9a-f], все они спарены появился. Например, / dev / ptyp3 и / dev / ttyp3. Но так как он должен попробовать одну за другой найти подходящий терминал во время программирования, он постепенно заброшен.

Интерфейс Unix 98: Используйте / dev / ptmx в качестве главного устройства, вы будете получать главное устройство fd при каждом открытии операции и подчиненное устройство в каталоге / dev / pts / (например, / dev / pts / 3 и / dev / ptmx) , Чтобы избежать неприятностей, пытаясь один за другим. Поскольку в систему могут заходить тысячи пользователей, / dev / pts / * генерируется динамически, в отличие от других файлов устройств, которые являются узлами жесткого диска, которые были созданы при сборке системы (если не использовались devfs, udev, mdev и т. Д.). Первый пользователь входит в систему, файл устройства — / dev / pts / 0, второй — / dev / pts / 1 и так далее. Они не имеют прямого отношения к реальному физическому оборудованию. Большинство систем теперь реализуют pty через этот интерфейс.

Мы открыли терминал под X Window или использовали telnet или ssh для входа на хост Linux. В настоящее время мы все используем устройство pty. Например, если кто-то использует программу telnet для подключения к вашему компьютеру через Интернет, программа telnet может открыть устройство / dev / ptmx для получения fd. На этом этапе программа getty должна запускаться на соответствующем / dev / pts / *. Когда telnet получает символ с удаленного конца, он передается в программу getty через ptmx, pts / *, а программа getty возвращает строку «login:» в сеть через pts / *, ptmx и telnet Информация. Таким образом, программа входа в систему и программа telnet взаимодействуют через «псевдотерминал».

  1. telnet /dev/ptmx(master) pts/*(slave) getty

Если программа рассматривает pts / * как устройство с последовательным портом, ее операции чтения / записи на порту будут отражены в другом / dev / ptmx пары логических оконечных устройств, а / dev / ptmx Другая программа используется для чтения и записи логических устройств. Таким образом, две программы могут связываться друг с другом через это логическое устройство, во многом как операция конвейера между парами логических устройств. Для pts / * любая программа, предназначенная для использования устройства с последовательным портом, может использовать логическое устройство. Но для программ, использующих / dev / ptmx, они должны быть специально разработаны для использования логических устройств / dev / ptmx.

Читайте также:  Не могу создать резервную копию windows

Используя соответствующее программное обеспечение, вы можете подключить два или более псевдотерминальных устройства к одному физическому последовательному порту.

  1. эксперимент:
    1. 1. Откройте одно или N окон терминала под X
    2. 2、#ls /dev/pts/*
    3. 3. Закройте окно терминала под X и запустите его снова, это будет ясно, если сравнить два выходных сообщения.
    4. Вывод: / dev / ptmx / dev / pts / 1 Существует ситуация «один ко многим» («ведомый»)

3. Последовательный терминал (/ dev / ttySn)

Терминал последовательного порта (Serial Port Terminal) — это терминальное устройство, подключенное через последовательный порт компьютера. Компьютер обрабатывает каждый последовательный порт как символьное устройство. В течение некоторого времени устройства последовательных портов часто называются терминальными устройствами. В то время их наибольшим использованием было подключение терминалов, поэтому имена устройств, соответствующих этим последовательным портам, были / dev / tts / 0 (или / dev / ttyS0). , / Dev / tts / 1 (или / dev / ttyS1) и т. Д., Номера устройств (4,0), (4,1) и т. Д. (Соответствуют COM1, COM2 и т. Д. В системе win). Чтобы отправить данные в порт, вы можете перенаправить стандартный вывод на эти специальные имена файлов в командной строке.

Например, в командной строке введите: echo tekkaman> / dev / ttyS1 отправит «tekkaman» на устройство, подключенное к порту ttyS1 (COM2).

В ядре после 2.6 некоторые микросхемы Samsung (такие как S3C24x0 и т. Д.) Называли узел последовательного оконечного устройства ttySACn. Микросхемы TI серии Omap начали использовать собственный драйвер omap-uart с версии 2.6.37. Узел устройства называется ttyOn, чтобы отличать его от имени устройства «ttySn» при использовании драйвера 8250.

4. Другие типы терминалов

Существует также много других типов специальных файлов терминальных устройств для множества различных символьных устройств, таких как / dev / ttyIn терминальные устройства для устройств ISDN.

три, Перевод документации ядра

На самом деле, при понимании вышеуказанных концепций, если вы понимаете процесс разработки терминала, легче понять понятия tty и терминала. и так Пожалуйста, прочтите последнюю рекомендованную вики-страницу на английском языке, которая поможет понять вышеизложенные концепции. Разумеется, документация по ядру также является обязательным справочным материалом, и я перевел его гладко.

Документ ядра / Документация / devices.txt отрывок перевода:

Terminal, or TTY devices are a special class of character devices. A

terminal device is any device that could act as a controlling terminal

for a session; this includes virtual consoles, serial ports, and

Терминал или это устройство TTY — особый видСимвольное устройство

Терминальное устройство — это любое устройство, которое может использоваться в качестве управляющего терминала для сеанса.

Это включает в себя виртуальные консоли, последовательные порты и псевдо-терминалы (PTY).

All terminal devices share a common set of capabilities known as line

disciplines; these include the common terminal line discipline as well

as SLIP and PPP modes.

Все оконечные устройства имеют ряд общепринятых возможностей линейного регулирования.

Это включает в себя общие правила для терминальных линий, такие как режимы SLIP и PPP.

All terminal devices are named similarly; this section explains the

naming and use of the various types of TTYs. Note that the naming

conventions include several historical warts; some of these are

Linux-specific, some were inherited from other systems, and some

reflect Linux outgrowing a borrowed convention.

Наименование всех оконечных устройств относительно просто. В этом разделе представлены названия и использование различных типов TTY.

Обратите внимание, что соглашение об именах содержит некоторые исторические требования:

Некоторые из них специфичны для Linux,

Некоторые унаследованы от других систем,

Другие отражают развитие Linux на основе заимствованных соглашений.

A hash mark (#) in a device name is used here to indicate a decimal

number without leading zeroes.

Знак (#) в имени устройства используется для обозначения десятичного числа, которое не начинается с 0.

Virtual consoles and the console device

Виртуальная консоль и консольное устройство

Virtual consoles are full-screen terminal displays on the system video

monitor. Virtual consoles are named /dev/tty#, with numbering

starting at /dev/tty1; /dev/tty0 is the current virtual console.

/dev/tty0 is the device that should be used to access the system video

card on those architectures for which the frame buffer devices

(/dev/fb*) are not applicable. Do not use /dev/console

for this purpose.

Виртуальная консоль находится в системеВидео мониторнаполноэкранныйДисплейный терминал.

Имя устройства виртуальной консоли — / dev / tty #, а номер начинается с / dev / tty1.

/ dev / tty0 — текущая виртуальная консоль.

/ dev / tty0 может использоваться для доступа к системной видеокарте в тех архитектурах, где устройства кадрового буфера (/ dev / fb *) не применимы.

И / dev / console не используется для этой цели.

The console device, /dev/console, is the device to which system

messages should be sent, and on which logins should be permitted in

single-user mode. Starting with Linux 2.1.71, /dev/console is managed

by the kernel; for previous versions it should be a symbolic link to

either /dev/tty0, a specific virtual console such as /dev/tty1, or to

a serial port primary (tty*, not cu*) device, depending on the

configuration of the system.

Консольное устройство / dev / console — это устройство, которое принимает системную информацию и позволяет входить в систему в однопользовательском режиме.

Начиная с Linux 2.1.71, / dev / console управляется ядром ,

Предыдущая версия представляла собой динамическую ссылку на / dev / tty0, конкретную виртуальную консоль (такую ​​как / dev / tty1) или устройство последовательного мастера (tty *, non-cu *), которое зависело от конфигурации системы.

Serial ports

Серийный порт

Serial ports are RS-232 serial ports and any device which simulates

one, either in hardware (such as internal modems) or in software (such

as the ISDN driver.) Under Linux, each serial ports has two device

Читайте также:  Pdf in terminal linux

names, the primary or callin device and the alternate or callout one.

Each kind of device is indicated by a different letter. For any

letter X, the names of the devices are /dev/ttyX# and /dev/cux#,

respectively; for historical reasons, /dev/ttyS# and /dev/ttyC#

correspond to /dev/cua# and /dev/cub#. In the future, it should be

expected that multiple letters will be used; all letters will be upper

case for the «tty» device (e.g. /dev/ttyDP#) and lower case for the

«cu» device (e.g. /dev/cudp#).

The names /dev/ttyQ# and /dev/cuq# are reserved for local use.

Имена (/ dev / ttyQ # и / dev / cuq #) зарезервированы для локального использования.

The alternate devices provide for kernel-based exclusion and somewhat

different defaults than the primary devices. Their main purpose is to

allow the use of serial ports with programs with no inherent or broken

support for serial ports. Their use is deprecated, and they may be

removed from a future version of Linux.

Устройство резервного копирования обеспечивает исключение на основе ядра и некоторые конфигурации по умолчанию, которые отличаются от основного устройства. Их основная цель — разрешить программам, которые не поддерживаются внутри или имеют проблемы с последовательным портом, использовать последовательный порт. Их использование устарело, и они могут быть удалены из будущих версий Linux.

Arbitration of serial ports is provided by the use of lock files with

the names /var/lock/LCK..ttyX#. The contents of the lock file should

be the PID of the locking process as an ASCII number.

Арбитраж последовательного порта обеспечивается через файл блокировки (/var/lock/LCK..ttyX#).

Содержимое файла блокировки должно быть кодом ASCII PID процесса блокировки.

It is common practice to install links such as /dev/modem

which point to serial ports. In order to ensure proper locking in the

presence of these links, it is recommended that software chase

symlinks and lock all possible names; additionally, it is recommended

that a lock file be installed with the corresponding alternate

device. In order to avoid deadlocks, it is recommended that the locks

are acquired in the following order, and released in the reverse:

Обычной практикой является установка ссылки, такой как / dev / modem, для указания на последовательный порт.

Чтобы обеспечить надлежащую блокировку существования этих ссылок, рекомендуется, чтобы программное обеспечение отслеживало символы и блокировало все возможные имена;

Кроме того, рекомендуется установить файл блокировки для соответствующего устройства резервного копирования.

Чтобы избежать взаимных блокировок, рекомендуется приобретать блокировки в следующем порядке и освобождать их в обратном порядке:

1. The symbolic link name, if any (/var/lock/LCK..modem)

2. The «tty» name (/var/lock/LCK..ttyS2)

3. The alternate device name (/var/lock/LCK..cua2)

1. Символическое имя ссылки, если доступно (/var/lock/LCK..modem)

2. Имя «tty» (/var/lock/LCK..ttyS2)

3. Имя устройства резервного копирования (/var/lock/LCK..cua2)

In the case of nested symbolic links, the lock files should be

installed in the order the symlinks are resolved.

В случае вложенных символических ссылок файлы блокировки должны быть установлены в порядке символических ссылок для решения проблемы.

Under no circumstances should an application hold a lock while waiting

for another to be released. In addition, applications which attempt

to create lock files for the corresponding alternate device names

should take into account the possibility of being used on a non-serial

port TTY, for which no alternate device would exist.

В любом случае приложение должно подождать, пока другая программа снимет блокировку, а затем удерживать блокировку.

Кроме того, приложения, которые пытаются создать файлы блокировки для соответствующих альтернативных имен устройств, должны рассмотреть возможность использования для не последовательных портов TTY, где нет альтернативного устройства.

Pseudoterminals (PTYs)

Псевдо-терминалы (PTYs)

Pseudoterminals, or PTYs, are used to create login sessions or provide

other capabilities requiring a TTY line discipline (including SLIP or

PPP capability) to arbitrary data-generation processes. Each PTY has

a master side, named /dev/pty[p-za-e][0-9a-f], and a slave side, named

/dev/tty[p-za-e][0-9a-f]. The kernel arbitrates the use of PTYs by

allowing each master side to be opened only once.

Псевдо-терминалы (или PTY) используются для создания сеансов входа в систему или для предоставления других процессов, которые требуют процедур tty line (включая возможности SLIP или PPP) для генерации данных.

Каждый PTY имеет ведущего (/ dev / pty [p-za-e] [0-9a-f]) и подчиненного (/ dev / tty [p-za-e] [0-9a-f] ).

Ядро разрешает использование PTY, позволяя открывать каждый мастер только один раз.

Once the master side has been opened, the corresponding slave device

can be used in the same manner as any TTY device. The master and

slave devices are connected by the kernel, generating the equivalent

of a bidirectional pipe with TTY capabilities.

Как только мастер включен, соответствующее ведомое устройство может использоваться так же, как и любое устройство TTY.

Как ведущее, так и подчиненное устройства подключаются к ядру, в результате получается двунаправленный канал с функцией TTY.

Recent versions of the Linux kernels and GNU libc contain support for

the System V/Unix98 naming scheme for PTYs, which assigns a common

device, /dev/ptmx, to all the masters (opening it will automatically

give you a previously unassigned PTY) and a subdirectory, /dev/pts,

for the slaves; the slaves are named with decimal integers (/dev/pts/#

in our notation). This removes the problem of exhausting the

namespace and enables the kernel to automatically create the device

nodes for the slaves on demand using the «devpts» filesystem.

Последняя версия ядра Linux и библиотеки GNU включает поддержку System V и Unix98 для именования PTY.

Он выделяет общее устройство (/ dev / ptmx) для всех мастеров (если открыть его, вы автоматически получите ранее неназначенный PTY) и подкаталог (/ dev / pts) для ведомого устройства, ведомое устройство использует десятичное число Целочисленное (/ dev / pts / #) наименование.

Это устраняет проблему исчерпания пространства имен и позволяет ядру автоматически создавать узлы устройств для подчиненных по требованию через файловую систему «devpts».

4. Понимание системы TTY (графическая иллюстрация)

Веб-страница Википедии о терминалах:Computer terminal | System console | Linux console

Выше я понимаю tty после обращения к онлайн-информации. Справочные материалы:

Источник

Оцените статью