1

Я использую Linux уже некоторое время, но так и не получил четкого понимания различий между терминами консоли и терминалами. Есть тема, описывающая тему, но она привела меня в замешательство. Вот мои вопросы.

  1. Правильно ли я понимаю, что консоль и терминал являются просто синонимами, поэтому, учитывая одну станцию Linux, у нас есть одна физическая консоль / терминал, которая является физической клавиатурой и монитором, и множество виртуальных консолей / терминалов, которые можно переключать комбинацией ctrl + alt + Fx?
  2. Чем Ctrl + Alt + Fx отличается от screen утилиты?

1 ответ1

2

В старые времена терминал был текстовым устройством, подключенным к компьютеру: сначала механический телетайп, а позже видеотерминал. Аббревиатуры tty (TeleTYpe) и vt (Video Terminal) все еще происходят из этой эпохи.

Изначально консоль представляла собой переключатели и индикаторы, доступные буквально на панели консоли компьютера (здесь изображена передняя панель PDP-11/20, на котором был запущен 1-й выпуск Unix в 1972 году). Позже он был использован для специального телетайпа / терминала, подключенного к компьютеру. Оператор может использовать консоль для выполнения привилегированных операций.

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

Поэтому для Linux на ПК вопрос заключался в том, что должно заменить консольный терминал старых компьютеров. Очевидное решение состояло в том, чтобы использовать существующую клавиатуру и экран, но это немного ограничивало, потому что для использования системы была бы только одна консоль, и никаких других терминалов для реальной работы не было бы. А у домашних пользователей не было дополнительных терминалов, которые они могли бы подключить к последовательным линиям. Таким образом, была изобретена виртуальная консоль : несколько консольных (как в "на передней панели основного компьютера") терминалов, между которыми вы могли переключаться с помощью комбинации Ctrl-Alt-Fn. Затем появился X, и одна из виртуальных консолей использовалась для запуска X, поэтому "X работал на виртуальной консоли", и в этот момент старая терминология уже не имела особого смысла. :-)

Поэтому сегодня часто консоль и терминал означают одно и то же. Но при обращении к установленным частям системы все еще есть разница: это терминальная база данных для управляющих символов (termcap, переменная TERM ). Устройство, которое управляет текущей активной виртуальной консолью в Linux, - это /dev/console . И т.п.

Screen/tmux использует ту же идею мультиплексирования, что и виртуальная консоль, но не на реальной клавиатуре и мониторе ПК, а внутри существующего терминала. Таким образом, вы можете использовать одно терминальное соединение, независимо от того, работает ли оно внутри эмулятора терминала, видеотерминала, подключенного к последовательной линии, или консоли Linux, для запуска нескольких терминалов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .